现在利用自由口串口通信跟上位机通信,需要完成的功能:1.定时将传感器检测的温度值发送给上位机工控机,以便显示在界面上;2.同时还要随时能接收到上位机发来的其他动作指令,完成该指令后再给上位机发送反馈。有没有做过的前辈介绍一下思路呀?
问题补充:
考虑到单双工的工作方式,如果设定优先级别的话是不是就可以实现的(比如上位机发送的指令具有高优先级,定时发送温度值作为次级)?可以的话具体该怎么实现呀?
最佳答案
你这两个动作分别是主站和从站两种职务了。定时给上位机,这是主站的功能。随时接收,这是从站的功能。不可能完成这样的通讯的。正好遇上定时到要发信息,但是又同时接收到指令。那么现在到底是收还是发好呢?
完全都不是工的问题,是主从问题。485通讯协议的主从问题。
另外通讯也没有什么优先级的问题。存在优先级,是因为有若干个正在等待,考虑谁先上来。但是你不存在同时有什么东西在等,也只是谁先到,先处理谁。都没有人排队,哪里有优先的说法。
200的口只能是半双工的,事实明确,不要想多了。
还有问题的话过论坛人多,看看别人怎么解释。
提问者对于答案的评价:
恩,谢谢芳工大神~
专家置评
半双工,发送和接和接收同一时刻只能执行一个
可以考虑定时发送,发送前终止接收,发送完成中断中接收,看看是否可以使用
参考https://support.industry.siemens.com/cs/cn/zh/view/76488152
通信章节,串口通信,自由口
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc143094.html