EV5000串自定义协议框架说明.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EV5000串自定义协议框架说明

串口自定义协议框架说明 概述 串口自定义协议的驱动目前可以支持三个串口同时定制自由协议,分别为Customized UART protocol1,Customized UART protocol2,Customized UART protocol3,可对应三个串口。组态的使用方式同其他的PLC组态方式一样,直接连接屏即可,通过LW和LB寄存器进行数据的交换。 框架说明 串口自定义协议程序的流程图 图1 需要用户实现的函数 void ProcessComx(int fd) 调用方式:周期执行,间隔可调用Delay函数来加大循环周期,fd为串口句柄 功能:用户程序的“main函数” 供用户调用的API函数 void Delay(int ms) 功能:用于延迟ProcessComx的运行周期,防止频繁读写,减轻控制器的通信压力 参数:ms的单位为毫秒, 非零 int ReadData(int fd, unsigned char *read_buff, int count, int ms) 功能:从串口读取count个数据,存放在read_buff中。ms是读数据超时时间。 参数:ms的单位为毫秒, 非零。返回值为读取的字符个数,-1表示读超时。 int WriteData(int fd, unsigned char *read_buff, int count) 功能:从串口发送count个数据,发送数据存放在read_buff中。 unsigned short Read_LW(unsigned int n) 功能:读取LWn的寄存器的值 参数:n偏移量,最大为9999 void Write_LW(unsigned int n,unsigned short val) 功能:将val 写入LWn的寄存器 参数:n偏移量、最大8999,val待写入的值 void CopyToLW(unsigned int offset,const void *src, int n) 功能:由src所指的内存区域复制n个字节到Lw_offset所在的内存区域 参数:src和LW_offset所在的内存区域不能重叠 void CopyFromLW(unsigned int offset,const void *src, int n) 功能:由Lw_offset所在的内存区域到src所指的内存区域复制n个字节 参数:src和LW_offset所在的内存区域不能重叠 void SetLBON(unsigned int n) 功能:设置LBn寄存器为1 参数:n偏移量、最大8999 void SetLBOFF(unsigned int n) 功能:设置LBn寄存器为0 参数:n偏移量、最大8999 int GetLB(unsigned int n) 功能:读取LBn寄存器的状态 参数:n偏移量、最大9999 int SetLWBON(unsigned int n, unsigned int offset) 功能:设置LW.b寄存器为1,如设置LW5.4,则n=5,offset=4 参数:n偏移量、最大8999,offset最大为16 int SetLWBOFF(unsigned int n, unsigned int offset) 功能:设置LW.b寄存器为0,如设置LW5.4,则n=5,offset=4 参数:n偏移量、最大8999,offset最大为16 int GetLWB(unsigned int n, unsigned int offset) 功能:读取LW.b寄存器的状态,如设置LW5.4,则n=5,offset=4 参数:n偏移量、最大9999,offset最大为16 如何生成驱动 用全功能版的cygwin覆盖EV5000中的 在cygwin所在目录新建一个名为“customized_driver”文件夹 3. 在custmoized_driver目录下是三个文件夹,分别代表可自定义的三种自由协议 图2 Cusomized UART Protocolx目录中的内容如图3所示,其中COMx.c由用户编写(提供参照样例),其他的由Kinco提供 图3 COMx.c编写好后,运行build.bat批处理文件,即可在\lib\plc目录生成Customized UART protocolx.so驱动(见图4),Customized UART protocolx.ge是与该驱动配套的文件,固定不变。 图4 编译、生成驱动 编写好程序后,只需运行图3中的“build.bat”批处理文件即可生成驱动文件,生成的驱动文件位于EV5000安装目录下\lib\pl

文档评论(0)

hhax1 + 关注
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档