RS485的多机通信,对于上位机来说,是一拖多,
对于下位机来说,就的多对一的关系,
首先,要解决一个多对一的问题,你上位机发送的指令,是给谁的,怎么区分?
怎么解决,每台下位机给一个不同的地址,用地址区分数据是给谁的!
这样,上位机的指令就有针对性了,不会出现混乱。
再有,下位机多对一的问题,如果下位机发送相同的数据到上位机,
那么上位机也就分辨不出是那台下位机发送的数据,
这就要求下位机在发送数据的时候,也要带上地址,用来区分是谁的数据
多机通讯,就是485总线了,一路485线上挂很多节点,
采用地址轮巡方式,各个节点发现不是自已的数据就丢弃,
首先要选好一个485总线对话协议,越简单越好,可以
自已定义一个对话协议(带节点地址),也有现成的
总线对话协议如MODBUS就是较简单的对话协议,
含校验码的。百度上可以搜到它的协议字节内容。
有了对话协议就可以用C语言编通迅程序了。
一般人是不会编的,搞嵌入式开发的人就会,
而这些人不会象我们这样没事无聊的。
我的基本功可以开发,但我生在国企只能闲着,没有
发挥机会。
先拿出一对一的通信程序,稍稍改改就行了。
改动,大约十行左右,即可。
1首先要定义一个通信协议,或使用现成的协议;
2区分主机或从机的地址;