CAN總線與以太網(wǎng)的嵌入式網(wǎng)關(guān)電路的設計與實現(xiàn)
出處:維庫電子市場網(wǎng) 發(fā)布于:2016-11-02 11:59:35
本文從以太網(wǎng)與工業(yè)現(xiàn)場總線的互聯(lián)出發(fā),主要介紹了CAN總線與以太網(wǎng)嵌入式網(wǎng)關(guān)電路的設計與實現(xiàn),本文對比了CAN 和以太網(wǎng)相連的嵌入式網(wǎng)關(guān)設計的兩種方法,并從硬件結(jié)構(gòu)和軟件結(jié)構(gòu)兩方面進行了闡述。
目前,對于CAN 和以太網(wǎng)相連的嵌入式網(wǎng)關(guān)設計主要有兩種方法:一種是低檔MCU 加接口芯片的設計方法,另一種是MCU 加EOS(實時多任務操作系統(tǒng))再加接口芯片的設計方法。因CAN 只采用了ISO/OSI 參考模型的一、二層,協(xié)議相對簡單,比較適合用于低成本、速率要求不高的離散控制系統(tǒng)。從合理的成本和有效利用處理能力這兩方面考慮,該設計采用低檔MCU 加接口芯片的方法,其硬件框圖見圖。

圖1
主控芯片及以太網(wǎng)接口模塊
根據(jù)要求,該系統(tǒng)選擇了性能價格比較高的AT89C55單片機。它是面向測控對象和嵌入式應用的,所以它的體系結(jié)構(gòu)以及CPU、指令系統(tǒng)、外圍單元電路都是按照這種要求專門設計的。它內(nèi)部帶高達20 KB 的FLASH程序存儲器,AT89C55完全兼容8051 指令集,片上FLASH方便了使用者進行在線編程,工作速率可達33 MHz,256 B 的內(nèi)部RAM,32 個可編程的I/O口,3 個16 位的定時/計數(shù)器,8 個中斷源,支持低功耗的空閑工作模式。
以太網(wǎng)接口選用的是RTL8019AS 芯片,它是一種高度集成的以太網(wǎng)控制器,能實現(xiàn)以太網(wǎng)媒介訪問層(MAC)和物理層(PHY)的全部功能。RTL8019AS 內(nèi)部有兩個RAM 區(qū)域:一是16 KB,地址為0x4000~0x7fff,要接收和發(fā)送數(shù)據(jù)包必須通過DMA 讀寫RTL8019AS 內(nèi)部的16 KB 的RAM,它實際上是雙端口RAM,即有兩條總線與其連接,一條總線用于RTL8019AS讀/寫或?qū)?讀該RAM,即本地DMA;另一條總線用于單片機讀或?qū)懺揜AM,即遠程DMA;二是32 個字節(jié),地址為0x0000~0x001F,用于存儲以太網(wǎng)物理地址。主控芯片和以太網(wǎng)接口芯片的硬件接口原理圖見圖2。值得注意的是由于以太網(wǎng)的包可以超過1 500 個字節(jié),AT89C55的片內(nèi)RAM 只有256 個字節(jié),因此無法存儲這么大的包,所以這里擴展了一個32 KB 的外部RAM,這樣同時也能提高單片機的數(shù)據(jù)傳輸速度。

圖2 以太網(wǎng)接口電路原理圖
CAN 接口模塊
組成CAN 系統(tǒng)的主要器件是CAN 控制器和收發(fā)器。該設計中,CAN 接口模塊選用SJA1000 芯片和PCA82C250芯片。SJA1000 是一個獨立的CAN 控制器,它是Philips 公司另一個CAN 控制器PCA82C200 的替代產(chǎn)品,且增加了一種新的工作模式(Peli CAN),這種模式支持CAN 2.0B 協(xié)議。SJA1000主要完成CAN 的通信協(xié)議,實現(xiàn)報文的裝配和拆分、接收信息的過濾和校驗等。PCA82C250是CAN 控制器與物理總線之間的接口,主要用于增強系統(tǒng)的驅(qū)動能力。采用收發(fā)器的系統(tǒng)中,節(jié)點數(shù)至少可以達到110 個,同時還具有降低射頻干擾(RFI)和很強的抗電磁干擾(EMI)能力。
特別注意:
(1)晶振電路的問題。89C55 和SJA1000都應該有各自獨立的晶振電路,不能夠用SJA1000的時鐘輸出信號CLKOUT 來驅(qū)動單片機。
(2) 復位引腳的問題。雖然SJA1000的復位是低電平,但不能通過一個非門直接連接單片機的復位引腳。一般對解決復位引腳問題有兩種方式:種是使用單片機的I/O 引腳控制SJA 的復位引腳,其好處是單片機可以完全控制SJA的復位過程;第二種是采用適當?shù)膹臀恍酒?,為了降低成本,該設計采取的是種方法。
(3)RX1 引腳的電位必須維持在約0.5 VCC 上,否則將不能形成CAN 協(xié)議所要求的邏輯電平。
(4)一定要注意電纜的終端阻抗匹配,它直接影響CAN 總線是否能正常工作和網(wǎng)絡性能。CAN 接口模塊的硬件電路圖見圖3,在PCA82C250的RS 腳上接有一個斜率電阻R,可根據(jù)總線通信速度適當調(diào)整電阻的大小。
圖3 CAN 接口模塊的硬件電路圖
版權(quán)與免責聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權(quán)行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權(quán)等法律責任。
如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- ARM技術(shù)架構(gòu)與應用開發(fā)實踐指南2026/1/6 10:40:19
- 嵌入式實時操作系統(tǒng)(RTOS)選型與移植技術(shù)指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術(shù)選型與抗干擾設計實踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開啟異核通信新時代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎知識2025/7/14 16:59:04









