通用的PLC通讯程序

发布时间:2023-07-30
一个通用的plc通讯程序:
main:
ld sm0.1
movb xxx , smb30 //根据和对方约定的波特率,字符格式等设定
movb 16#9c, smb87 //允许接收信息,使用smb90值检察空闲状态,定时器是信息定时器 , 超过smw92值停止接收
movw +80, smw92 //根据报文长短,波特率及从站响应的快慢设定,这个时间要小于接收中断(int3)里定时中断的时间。
movw +0, smw90
movb 200, smb94 //smw94 最大接收字符数,这里无用,但必须要设置。
eni
ld sm0.1
atch 接收:int3, 9 //传输完成中断
movb 150, smb34
atch 发送:int2, 10 //定时中断
发送:
ld sm0.0
dtch 10
xmt vb100, 0
接收:
ld sm0.0
rcv vb200, 0
movb 250, smb34
atch 发送:int2, 10
1 本程序只适用于单从站的问答式规约(包括modbus)。该程序为主站程序。
2 发送的数据放置在数据块,比如读取从站地址为16#12的寄存器的数据。校验提前算好,减轻plc负担。
vb100 16#8 16#12 16#03 16#00 16#0a 16#00 16#02 16#e6 16#aa
3 不用考虑起始字符 结束字符等等,以下是通讯流程图,不论从站有无故障,询问不受影响。
4 9600波特率,从站回复13字节
5 校验程序可以放在主程序里,
有时间再发一个多从站的程序,程序大小和这个基本程序不变。
上一个:200m光纤一年价格(200m光纤能用多久)
下一个:君子兰春季如何换土

小米8探索版支持无线充电吗(小米8探索版支持无线充电吗手机)
win10和win8.1哪个占内存(win8和win10哪个内存占用率高)
茶花的养殖方法,盆栽茶花家庭种植
win10助手小娜怎么关闭的步骤教程图片(win10助手小娜怎么打开)
配电箱和开关柜的区别
qq显示远程办公是啥意思呀(qq状态远程办公怎么没有了)
怎么创建apple id手机,苹果手机怎么注册新的ID
苹果值得入手的几款手机(iphone值得买的手机)
windows7显示此windows副本不是正版(电脑右下角显示此windows7副本不是正版)
note4怎么设置上网,智能手机怎么设置上网