基于PIC單片機的CAN總線(xiàn)擴展技術(shù)
CAN網(wǎng)關(guān)的信息接收通過(guò)硬件中斷來(lái)完成。當總線(xiàn)上有消息時(shí),引起硬件中斷,進(jìn)入中斷程序后根據中斷標志位的區別把接收到的信息存放到相應的緩沖區中。緩沖區是一個(gè)FIFO的存儲區。而主程序則一直檢測兩個(gè)CAN控制器對應的兩個(gè)接收緩沖區,當檢測到緩沖區不為空時(shí)則把緩沖區內的信息順序發(fā)送到另一個(gè)網(wǎng)絡(luò )中。從而形成一個(gè)具有一定的錯誤檢測能力的雙向通道,完成了兩個(gè)CAN網(wǎng)絡(luò )的信息轉發(fā)。CAN網(wǎng)關(guān)的主程序框圖如圖4所示,中斷程序框圖如圖5所示。本文引用地址:http://dyxdggzs.com/article/173503.htm
4 結 語(yǔ)
詳細介紹了CAN總線(xiàn)擴展技術(shù)的網(wǎng)絡(luò )拓撲結構和系統構成,給出了CAN網(wǎng)關(guān)的硬件設計原理及軟件設計框圖。這樣的CAN總線(xiàn)擴展網(wǎng)絡(luò ),因為引入CAN網(wǎng)關(guān)而增加了消息的傳遞時(shí)間,但是這個(gè)增加的時(shí)間很小,是微秒級的,可以忽略不計。而帶來(lái)的優(yōu)勢明顯,因為把CAN網(wǎng)絡(luò )在物理層上劃分為幾個(gè)網(wǎng)絡(luò ),彼此之間不相互影響,因而增加了CAN網(wǎng)絡(luò )的抗干擾性,同時(shí),擴展靈活,只需要增加一個(gè)CAN網(wǎng)關(guān)來(lái)增加子網(wǎng)即可;通信速率可通過(guò)增加網(wǎng)關(guān)來(lái)提高,通信距離可以擴展到很遠。通過(guò)CAN網(wǎng)關(guān)增加了CAN總線(xiàn)的容量、提高了CAN總線(xiàn)的通信速率、擴展了CAN總線(xiàn)的傳輸距離。
評論