合信论坛

快捷导航
查看: 440|回复: 0

如何使用合信CTH200 PLC建立自由口通讯

[复制链接]

2

主题

4

帖子

236

积分

中级会员

Rank: 3Rank: 3

积分
236
发表于 2019-11-20 14:56:12 | 显示全部楼层 |阅读模式
本帖最后由 lichi 于 2019-11-20 14:58 编辑

1、建立自由口通讯,首先要在特殊寄存器SMB30(自由口0控制寄存器)或SMB130(自由口1控制寄存器)定义好自由口通讯的波特率、协议选择、校验、数据位。本次设置是波特率9600   自由口  无校验  8数据位  。


2然后通过SMB87(P0接收信息控制字节)定义接收信息起始判断。(下面例子是通过开始字符和结束字符判断接收信息的开始和结束),开始和结束字符在
SMB88(P0信息字符的开始)、SMB88(P0信息字符的结束)定义,在SMB94(P0接收字符的最大数(1到255字节)。注意:这个区一定要设为希望的最大缓冲区,即使不使用字符计数信息终止。)定义接收最大允许字符数
本次设置是使用 起始字符(SMB88=@)   结束字符(SMB89=回车)=16#0D SMB94:最大接受字符数255


3、连接中断,本次例子主要用中断事件号9(端口0:发送信息完成)和中断事件号23(端口0:接收信息完成),在此例子中给的就是,初始激活一次接收指令,接收完成进入端口0:接收信息完成中断,在此中断中进行数据运算完成之后,把运算完成后的数据发送出去。发送完成之后进入端口0:发送信息完成中断,在此中断中再次执行接收信息,等待下一个开始字符的到来。按照上面的顺序循环,一直执行接收上位机采集命令完成后发送返回数据。


4、RCV接受指令和XMT发送指令都有一个TBL参数,其指令缓冲区定义如下图所示,RCV接收指令的T+0个字节表示接收字节的个数接收完成后清零。XMT发送指令的T+0个字节表示发送字节的个数,在发送之前必须要要定义好。




5、此协议为COVI通讯协议1.上位机采集命令  @740RXXXCMD+回车  XXX为下位机的地址码,范围从0x000~0xFFF2.返回数据格式   例如:  @740#XXXVI02346CO12345-2500[回车  "@740#" 是返回数据固定的数据头;  "XXX"   是返回数据的下位机地址位;  "VI"    消光系数数据的起始标识;  "02346" 消光系数的数据;值为:2.346 1/km  "CO"    CO数据的起始标识;  "12345" CO的数据;值为123.45 ppm  "- "    表示温度是负的,若温度不是负数,则此位用空格表示;  "25"    表示的是温度值;  "00"    预留位置;  “[”    和校验位,表示从数据串的第2位开始,到故障状态位为止,所有字节        累加和的低字节        所得到的结果  数据串的后面添加
例程在附件。




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

客服热线
400-700-4858 周一至周五:09:00 - 18:00
深圳市南山区西丽镇茶光路南深圳集成电路设计应用产业园209

深圳市合信自动化技术有限公司(简称“合信技术”)成立于2003年,高新技术企业,专注于工业自动化产品的研发、生产、销售和技术服务,依靠高质量、高性能的自动化控制产品与方案为客户创造最大价值,立志于成为全球领先的工业自动化解决方案供应商。

Archiver|手机版|小黑屋|COTRUST Inc. ( 粤ICP备13051915号 )

GMT+8, 2020-1-24 06:25 , Processed in 0.074211 second(s), 21 queries .

快速回复 返回顶部 返回列表