多機通信
出自 MBA智库百科(https://wiki.mbalib.com/)
目錄 |
多機通信是指在一個通信控制領域內有兩台以上的電腦或單片機之間進行數據和信息的傳輸和交換,實現一對多的通信模式。
多機通信模式的數據幀格式[1]
在多機通信模式下,數據幀一般採用:1位起始位+9位數據位+校驗位(可選)+1或2個停止位。其中第9位(RXB8)表徵該幀是地址幀還是數據幀。當幀類型表徵位為“1”時,表示該幀數據為一個地址幀;當幀類型表徵位為“0”時,表示這個幀為一個數據幀。此外,也可以在編程時,用8位數據位+奇偶校驗位的數據幀格式來代替9位數據位+無奇偶校驗位的數據幀格式。
對於一個作為主機的處理器,可以使用9位數據幀格式。如果傳輸的是一個地址幀就將第9位(TXB8)置1,如果是一個數據幀就將它清零。在這種幀格式下,從處理器必須工作於9位數據幀格式。在多處理器通信模式下進行數據交換的步驟:
(1)所有從處理器都工作在多處理器通信模式(MPCM=1)。
(2)通信開始是由主機先發送一個地址幀,所有從機都會接收並讀取此幀。從處理器UCSRA寄存器的RXC正常置位,表示接收到地址幀。
(3)每一個從機都會讀取UDR寄存器的內容來確定自己是否被定址。如果被定址,就將UCSRA的MPCM位清零,等待接收數據;否則,保持MPCM為“1”,等待下一個地址幀的接收:
1)作為1號從機的MCU處理過程為,收到地址幀後,判定讀取UDR數據0X01為自己的地址,將MPCM位置“0”,接收之後所有主機下發的數據幀,直到下一個地址幀為止。
2)其他從機MCU的處理過程,收到地址幀後,判定讀取UDR數據0X01不是自己的地址,將MPCM位置“1”,這樣他們將忽略主機隨後發送的數據幀,直到主機再次發送地址幀。
(4)當被定址的從機MCU接收完最後一個數據幀後,將MPCM位置位,等待下一個地址幀的出現,然後從步驟(2)開始重覆。
- ↑ 任瑞濤,薑家巨集.多機通信模式在通信系統中的應用[J].《電子科技》.2011,7