<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è) > 手機與無(wú)線(xiàn)通信 > 設計應用 > CAN總線(xiàn)智能采集卡的設計與實(shí)現

CAN總線(xiàn)智能采集卡的設計與實(shí)現

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

0.引言
控制器局域網(wǎng)(Controller Area Network)作為一種多線(xiàn)路網(wǎng)絡(luò )通信系統,以其時(shí)分多主、非破壞性仲裁和自動(dòng)檢錯重發(fā)等靈活、可靠的通信技術(shù),及低廉的價(jià)格,被廣泛地應用于工業(yè)自動(dòng)化生產(chǎn)線(xiàn)、汽車(chē)、傳感器、醫療設備、化大廈、電梯控制、環(huán)境控制等分布式實(shí)時(shí)系統。本采用的是一款Atmel公司新近推出的帶有控制器的微控制器,是一款很有前途的新型芯片,其內部集成控制器,用它來(lái)組建CAN實(shí)時(shí)監控系統,與傳統的CAN組網(wǎng)方式相比,系統具有結構簡(jiǎn)單、容易、抗干擾性強等應用優(yōu)勢。
1.的功能描述
完成的主要功能有:
1)采集溫箱里的溫度數據,并對其進(jìn)行濾波處理。
2)監視溫度信號的變化情況,報警功能。
3)將采集到的數據通過(guò)CAN總線(xiàn)傳給上位機及其它節點(diǎn)。
采集卡帶有8279鍵盤(pán)/顯示接口,可通過(guò)手工或上位機來(lái)設定各種采集用的參數。
2.總體組成
采集卡主要由單片機系統,8279鍵盤(pán)/顯示控制芯片,譯碼驅動(dòng)電路,LED,按鍵陣列,溫度傳感器DS18B20,光電隔離以及CAN總線(xiàn)物理接口等組成,其硬件組成原理圖見(jiàn)圖1。
采集卡的總體工作流程如下:
采集卡上電復位以后,首先根據默認的參數初始化CAN總線(xiàn)的各個(gè)寄存器及DS18B20,然后對8279及顯示LED的狀態(tài)進(jìn)行初始化,接著(zhù)給T0定時(shí)器裝載初值及設置中斷寄存器等。待初始化完成之后,就向主機發(fā)送控制幀,要求主機設定采樣周期、發(fā)送時(shí)間間隔、當前時(shí)間、發(fā)送主機地址、本機標識符等參數。設定完之后,就根據不同的狀態(tài)進(jìn)入到不同的中斷服務(wù)程序中。
數據類(lèi)型根據傳輸方向可分為上行數據(采集卡→主機)和下行數據(主機→采集卡)。
上行數據主要是采集卡采集到的溫度數據。它的處理主要經(jīng)過(guò)以下幾個(gè)步驟:T89C51CC01對溫度傳感器DS18B20執行一個(gè)其RAM存儲器操作命令完成一次溫度測量。測量結果放在DS18B20的暫存器里,然后CPU用一條讀暫存器內容的存儲器操作命令將暫存器中數據讀出,存放在數據存儲區中。到滿(mǎn)足發(fā)送條件之后,短數據直接形成幀送到發(fā)送緩沖區,超過(guò)幀長(cháng)的數據則要經(jīng)過(guò)分解,打包后再送入CAN總線(xiàn)控制器發(fā)送緩沖區。CAN控制器通過(guò)CAN物理接口向CAN總線(xiàn)發(fā)送數據,總線(xiàn)的所有節點(diǎn)都偵聽(tīng)該數據,但并非所有節點(diǎn)都接收此數據,只有通過(guò)接收濾波的節點(diǎn)才接收此數據。采集卡的數據主要是發(fā)送給主機、監控節點(diǎn)和相關(guān)的控制節點(diǎn)。當采集卡采集到的溫度數據超過(guò)報警上限、報警下限或變化速率過(guò)快的時(shí)候,采集卡還通過(guò)CAN控制器向主機發(fā)送報警信息。
下行數據主要是主機向采集卡發(fā)送的各種控制信息。雖然采集卡可以接收任何節點(diǎn)的信息,但它主要起的是傳感器的作用,所以一般只接收主機來(lái)的各種控制信息??刂菩畔⑼ㄟ^(guò)CAN物理接口進(jìn)入到CAN控制器的接收緩沖器中,采集卡根據幀類(lèi)型來(lái)區分不同的控制幀并設定相應的參數,并進(jìn)行相應的接收、發(fā)送處理。

本文引用地址:http://dyxdggzs.com/article/157787.htm


3.硬件具體組成描述
1)核心CPU ―T89C51CC01
T89C51CC01主要具有以下特性:其片內具有8051內核,具有1個(gè)CAN控制器, 8路模擬量輸入的10位ADC變換器,可在系統編程的32K字節Flash程序存儲器,2K字節程序加載Flash程序存儲器,256字節RAM,1K字節XRAM和2K字節E2PROM數據存儲器,一個(gè)21位看門(mén)狗定時(shí)器。該微控制器基于高性能的靜態(tài)結構,采用先進(jìn)的CMOS制造工藝,包含5個(gè)端口34根雙向I/O線(xiàn),3個(gè)16位定時(shí)/計數器、14個(gè)中斷源4級嵌套中斷結構、1個(gè)全雙工UART、其提供很寬的操作頻率范圍,支持12時(shí)鐘和6時(shí)鐘操作。另外,使用者可利用片上Boot加載程序,通過(guò)CAN或UART接口對該控制器進(jìn)行在系統或在應用編程。
T89C51CC01的最顯著(zhù)的一個(gè)特點(diǎn)是內部集成強大功能的CAN控制器。該控制器支持CAN2.A和CAN 2.B協(xié)議,通過(guò)報文對象頁(yè)寄存器管理15個(gè)獨立的報文對象.每個(gè)報文對象可分別編程為發(fā)送、接收或緩沖接收的報文,并可通過(guò)標識符寄存器和標識符屏蔽寄存器來(lái)設置11位或29位標識符和標識符屏蔽碼來(lái)確定報文對象的優(yōu)先級,以及CAN控制器對該報文對象是否接收或拒絕。其通信的波特率可根據實(shí)際通信距離和需要對位定時(shí)寄存器進(jìn)行設定,最大波特率可達1Mbps。T89C51CC01的結構圖如圖2所示。其P0口為8位并行I/O口,將P0.0與DS18B20連接, P4.0(TxDC)和P4.1(RxDC)與82C250連接。P3.4(T0)、P3.5(T1)和P1.0(T2)是T89C51CC01內部定時(shí)器的引腳,P3.2(INT0)和P3.3(INT1)是T89C51CC01的外部中斷引腳、低電平有效。


上一頁(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>