CAN總線(xiàn)在多機通信中的應用
(6)設計僅用到TX0和RX0引腳,根據SJA1000T通信協(xié)議所要求的輸入/輸出邏輯電平關(guān)系,SJA1000T的TX1腳懸空,RX1引腳的電位必須維持在0.5 Vcc以上,所以在TX1引腳接上約6.8 kΩ和3.6 kΩ分壓電阻。
(7)微處理器C51的引腳P2.7接CAN控制器SJA1000T的片選信號/CS,可知CAN控制器SJA1000T的寄存器首地址為8000H。處理器C41和CAN控制器SJA1000T共用12 MHz的晶振,以提高通信速率。
通過(guò)上述分析,設計的電路原理圖,如圖2所示。本文引用地址:http://dyxdggzs.com/article/156563.htm
3 系統通信模塊的軟件設計
通信模塊的軟件由3部分組成:初始化程序,發(fā)送程序和接受程序。僅這3部分程序,就能完成通信節點(diǎn)間信息的傳遞。要將CAN總線(xiàn)應用于更復雜的通信系統中,還要考慮CAN總線(xiàn)的錯誤處理,超載處理等功能和節點(diǎn)間的計算方法。由于每個(gè)通信節點(diǎn)都有自己的MCU,所以它們之間可以自由通信。通過(guò)CAN收發(fā)器PCA82C250的引腳CANH和CANL對總線(xiàn)輸出,使總線(xiàn)表現“顯性”,這時(shí)可發(fā)送信息。判斷總線(xiàn)表現為“顯性”時(shí),就要為接受信息做好準備。
3.1 CAN控制器SJA1000T初始化程序
該程序首先進(jìn)入復位狀態(tài),設置SJAl000T的模式寄存器MR為Basic CAN模式,驗收碼寄存器ACR和屏蔽碼寄存器AMR,再設置定時(shí)器0和定時(shí)器1,輸出控制寄存器OCR,重新設置控制寄存器CR,返回到正常工作模式下。初始化程序流程圖如圖3所示。
評論