基于STC89C51的CAN總線點對點通信模塊設計
光耦隔離器可對總線上各個CAN節(jié)點進行電氣隔離,以增強系統(tǒng)的可靠性,減少系統(tǒng)與系統(tǒng)之間的相互影響。
2.1 CAN控制器硬件電路的設計
將SJAl000的ADO~AD7連接到STC89C5l的P0口,CS連接到STC89C5l的P20,這樣,當P20為O時,CPU片外存儲器地址即可選中SJAl000,CPU
則通過這些地址對SJAl000執(zhí)行相應的讀寫操作。設計時,可將SJAl000的RD、WR、ALE分別和STC89C5l的對應引腳相連,INT接STC89C51的IN-T0,這樣,CPU可以通過中斷方式來訪問SJAl000。其連接電路圖如圖2所示。本文引用地址:http://www.ex-cimer.com/article/157240.htm
2.2 光電耦合器的設計
為了增強CAN總線節(jié)點的抗干擾能力,SJAl000的TX0和RX0并不直接和收發(fā)器PCA82C250的TXD和RXD相連,而是通過高速光耦6N137后再和PCA82C250相連,這樣就可以很好的實現(xiàn)各CAN節(jié)點間的電氣隔離。應當注意的是光耦部分采用的電源VCC和VDD最好完全隔離,可以用小功率的電源隔離模塊來實現(xiàn),這樣就可以提高節(jié)點的穩(wěn)定性和安全性。其電路圖如圖3所示。
2.3 CAN收發(fā)器的設計
PCA82C250是一種差分收發(fā)器,它可完成TTL電平到差分信號的轉(zhuǎn)換。它的CANH和CANL引腳各自通過一個5 Ω的電阻和CAN總線相連,該電阻可以起到一定的限流作用,可保護PCA82C250免受過流的沖擊。而CANH和CANL與地并聯(lián)了兩個30pF的小電容??梢赃^濾總線上的高頻干擾并具有一定的防電磁輻射能力。PCA82C250的RS腳上應接一個斜率電阻,電阻大小可根據(jù)總線通信速度適當調(diào)節(jié),一般可在16~140 kΩ之間,這里選用47 kΩ電阻。圖4所示是收發(fā)器的電路圖。
2.4 總體電路分析
由于本設計將SJAl000的AD0~AD7和STC89C5l的P0口相連,CS連接到P20口,ALE、WE、RD分別與單片機的對應各口相連,因此,SJAl000就相當于單片機的外部存儲器。訪問SJAl000的寄存器就相當于對外部寄存器地址進行讀寫操作。SJAl000的MODE接高電平,采用的是intel二分頻模式,TXO和RX0通過高速光耦器件6N137與CAN收發(fā)器82C250連接,PCA82C250的TXD和RXD引腳分別接發(fā)送和接收驅(qū)動信號,然后通過CANH和CANL接至物理總線傳輸介質(zhì)上,這個介質(zhì)可以是光纖或雙膠線等。
數(shù)字通信相關(guān)文章:數(shù)字通信原理
評論