CAN總線(xiàn)的通信應用系統設計
CAN,全稱(chēng)為“Controller Area Network”,即控制器局域網(wǎng),是國際上應用最廣泛的現場(chǎng)總線(xiàn)之一。CAN是一種多主方式的串行通訊總線(xiàn),基本設計規范要求有高的位速率,高抗電磁干擾性,而且能夠檢測出產(chǎn)生的任何錯誤。當信號傳輸距離達到10Km時(shí),CAN 仍可提供高達50Kbit/s的數據傳輸速率。 由于CAN總線(xiàn)具有很高的實(shí)時(shí)性能,因此,CAN已經(jīng)在汽車(chē)工業(yè)、航空工業(yè)、工業(yè)控制、安全防護等領(lǐng)域中得到了廣泛應用。
CAN具有十分優(yōu)越的特點(diǎn),包括: 低成本,極高的總線(xiàn)利用率, 很遠的數據傳輸距離(長(cháng)達10Km), 高速的數據傳輸速率(高達1Mbit/s), 可根據報文的ID決定接收或屏蔽該報文, 可靠的錯誤處理和檢錯機制, 發(fā)送的信息遭到破壞后,可自動(dòng)重發(fā),節點(diǎn)在錯誤嚴重的情況下具有自動(dòng)退出總線(xiàn)的功能, 報文不包含源地址或目標地址,僅用標志符來(lái)指示功能信息、優(yōu)先級信息. 標準CAN的標志符長(cháng)度是11位,而擴展格式CAN的標志符長(cháng)度可達29位。CAN 協(xié)議的2.0A版本規定CAN控制器必須有一個(gè)11位的標志符。同時(shí),在2.0B版本中規定,CAN控制器的標志符長(cháng)度可以是11位或29位。遵循CAN2.0B協(xié)議的CAN控制器可以發(fā)送和接收11位標識符的標準格式報文或29位標識符的擴展格式報文。如果禁止CAN2.0B,則CAN 控制器只能發(fā)送和接收11位標識符的標準格式報文,而忽略擴展格式的報文結構,但不會(huì )出現錯誤。
二 內嵌的CAN模塊的TMS320LF2407
TI(德州儀器)公司的DSP芯片TMS320LF2407 內嵌的CAN模塊是一個(gè) 16位的外設模塊。它完全支持CAN2.0 B協(xié)議;可工作在標準模式和擴展模式;支持數據幀和遠程幀;數據收發(fā)采用郵箱方式;有可編程位定時(shí)器;可對中斷配置編程;可編程實(shí)現總線(xiàn)喚醒功能;能自動(dòng)回復遠程請求;有完備的錯誤診斷功能;可進(jìn)行自測試;有自動(dòng)重發(fā)功能。TMS320LF2407是一款性能很強的CAN控制器。郵箱方式是TI公司CAN控制器的一大特點(diǎn)。它們把一個(gè)RAM空間(48×16)分為六個(gè)郵箱,每個(gè)占4 ×16位的存儲空間。郵箱 0~1是接收郵箱,郵箱4~5是發(fā)送郵箱,而郵箱2~3則可以隨意配置成發(fā)送或接收郵箱。每個(gè)郵箱都由寄存器控制。
三 應用系統設計
針對CAN總線(xiàn)有以上的優(yōu)點(diǎn)以及TI公司的TMS320LF2407 內嵌的CAN模塊的方便性和實(shí)用性,本人用四片TMS320LF2407芯片組成一個(gè)CAN總線(xiàn)網(wǎng)絡(luò ),進(jìn)行實(shí)時(shí)收發(fā)數據,并根據各自郵箱的標識符判別數據是接收還是丟棄。CAN收發(fā)器使用PHILIPS的PCA82C250,此系統可擴展性強,功能強大,若要增加節點(diǎn)個(gè)數,只需要在CAN總線(xiàn)上掛接帶有CAN模塊的控制器即可,并對初學(xué)者及要掌握CAN總線(xiàn)的人來(lái)說(shuō)具有很好的指導意義。
1 系統硬件設計
硬件系統分為兩層:第一層,CAN總線(xiàn)與DSP控制LF2407 接口層―實(shí)現CAN總線(xiàn)和LF2407的物理接口;第二層,DSP與外圍器件的信息處理 ,因為L(cháng)F2407 是適用于工控領(lǐng)域應用而設計的一款新型工控型芯片,集成了數字I/O,EV(事件管理器),A/D(模數轉換),SPI(串行外設接口),SCI(異步串行通信接口),CAN控制器等豐富的控制資源。其中具體介紹CAN總線(xiàn)與LF2407的接口電路及要注意的地方。
系統原理如下圖1所示:

CAN總線(xiàn)與LF2407的接口電路: PCA82C250是驅動(dòng)CAN控制器和物理總線(xiàn)間的接口,提供對總線(xiàn)的差動(dòng)發(fā)送和接收功能,硬件原理如下圖2所示。由于PCA82C250是提供5伏電原供電,但由于LF2407是用3.3伏供電,因此要做電平轉換。這里采用最簡(jiǎn)單的電阻分壓來(lái)實(shí)現。其中R2,R3分別取1K和2K,R1取10K,對于二極管D1,這里采用具有快速恢復能力的肖特基二極管1N5819。對于電平轉換,可以采用專(zhuān)門(mén)的集成芯片或直接采用3.3伏供電的CAN收發(fā)器如TI的SN65HVD230。

評論