<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > CAN總線(xiàn)通信適配卡的設計與實(shí)現

CAN總線(xiàn)通信適配卡的設計與實(shí)現

作者: 時(shí)間:2012-03-13 來(lái)源:網(wǎng)絡(luò ) 收藏

1 簡(jiǎn)介

CAN(Controller Area Network)總線(xiàn)屬于現場(chǎng)總線(xiàn)的范疇,是一種有效支持分布式控制或實(shí)時(shí)控制的串行通信網(wǎng)絡(luò )。CAN協(xié)議目前已納入ISO國際標準(ISO11898),它分為物理層、數據鏈路層和應用層,其中物理層和數據鏈路層協(xié)議已經(jīng)集成在芯片中,可通過(guò)硬件自動(dòng)完成數據的成幀與發(fā)送和接收,從而大大減少軟件的工作量,因此,特別適用于工業(yè)自動(dòng)化領(lǐng)域,尤其是那些強調低層監測與控制且要求可靠性高、實(shí)時(shí)性好的惡劣條件下的工業(yè)現場(chǎng)使用。

具有以下突出特點(diǎn):

● 能夠以多主節點(diǎn)方式工作,網(wǎng)絡(luò )上任一節點(diǎn)均可設成主節點(diǎn)以其它節點(diǎn)主動(dòng)發(fā)送信息。

●報文傳輸不含目標地址,它以全網(wǎng)廣播為基礎,各個(gè)接收站可根據報文中反映的數據性質(zhì)標識符來(lái)過(guò)濾報文以決定是否接收。同時(shí)可通過(guò)報文標識符將報文設定為不同的發(fā)送優(yōu)先級,以滿(mǎn)足不同的實(shí)時(shí)要求。

●非破壞性總線(xiàn)仲裁和錯誤界定,利用現有的產(chǎn)品,可由控制器自動(dòng)解決總線(xiàn)沖突和出錯界定,并對用戶(hù)完全透明,同時(shí)還能區分暫時(shí)和永久故障,并可自動(dòng)關(guān)閉故障節點(diǎn)。

●通信距離可達10km(速率5kb/s),速度可達1MB/s(距離40m以?xún)?。

●理論上,的網(wǎng)上節點(diǎn)數不受限制,它有2032種不同的報文標識符,但具體數量取決于物理層的承受能力,通常CAN總線(xiàn)上的節點(diǎn)數可達110個(gè)。CAN總線(xiàn)系統一般采用總線(xiàn)式網(wǎng)絡(luò )拓撲結構,其優(yōu)點(diǎn)是結構簡(jiǎn)單,成本低,系統可靠性高。其總體模式如圖1所示。

2 CAN總線(xiàn)適配卡的功能特點(diǎn)

CAN總線(xiàn)是插在PC機ISA插槽內的智能通訊卡,它可使PC機方便地連接到CAN總線(xiàn)上,其特點(diǎn)如下:

(1)采用高性能的8位微處理器89C52(12MHz),可減輕PC主機的通信負擔,而且可以運行復雜的用戶(hù)通信任務(wù)。

(2)卡上帶有lkB的高速雙口RAM存儲器,可直接映射到主機內存空間以實(shí)現CAN總線(xiàn)與主機PC的高速數據交換,并可設置雙口RAM在ISA總線(xiàn)中的基地址。

(3)采用16MHz CAN控制器SJAl000時(shí),其通訊速率可高達1Mbps。

(4)中斷申請電路能夠保證PC機和適配卡上的微處理器實(shí)時(shí)處理對方的處理要求。

(5)適配卡上帶有光電隔離,可保護PC機避免由于地環(huán)流而造成的損壞,并可增強系統在惡劣環(huán)境中使用的可靠性。

(6)為方便系統調試,可用LED指示系統狀態(tài)和CAN的接收和發(fā)送狀態(tài)。

3 CAN總線(xiàn)適配卡的硬件設計

CAN由雙口RAM電路、微控制器電路、CAN通信控制電路三部分組成,其結構框圖如圖2所示。

3.1 雙口RAM及其控制電路

雙口RAM是一種性能優(yōu)越的快速通信器件,它能提供兩種完全獨立的端口,每個(gè)端口都有完整的地址、數據和控制線(xiàn)。對于器件兩邊的使用者CPU而言,它與一般的RAM無(wú)多大區別,只有在兩邊同時(shí)讀寫(xiě)同一地址單元時(shí),才會(huì )出現競爭現象。在CAN中,通常利用雙口RAM IDT7130來(lái)建立雙向數據交換通道,以實(shí)現PC機和CAN控制器之間的數據傳送。

PC機與擴展存儲器的接口有兩種方法:一種是把雙口RAM當成外部設備,使用端口I/O指令進(jìn)行訪(fǎng)問(wèn),這種方法一次只能傳送一個(gè)字節(或字),因而傳送速度較慢;另一種是內存映像法,即把雙口RAM地址配置于PC機主存儲器的高端(一般為C0000H-DFFFFH),以使PC機像訪(fǎng)問(wèn)主存儲器一樣訪(fǎng)問(wèn)雙口RAM,同時(shí)使所有能夠訪(fǎng)問(wèn)主存儲器的指令也可以以同樣的方式訪(fǎng)問(wèn)雙口RAM。內存映像法可以以字符塊為單位進(jìn)行傳送,因而可實(shí)現快速訪(fǎng)問(wèn)雙口RAM。正是基于這些優(yōu)點(diǎn),在本適配卡設計中采用了的存儲器尋址方式。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>