千分(金)征集编程思路,SPCOMM同时和100个单片机通讯的问题.(60分)

F

ForCode

Unregistered / Unconfirmed
GUEST, unregistred user!
目标:
用SPCOMM同时向100个单片机通讯,发送的数据是一样的,通讯成功的反回16个字节,通讯失败的没反回。我想取出这100个单片机中通讯成功和失败的单片机号。
我的思路是:我初步算了一个发送16字节到接收16字节要用50-60ms。因通讯时间是在50-60ms之间所以我用一个70ms的一个Timer检测是否通讯正常。写了一个发送程序,SendData(i:integer)//其中i是全局变量,是单片机号1-100
我用一个按扭触发SendData(1),同时启动检测Timer如果SPCOMM收到数据将其加入通讯成功列表,同时发送SendData(Inc(i))。否则在Timer事件中将此加入通讯失败列表,同时发磅SendData(Inc(i)),当i>100时结束通讯。
在调试过程中,经常在SPCOMM的接收事件中出错。我想可能是我的思路不对吧。
SPCOMM有没有办法设置其通讯速度呢,大家帮我分析分析解决办法.
 
你不会送那么多分,不过我也乐意帮你解决问题,加我QQ:99795108,这种问题我见多了!
 
你是怎么检测通讯是否正常的?
另:设置通讯速度,只能通过设置波特率baudRate实现
 
顶部