发布于 2007-06-06 13:35:36
0楼
如果主站发送的指令没有任何的区分,这样是做不成功的,因为主站发完信息后从站会同时应答。
其实区分的方法很多,这两天就用VB做了一个与我们自己的仪表通讯的程序,系统中仅有两块仪表,所以命令格式为:FF +(数据)+(校验)+ 结束符或FE +(数据)+(校验)+ 结束符
只要有一个字符不同就可以。
EM277也有地址的,对吧?都是一个道理。
区分开以后那就好办了,上次发送给谁了,随后接收的就是谁回的,从站永远都是被动应答的。
从站收到与自己地址信息不符的指令时,从站放弃接收这条指令或放弃应答就可以了
你是用无线数传电台做的吧,要看它的功能或协议了,要是它压根就不支持,那就没辙了
这时只能在从站做延时,比如一个从站收到命令后立即回传,另一个收到命令后延迟几秒回传,主站在收到两组信息后才允许发下一次的指令,若超过多少秒从站无应答可以重发,多次无应答视为从站无响应。
我就要去北京了,下周才回来,祝你顺利做通吧