wangk0
人都有点过去~
级别: 工控侠客
精华主题: 0
发帖数量: 82 个
工控威望: 2155 点
下载积分: 3866 分
在线时间: 64(小时)
注册时间: 2012-05-17
最后登录: 2024-04-11
查看wangk0的 主题 / 回贴
楼主  发表于: 2012-12-03 22:51
问题背景:PLC跟打印机用485通讯的,要打印的东西太多,要设置一个格式,打印一段文字,设置一个格式,打印一段文字。无论打印文字还是设置打印格式,都是通过发送十六进制的数字实现的。现在我做成一个包后,要加一个内容或者改个打印格式,从修改处往后的包都要重写,比较麻烦。发送是不接收数据的。

目标:现在我想把一个包分成几个包来发送,一个包发完自动发下一个包,这样,改的内容会相对少很多,而且不需要一个很大的连续的空白数据区来做发送用。

尝试:用第一个包的M8122下降沿触发一个辅助继电器点,再用辅助继电器点发送下一个包。结果是只能发第一个包。

拜谢各路大侠给点点子,让我多试试。

今天还是用的这个方法试的,用电脑可以,通讯设置为9600,8位数据位,1位停止位,无校验。能够发两个包了,上传程序和结果。
程序图:
1

2

连电脑看的结果:
结果

程序附件:
485 test.rar (153 K) 下载次数:21     
[ 此帖被wangk0在2012-12-05 12:01重新编辑 ]
wow588
级别: 略有小成
精华主题: 0
发帖数量: 179 个
工控威望: 317 点
下载积分: 2836 分
在线时间: 156(小时)
注册时间: 2012-02-11
最后登录: 2024-11-29
查看wow588的 主题 / 回贴
1楼  发表于: 2012-12-04 12:03
要不用循环程序试试