串口通信实例006:三菱FX3U和单片机串口通信 点击:975 | 回复:4



关育谋

    
  • [版主]
  • 精华:5帖
  • 求助:21帖
  • 帖子:728帖 | 5626回
  • 年度积分:78
  • 历史总积分:82244
  • 注册:2004年5月28日
发表于:2019-12-09 16:50:10
楼主

串口通信实例006:三菱FX3U和单片机串口通信


一、实例实现目的:

三菱FX3U的8路数字量输入X0~X7控制单片机的8路数字量输出P0.0~P0.7

二、通信连接:

1、三菱FX3U-485-BD端子含义:

SDA和RDA短接后即为RS485发送\接收+信号

SDB和RDB短接后即为RS485发送\接收-信号

SG即为信号地

2、单片机串口2通信口端子含义:

3脚:即为RS485发送\接收+信号

8脚:即为RS485发送\接收-信号

3、通信连接:

三菱FX3U-485BD之SDA和RDA短接后 接 单片机串口2的3脚;

三菱FX3U-485BD之SDB和RDB短接后 接 单片机串口2的8脚;

三、三菱FX3U通信程序:

1、通信参数设置程序段:波特率9600bps、8位数据位、无校验位、1位停止位、报头为STX、报尾为ETX、8位数据模式



2、输入X0~X7处理程序:将X0~X7共计8个位组成的1个字节转换为ASCII码最终保持至D1、D2的低8位里


3、RS指令程序:发送缓冲区首地址为D1、发送字节计数为2、接收缓冲区首地址为D11、接收字节计数为0


4、启动发送程序:上电初始化延时1000ms后开始启动发送,定时置位M8122,实现定时发送


四、单片机通信程序:

1、单片机通信程序所用的头文件,如下所示:


2、单片机通信程序所用的简化定义,如下所示:


3、单片机通信程序所用的函数定义,如下所示:


4、单片机通信程序所用的变量定义,如下所示:


5、单片机通信程序主函数,如下所示:


6、单片机通信程序延时子函数,如下所示:


7、单片机通信程序ASCII码转16进制子函数,如下所示:

五、三菱PLC和单片机通信程序提供下载:


正在下载,请等待……
下载附件需0积分!




关育谋

  • [版主]
  • 精华:5帖
  • 求助:21帖
  • 帖子:728帖 | 5626回
  • 年度积分:78
  • 历史总积分:82244
  • 注册:2004年5月28日
发表于:2019-12-09 16:51:57
1楼

六、通信测试:

硬件接线完成后,分别将三菱FX3U通信程序、单片机通信程序下载到PLC和单片机中,断电再次上电,此时即可实现三菱FX3U的输入X0~X7控制单片机的输出P0.0~P0.7


IE5338

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 123回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2019-12-10 15:23:35
2楼

感谢楼主的分享

关育谋

  • [版主]
  • 精华:5帖
  • 求助:21帖
  • 帖子:728帖 | 5626回
  • 年度积分:78
  • 历史总积分:82244
  • 注册:2004年5月28日
发表于:2019-12-10 22:37:21
3楼

回复内容:

对:IE5338 感谢楼主的分享     内容的回复:

客气!简单的例子分享给大家!

jzl070521

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 100回
  • 年度积分:119
  • 历史总积分:180
  • 注册:2021年8月12日
发表于:2023-07-21 13:01:47
4楼

谢谢分享


热门招聘
相关主题

官方公众号

智造工程师