发布于 2007-03-03 14:08:00
0楼
运算速度快了? 这有什么区别呢? 呵呵,注意使用中断接收就行,即在发送完成中断子程序内马上使能接收.
1、在主程序或者子程序内发送数据XMT,同时使能“发送完成”中断和“发送超时”中断。
2A、如果先产生了“发送超时”中断,则返回主程序从新发送一次,若连续发送若干次(一般设置三次)都连续产生“发送超时”中断,则报警通讯故障。
2B、如果先产生了“发送完成”中断, 则在“发送完成”中断子程序内禁止“发送超时”中断和“发送完成”中断,并且立即接收数据RCV,使能“接收完成”中断和“接收超时”中断。
3A、如果先产生了“接收超时”中断,则返回主程序从新发送一次,若连续发送若干次(一般设置三次)都连续产生“接收超时”中断,则报警通讯故障。
3B、如果先产生了“接收完成”中断, 则在“接收完成”中断子程序内禁止“接收超时”中断和“接收完成”中断,并且判断帧头是否相同?站地址是否可符?字节个数是否匹配?BCC校验是否相等? 若这四者均通过,则一次完整的USS通讯帧完成。若通不过,则同样重新发送。若重新发送三次,还是不能通过,则也报警通讯故障。
只要遵循异步通讯的规则,相信不会有问题的。 我觉得CN没有错,而且便宜些,何乐不为?
关于USS通讯,各位可以在网上搜一下ZANE版主2003写的一篇文章,一定会非常有帮助.
I can do it