登录
首页 串口通信 串口通信
回帖 发帖
正文

主题:半双工串口通信实例12:西门子S7-200和STC12单片机串口通信

点击:549 回复:4

半双工串口通信实例12:西门子S7-200和STC12单片机串口通信
一、串口通信实例目的:
西门子S7-200主站数字量输入I0.0~I0.7控制STC12单片机从站数字量输出DO01~DO08;
STC12单片机从站数字量输入DI01~DI08控制西门子S7-200主站数字量输出Q0.0~Q0.7。
二、通信硬件连接:
1、西门子S7-200主站Port0通信口端口含义:
3脚即为RS485发送\接收+信号
8脚即为RS485发送\接收-信号
2、单片机串口2通信口端子含义:
3脚:即为RS485发送\接收+信号
8脚:即为RS485发送\接收-信号
3、通信硬件连接:
西门子S7-200主站Port0通信口3脚 接 单片机串口2的3脚;
西门子S7-200主站Port0通信口8脚 接 单片机串口2的8脚;
三、西门子S7-200主站通信程序:
1、发送字节计数为4;
2、通信参数:数据位8位、无校验、1位停止位、波特率9600bps、自由口通信;
3、接收字节计数为4;
4、启动接收完成中断、发送完成中断;
5、发送起始符为0x02、结束符为0x03;
6、将西门子S7-200数字量输入I0.0~I0.7转换为ASCII码保持至VB2、VB3里;
7、接收到的2个ASCII码转换为16进制送入西门子S7-200主站输出里;
8、初始化启动发送;
9、产生发送完成中断后,开启接收;
10、产生接收完成中断后,开启定时中断;
11、产生定时中断后,开启新一轮发送。

图片
查看大图

四、STC12单片机从站通信程序:
1、通信参数:数据位8位、无校验、1位停止位、波特率9600bps、起始符0x02、结束符0x02;
2、STC12单片机从站8路输入DI01~DI08转换为ASCII码保存至发送缓冲区里;
3、初始化等待接收,接收完成后,处理接收到的数据;
5、接收完成后,延时10ms开始发送,将STC12单片机从站8路数字量输入DI01~DI08发送出去。

图片
查看大图

五、通信程序高清截图提供下载:
附件:通信程序高清截图.rar
[本地下载]
最后修改:2020/2/25 14:33:06
20-02-25 10:29
六、通信测试:
硬件接线完成后,分别将西门子S7-200主站通信程序、STC12单片机从站通信程序下载后,断电再次上电,此时即可实现:
西门子S7-200主站数字量输入I0.0~I0.7控制STC12单片机从站数字量输出DO01~DO08;
STC12单片机从站数字量输入DI01~DI08控制西门子S7-200主站数字量输出Q0.0~Q0.7。
20-02-25 10:30
主站程序附加说明:
主站程序在西门子S7-200实物测试通过,稍加修改即可应用到西门子200 Smart实物上。
20-02-25 10:40
从站程序附加说明:
从站程序在STC12单片机实物测试通过,稍加修改即可应用到STC其他型号单片机实物上。
20-02-25 10:40
附件为西门子S7-200主站和STC12单片机从站通信程序高清截图,有需要者可以直接下载!大家有问题也可以随时跟帖交流。
20-02-25 10:41

工控新闻

更多新闻资讯