欢迎光临MCUWAY! 本站网名:单片机之路  永久域名:www.mcuway.com

设为首页

加入收藏

电子基础 初学MCU 单片机类型 MCU程序 MCU应用 设计软件 测控电路 技术论坛
 您现在的位置: 单片机之路 >> 单片机类型 >> AVR系列 >> 文章正文

了解和掌握AVR串口多机通讯

  在多机通信过程中,所有设备的RS232接口是并在通信线上的,其中只能有一个设备为主机,其他为从机,通信由主机发起。数据帧一般采用1位起始位、9位数据位,其中第9位(RXB8)被用作为表征该帧是地址帧还是数据帧。当帧类型表征位为“1”时,表示该帧数据为一个地址帧;当帧类型表征位为“0”时,表示这个帧为一个数据帧。

  在AVR中,通过设置从机的UCSRA寄存器中标志位MPCM,可以使能USART接收器对接收的数据帧进行过滤的功能。如果使能了过滤功能,从机接收器对接收到的那些不是地址信息帧的数据帧将进行过滤,不将其放入接收缓冲器中,这在多机通信中有效的方便了从机MCU处理数据帧程序的编写(同标准51结构相比)。而发送器则不受MPCM位设置的影响。

  多机通信模式允许多个从机并在通信线路上,接收一个主机发出的数据。通过对接收到的地址帧中的地址进行解码,确定哪个从机被主机寻址。如果某个从机被主机寻址,它将接收接下来主机发出的数据帧,而其它的从机将忽略数据帧,直到再次接收到一个地址帧。(从机地址是由各个从机自己的软件决定的)。

  对于在多机通信系统中的主机MCU,可以设置使用9位数据帧结构(UCSZ=7)。当发送地址帧时,置第9位为“1”;发送数据帧时,置第9位为“0”。在这种情况下,从机也必须设置成接收9位数据帧结构。

  多机通信方式的数据交换过程如下:

1)设置所有从机工作在多机通信模式(MPCM=1)。

2)通信开始是由主机先发送一个地址帧,如8位数据为0X01(1号从机地址),第9位=“1”,呼叫1号从机。

3)所有从机都接收和读取该主机发出的地址帧。在所有从机的MCU中,RXC标志位被置位,表示接收到地址帧。

4)每一个从机MCU读UDR寄存器,并判断自己是否被主机寻址。如果被寻址,清UCSAR寄存器中的MPCM位,等待接收数据;否则保持MPCM为“1”,等待下一个地址帧的接收(该步应由用户软件处理实现):

A)作为1号从机的MCU处理过程为:收到地址帧后,判定读取UDR数据0X01为自己的地址,将MPCM位置“0”,接收之后所有主机下发的数据帧,直到下一个地址帧为止。

? B)其它从机MCU的处理过程:收到地址帧后,判定读取UDR数据0X01不是自己的地址,将MPCM位置“1”,这样他们将忽略主机随后发送的数据帧,直到主机再次发送地址帧。

5)当被寻址的从机MCU接收完最后一个数据帧后,将MPCM位置位,等待下一个地址帧的出现(该步也应由用户软件处理实现),然后从步骤2开始重复。

“单片机之路”的网址:www.mcuway.com

普通文章与电源管理有关的技术问答
普通文章关于复位源和其他C8051F单片机的技术
普通文章关于开发工具及调试的技术问答
普通文章JTAG与ISP的区别
普通文章单片机振荡器技术问答
普通文章有关IDE(集成开发环境)的技术问答
普通文章uPSD系列8 位单片机概述
普通文章电子工程师的心声
普通文章一个嵌入式工程师的忠告
普通文章单片机的发展之路
普通文章一位电子前辈的心得体会
普通文章单片机应“做中学”
普通文章给年轻IC解密和芯片解密工程师的十大
普通文章MC-S51单片机简介
普通文章C8051F单片机使用经验总结
普通文章单片机中的看门狗
普通文章C8051F系列单片机简介
普通文章总结C8051F系列单片机的特点
普通文章单片机入门资料
普通文章C8051F单片机使用注意事项
普通文章对传统51、pic、avr mega、STC 51系列
普通文章总结STC89C51RC比8052单片机多出来的
普通文章51单片机的几种开发方法
普通文章热电偶用补偿导线延伸型与补偿型电缆
普通文章从51初学者到电子工程师(第四课)

  • 上一篇文章:
  • 下一篇文章: 没有了
  • 更多精彩内容>>>

    普通文章电子入门基础知识系列8-场…
    普通文章电子入门基础知识系列7-晶…
    普通文章电子入门基础知识系列6-变…
    普通文章电子入门基础知识系列5-电…

    学习单片机的必经之路——单片机之路,永久域名:www.mcuway.com