添加时间:2019年04月30日 作者:工业串口模块 来源:工业串口模块
MCU驱动模块-工业串口模块设置模块的属性参数-工业串口模块
设置模块的属性参数:
点击"属性(property)",选择"RS232接口(Interface)"-"端口配置(port config)",在这里,可以配置波特率、数据位、停止位、校验位及流控制等参数:
工业串口通信之如何使用S7-1200的CM1241模块
MCU驱动模块-工业串口模块设置模块的属性参数-工业串口模块
软件编程指令在"Communication"-"Communication processor"-"Point-to-Point"中:
工业串口通信之如何使用S7-1200的CM1241模块
先来看看数据发送,选择功能块SEND_PTP,系统会自动生成一个背景数据块:
MCU驱动模块-工业串口模块设置模块的属性参数-工业串口模块
这个DB是发送块SEND_PTP私有的,然后我们还需要新建一个全局数据块(Global DB),来作为发送缓冲区,存放我们需要发送的数据。双击"添加块"-选择"全局数据块(Global DB)" ,给DB块起个名字,例如"DB_Send_Buffer":
工业串口通信之如何使用S7-1200的CM1241模块
在新建的DB块中添加你要发送的数据,设置默认值,例如"Founder chip is the best":
MCU驱动模块-工业串口模块设置模块的属性参数-工业串口模块
工业串口通信之如何使用S7-1200的CM1241模块
然后调用SEND_PTP功能块发送数据:
工业串口通信之如何使用S7-1200的CM1241模块
如果你定义了发送的数据是"String"类型的话,要注意起始地址从第2个字节(起始编号为0)开始,如上图:DB3.DBX2.0,这是因为String类型的第0个字节是总字节数,第1个字节是当前字符串的字节数,从第2个字节开始是字符串的首字节,如下图的示例:
工业串口通信之如何使用S7-1200的CM1241模块
功能块SEND_PTP各参数的含义:
输入参数:
REQ:请求发送数据,上升沿;
PORT:硬件组态中模块的ID
BUFFER:发送缓冲区的地址
LENGTH:发送数据的长度
PTRCL:协议是西门子专用的还是通用的
输出参数:
DONE:发送成功且没有错误
ERROR:发送失败,有错误发生
STATUS:如果发送有错误,存放错误代码
以上介绍的是数据的发送,接下来我们看看数据是如何接收的:
添加接收数据使用功能块RCV_PTP,会出现下列背景DB对话框,选择添加:
工业串口通信之如何使用S7-1200的CM1241模块
MCU驱动模块-工业串口模块设置模块的属性参数-工业串口模块
功能块调用界面如下:
工业串口通信之如何使用S7-1200的CM1241模块
同样,我们要定义个全局数据块用来接收数据,命名为:DB_Rcv_Buffer。
工业串口通信之如何使用S7-1200的CM1241模块
在该DB块中,根据实际项目需求定义相应的接收类型,这里我们定义两个字节型数据:
工业串口通信之如何使用S7-1200的CM1241模块
定义好接收数据缓存区后,就可以调用接收块接收数据了。RCV_PTP的参数定义如下:
MCU驱动模块-工业串口模块设置模块的属性参数-工业串口模块
输入参数:
EN_R:允许接收数据
PORT:硬件组态中模块的ID
BUFFER:接收缓冲区的地址
输出参数:
NDR:是否接收到新数据,布尔量
ERROR:接收过程中有错误发生
STATUS:如果有错误发送,存放错误代码
LENGTH:接收缓冲区的数据的长度
工业串口模块,HDMI触控屏,工业视频模块,工业显示模块,MCU驱动模块推荐:
工业串口屏,工业串口显示屏,工业串口模块,工业显示模块,单片机接口模块