新人刚接触modbus有几个通讯顺序的问题不太懂,想问一下大神们:1.主机发送一条指令后,在从机还没有做出应答前(即主机还没有进入应答中断程序前),是否可以继续发第二条指令(第二条指令也是给那个从机的,这里就考虑一个主机一个从机)?
2.如果上面第1条问题的答案是不可以的,那么就表明modbus通讯顺序必须是一问一答的形式,在没有得到上一次指令的应答之前就不允许发下一条指令,那么我就想问接受应答要在中断中进行的意义何在,发送完指令后主机反正都是要等在那里的,何不加个延时判断接受是否完成就好了,何必在中断中进行。(难不成接受应答要在中断中进行是想让主机先干除了继续发送指令的其他事?可是我主机除了继续发下一条指令还真没其它事可做。。)
3.如果第1条答案是可以的,那我又想问一下主机在收到从机的应答前已经向从机发送了n条指令了,这个时候主机收到从机的一条应答,主机该如何判断这条应答是对应哪条指令的?就这三个问题
我网上找过一些资料,但是说法都不太统一,有人说可以有人说不可以。
希望大神能帮我解答一下
|