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

主题:串口通信实例032:单片机和西门子S7-200串口通信

点击:901 回复:7

串口通信实例032:单片机和西门子S7-200串口通信
一、实例实现目的:
单片机的8路数字量输入DI01~DI08控制西门子S7-200的8路数字量输出Q0.0~Q0.7。
二、通信连接:
1、单片机串口2通信口端子含义:
3脚:即为RS485发送\接收+信号
8脚:即为RS485发送\接收-信号
2、西门子S7-200 Port0通信口:
3脚即为RS485发送\接收+信号
8脚即为RS485发送\接收-信号
3、通信连接:
单片机串口2的3脚 接 西门子S7-200 Port0口3脚;
单片机串口2的8脚 接 西门子S7-200 Port0口8脚。
三、单片机发送通信程序:
1、所用头文件和简化定义:
附件 1.jpg
2、主函数,包括通信初始化,9600,8,N,1,定时发送:
附件 2.jpg
3、十六进制转ASCII码子函数:
附件 3.jpg
4、延时子函数:
附件 4.jpg
四、西门子S7-200接收通信程序:
1、通信参数设置程序段:波特率9600bps、8位数据位、无校验位、1位停止位、报头为STX、报尾ETX、启动接收完成中断
附件 8.jpg
附件 9.jpg
2、接收数据处理程序:将接收到的2个ASCII码转换为16进制数据后送入Q0.0~Q0.7
附件 10.jpg
3、接收完成中断程序:产生接收完成中断时将接收到的有效数据转存、并启动新一轮的等待接收
附件 11.jpg
五、通信程序图片提供下载:
附件:
[本地下载]
20-01-14 15:15
六、通信测试:
硬件接线完成后,分别将单片机通信程序、西门子S7-200通信程序下载到PLC中,断电再次上电,此时即可实现单片机的8路数字量输入DI01~DI02控制西门子S7-200的8路数字量输出Q0.0~Q0.7。
20-01-14 15:16
程序附加说明:
单片机主站程序在STC12系列单片机实物测试通过;
西门子从站程序在西门子S7-200系列PLC实物测试通过。
单片机主站程序稍加修改即可应用到STC15、STC8单片机上;
西门子从站程序稍加修改即可应用到西门子200 Smart系列PLC上。
20-01-14 15:25
附件为单片机主站程序和西门子从站程序高清截图,有需要者可以下载。
20-01-14 15:26
一直很好奇这是什么单片机啊?
20-01-14 15:32
单片机的代码看起来就是高端表情,,以前对着书玩过几天后来没学了
20-01-14 16:22

引用 jint 在 2020/1/14 15:32:03 发言【内容省略】

程序第一句就告诉你型号了。
20-01-15 17:26

引用 121111115 在 2020/1/15 17:26:17 发言【内容省略】

不好意思,是你告诉了我才知道怎么看的哈哈
20-01-15 18:17

工控新闻

更多新闻资讯