CAN(Controller Area Network)即控制器局域網(wǎng),由于具有高性能、高可靠性以及簡(jiǎn)單的網(wǎng)絡(luò)結(jié)構(gòu),在工業(yè)系統(tǒng)中越來(lái)越受到人們的重視,并迅速成為了目前國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線之一。英創(chuàng)公司推出了各種以支持通訊接口為特色的工控主板,ESMARC系列的主板都能夠支持2路CAN總線,為了滿足客戶現(xiàn)場(chǎng)對(duì)多路CAN總線的需求,英創(chuàng)公司利用主板上的ISA總線,設(shè)計(jì)出擴(kuò)展4路CAN總線的擴(kuò)展底板ETA704,再配合ESMARC系列主板上板載的2路CAN總線,就能夠?qū)崿F(xiàn)6路CAN總線的方案,支持ISA總線的主板型號(hào)如下:
主板型號(hào) | 板載CAN總線 | ISA總線 |
ESM3354 | 2路 | 支持 |
ESM6802 | 2路 | 支持 |
ESM7000 | 2路 | 支持 |
硬件組成
ETA704是通過(guò)四片SJA1000和一片邏輯控制器擴(kuò)展出四路CAN總線。SJA1000是一款獨(dú)立的控制器,主要用于汽車和一般工業(yè)環(huán)境中的控制器局域網(wǎng)絡(luò)(CAN)芯片。它是PHILIPS半導(dǎo)體PCA82C200 CAN控制器(BasicCAN)的替代產(chǎn)品,而且它增加了一種新的工作模式(PeliCAN),這種模式支持具有很多新特性的CAN 2.0B協(xié)議。 通過(guò)主板上的ISA總線接口,就能夠把ETA704和主板連接起來(lái),為了方便客戶評(píng)估,ETA704設(shè)計(jì)有專用的評(píng)估底板,可通過(guò)帶線與ESMARC底板上的精簡(jiǎn)ISA總線接口連接,同時(shí)ETA704的硬件設(shè)計(jì),可以讓客戶方便的將ETA704作為一個(gè)可插拔的模塊嵌入在整體產(chǎn)品中,這樣可以獲得最佳的數(shù)據(jù)傳輸性能。對(duì)于實(shí)現(xiàn)CAN總線通訊所引出的接口電路,用戶可以參考相應(yīng)開發(fā)評(píng)估底板的電路原理圖和PCB圖。下表是ETA704和ESMARC評(píng)估底板ISA總線連接的接口定義:
ISA總線接口信號(hào) | ISA | ISA總線接口信號(hào) | |
PIN# | PIN# | ||
RESET#,復(fù)位,低電平有效 | 1 | 2 | ISA_ADV#,地址鎖存,低電平有效 |
ISA_SD0,地址數(shù)據(jù)總線 | 3 | 4 | ISA_SD4,地址數(shù)據(jù)總線 |
ISA_SD1,地址數(shù)據(jù)總線 | 5 | 6 | ISA_SD5,地址數(shù)據(jù)總線 |
ISA_SD2,地址數(shù)據(jù)總線 | 7 | 8 | ISA_SD6,地址數(shù)據(jù)總線 |
ISA_SD3,地址數(shù)據(jù)總線 | 9 | 10 | ISA_SD7,地址數(shù)據(jù)總線 |
MSL#,模塊選擇 | 11 | 12 | ISA_WE#,數(shù)據(jù)寫,低電平有效 |
GPIO9,中斷IRQ4,上升沿有效 | 13 | 14 | ISA_RD#,數(shù)據(jù)讀,低電平有效 |
GPIO8,中斷IRQ3,上升沿有效 | 15 | 16 | ISA_CS#,總線片選,低電平有效 |
GPIO25,中斷IRQ2,上升沿有效 | 17 | 18 | +5V,電源輸入 |
GPIO24,中斷IRQ1,上升沿有效 | 19 | 20 | GND,公共地 |
ETA704的專用評(píng)估底板將四路CAN總線接口全部引出,并且設(shè)計(jì)有帶隔離的驅(qū)動(dòng)電路,可直接與設(shè)備相連進(jìn)行測(cè)試。下面展示了ETA704專用評(píng)估底板將CAN總線通訊接口引出和CAN總線驅(qū)動(dòng)電路的原理圖:
CAN接口和驅(qū)動(dòng)電路
由上圖可以看出,從ETA704引出的CAN總線收發(fā)管腳,通過(guò)評(píng)估底板上的磁耦器件ADuM1201隔離后,和CAN驅(qū)動(dòng)芯片TJA1050連接,就組成了一個(gè)典型的CAN總線通訊電路,同時(shí)還能夠通過(guò)跳線選擇是否介入匹配電阻??蛻艨梢灾苯訁⒖糆TA704評(píng)估底板的方法進(jìn)行設(shè)計(jì)。帶隔離CAN總線通訊模塊的CAN收發(fā)器端的所有信號(hào)和電源與其它部分完全隔離,可承受至少1Kv(有效值)的電壓沖擊,有效的保護(hù)了電路的安全。
軟件開發(fā)
ETA704的驅(qū)動(dòng)程序已經(jīng)以模塊的形式放在文件系統(tǒng)中,只是沒有加載,因此在需要使用時(shí),可通過(guò)加載文件系統(tǒng)中的ko文件eta704_of_platform.ko來(lái)激活ETA704,通過(guò)modprobe命令就可以方便的加載驅(qū)動(dòng)了:
加載驅(qū)動(dòng)
ESMARC系列主板自帶有2路CAN總線,在系統(tǒng)中為can0、can1節(jié)點(diǎn),所以加載完驅(qū)動(dòng)程序后,系統(tǒng)就會(huì)識(shí)別出can2-can5,如下圖:
CAN總線節(jié)點(diǎn)
ETA704的驅(qū)動(dòng)程序接口和標(biāo)準(zhǔn)socketcan完全一致,因此用戶使用擴(kuò)展CAN總線的方式和標(biāo)準(zhǔn)CAN接口保持不變,即使用標(biāo)準(zhǔn)的socketcan編程。在此基礎(chǔ)上,客戶可利用英創(chuàng)公司提供的基本CAN通訊應(yīng)用程序源代碼,快速評(píng)估四CAN擴(kuò)展單元的基本性能是否滿足其具體的應(yīng)用需求。只是需要注意CAN設(shè)備名稱的序號(hào),對(duì)于擴(kuò)展網(wǎng)絡(luò)ETA704所接出的四路CAN接口分別對(duì)應(yīng)can2-can5。對(duì)于socketcan接口的詳細(xì)說(shuō)明可以參考專門的資料和英創(chuàng)公司的介紹:《Linux Socket CAN驅(qū)動(dòng)簡(jiǎn)介》。
-
Linux
+關(guān)注
關(guān)注
87文章
11292瀏覽量
209332 -
嵌入式主板
+關(guān)注
關(guān)注
7文章
6085瀏覽量
35296
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論