首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
用RS-485设计的多机通信接口电路
来源:本站整理  作者:佚名  2011-11-03 07:21:42



  三、软件设计
  
  1.通信协议
  
  由于485总线是异步半双工的通信总线,在某一个时刻,总线上必然有一台始终处于主机地位的设备在巡检其它的从机,所以需要制定一套合理的通信协议来协调总线的分时共用。在通信协议中,每一台从机都规定了确定的地址号,开始时所有从机复位,即处于监听状态,等待主机的呼叫。当主机向系统发出某一从机的地址时,所有从机接收到该地址并与自己的地址相比较,如果相符,说明主机在呼叫自己,应发回应答信号,表示准备好开始接收后面的命令和数据;否则不予理睬,继续监听呼叫地址。主机收到从机的应答后,则开始一次通信。通信完毕,从机继续处于监听状态,等待呼叫。为此下发数据要带目的地址,接收上行数据要识别数据来源,下位机上传数据要带本机地址。

  下发命令采用如下格式:下位机地址字节(1)+命令/数据字节(1—7)+回车上传数据格式:下位机地址字节(1)+数据字节(1—7)+回车
  
  2.通信程序设计
  
  (1)PC机程序设计
  
  主机程序用VB编写而成。VB中利用一个MSComm控件实现串行通信,该控件完成串口的初始化、发送数据和接收数据的功能。

  (2)分机程序设计
  
  在RS-485实现多机通信的过程中,由于各分机多应用于实时性较强的控制场合,为了少占用CPU的时间,充分发挥CPU的功能,我们在分机程序设计中采用中断方式和微机进行通信。

  当分机接收到微机发来的呼叫信号时,就转入中断服务程序,其中断服务程序流程图如下图所示。

  下面为分机的串口初始化程序,包括打开串口、设置串口的波特率和串

  四、调试
  
  在调试中,我们发现当晶振为6MHz,波特率为2400时,求得计数常数为OOF9H,此时从机发送0-9字符时,PC机收到的字符不是0-9,而是P-Y,后将晶振改为12MHz,波特率设置为9600.计数常数为FFD9H,即设置参数BAUDRATE65497时,收到正确的字符。经过分析后发现是前者的圆整误差过大造成的。
  
  由于RS-485总线可靠性高、硬件设计简单、控制方便、成本低廉等优点,可广泛应用于智能化小区、工厂自动化、工业控制、水利自动报测、宾馆、多点数据采集系统等领域,具有广阔的应用前景。

上一页  [1] [2] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:16,335.94000 毫秒