產(chǎn)品目錄
CAN總線節(jié)點(diǎn)有兩種硬件構(gòu)成方案:
① MCU控制器 + 獨(dú)立CAN控制器 + CAN收發(fā)器。(獨(dú)立CAN控制器如NXP半導(dǎo)體的SJA1000等)使用獨(dú)立CAN控制器程序復(fù)用移植性較好,但占用主控芯片I/O資源。
② 集成CAN控制器的MCU + CAN收發(fā)器。(集成CAN控制器的單片機(jī)如NXP半導(dǎo)體的P87C591等)該方案程序復(fù)用性不佳,有很強(qiáng)針對(duì)性,但可以使電路更加簡(jiǎn)單。
如下圖完整的CAN接口電路包括接收發(fā)送CAN報(bào)文的CAN控制器,轉(zhuǎn)換數(shù)字信號(hào)和CAN信號(hào)的CAN收發(fā)器,消除噪聲的濾波器以及提供合適阻抗的CAN高和CAN低終端電路。
一 CAN總線拓?fù)浣Y(jié)構(gòu)
CAN是一種分布式的控制總線,總線上的每一個(gè)節(jié)點(diǎn)一般來說都比較簡(jiǎn)單,使用MCU控制器處理CAN總線數(shù)據(jù),完成特定的功能;通過CAN總線將各節(jié)點(diǎn)連接只需較少的線纜(兩根線:CAN_H和CAN_L),可靠性也較高。
ISO11898定義了一個(gè)總線結(jié)構(gòu)的拓?fù)洌翰捎酶删€和支線的連接方式;干線的兩個(gè)終端都端接一個(gè)120歐姆終端電阻;節(jié)點(diǎn)通過沒有端接的支線連接到總線;對(duì)干線與支線的參數(shù)都進(jìn)行了說明。
在實(shí)際應(yīng)用中可以通過CAN中繼器將分支網(wǎng)絡(luò)連接到干線網(wǎng)絡(luò)上,每條分支網(wǎng)絡(luò)都符合ISO11898標(biāo)準(zhǔn),這樣可以擴(kuò)大CAN總線通訊距離,增加CAN總線工作節(jié)點(diǎn)的數(shù)量。
CAN總線節(jié)點(diǎn)的硬件構(gòu)成方案有兩種:
(1)、MCU控制器+獨(dú)立CAN控制器+CAN收發(fā)器。獨(dú)立CAN控制器如SJA10000、MCP2515,其中MCP2515通過SPI總線和MCU連接,SJA1000通過數(shù)據(jù)總線和MCU連接。
(2)、帶有CAN控制器的MCU+CAN收發(fā)器。目前,市場(chǎng)上帶有CAN控制器的MCU有許多種,如P87C591、LPC2294、C8051F340等。
兩種方案的節(jié)點(diǎn)構(gòu)成都需要通過CAN收發(fā)器同CAN總線相連,常用的CAN收發(fā)器有PCA82C250、PCA82C251、TJA1050、TJA1040等。
兩種方案的節(jié)點(diǎn)構(gòu)成各有利弊:
第一種方案編寫的CAN程序是針對(duì)獨(dú)立CAN控制器的,程序可移植性好,編寫好的程序可以方便的移植到任意的MCU。但是,由于采用了獨(dú)立的CAN控制器,占用了MCU的I/O資源,并且電路變得復(fù)雜。
第二種方案編寫的CAN程序是針對(duì)特定選用的MCU,例如LPC2294。程序編寫好后,不可以移植。但是,MCU控制器中集成了CAN控制器單元,硬件電路變得簡(jiǎn)單些。