PC机与多个单片机间的通信

PC机与多个单片机通信,不能采用点对点的RS-485标准,要将PC机RS-232C接口换成RS-485接口。

要保证串行通信的可靠性进行,在相互通信时,必须有一套严格的通信协议,一般称之为应用层通信协议。其帧格式一般包括:帧头标志,地址,命令,长度,数据,校验,帧尾标志等信息。

地址分为:主机/从机地址,广播地址;

命令分为:点对点命令(其又分为数据和命令传输)和广播命令(参数设置,广播招故障)注:广播招故障一般是有故障的节点答应,无故障的节点不答应,设计时应注意采用举手排队机制应答;否则,多节点同时应答就会有冲突,这一点要特别注意

通信分为三个阶段:呼叫,握手阶段,发送/接收阶段,结束阶段。

 

实现PC机串行通信的几种方法:

(1)    利用嵌入式汇编语言编写串行口读写函数,在通信程序中直接调用这些函数。优点是代码效率高,通信速度快,但需要较深的汇编语言知识。

(2)    利用windows提供的API函数完成与硬件接口的通信,优点是可以开发出各种通信软件,但编程复杂,需要掌握大量的通信知识。

(3)    利用第三方串口通信控件来实现,如免费的SPComm控件,Visual Basic中的MSComm控件,TurboPower公司的APRO通信组件等,优点是使用简单方便,可以加快应用程序的开发,但如果不提供组件的源代码,功能难以扩展。


下图为单片机通信协议处理流程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值