半双工串口通信实例33:STC12单片机和欧姆龙CP1H串口通信
一、串口通信实例目的:
STC12单片机主站数字量输入DI01~DI08控制欧姆龙CP1H从站数字量输出100.00~100.07;
欧姆龙CP1H从站数字量输入0.00~0.07控制STC12单片机主站数字量输出DO01~DO08。
二、通信硬件连接:
1、单片机主站串口2通信口端子含义:
3脚:即为RS485发送\接收+信号
8脚:即为RS485发送\接收-信号
2、欧姆龙CP1H从站CP1W-CIF11端子含义:
该插件板后的拨码开关2、3、5、6打到ON位置、4打到OFF位置
SDB+:即为RS485发送\接收+信号;
SDA-:即为RS485发送\接收-信号。
3、通信硬件连接:
STC12单片机主站串口2的3脚 接 欧姆龙CP1H从站CP1W-CIF11之SDB+;
STC12单片机主站串口2的8脚 接 欧姆龙CP1H从站CP1W-CIF11之SDA-。
三、STC12单片机主站通信程序:
1、发送字节计数为4;
2、通信参数:数据位8位、无校验、1位停止位、波特率9600bps、起始符为0x02、结束符为0x03;
3、将数字量输入DI01~DI08转换为ASCII码送入发送缓冲区中;
4、初始化开始启动发送;
5、发送完成后等待接收;
6、将接收到的ASCII码数据转换为16进制送入DO01~DO08。
四、欧姆龙CP1H从站通信程序:
1、串口1通信参数:波特率9600、格式8,N,1、模式RS232C、起始码0x0002、结束码0x0003;
2、欧姆龙CP1H数字量输入0.00~0.07转换为ASCII码保存至D1里;
3、初始化允许接收,接收缓冲区首地址为D11;
4、接收完成后,延时触发发送;
5、接收到的2个有效ASCII码转换为16进制送入数字量输出100.00~100.07
五、通信程序高清截图提供下载:
楼主最近还看过