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