當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
引 言
    CAN(Controller Area NetWork)總線技術(shù)是一種有效支持分布式控制和實(shí)時(shí)控制的串行通信網(wǎng)絡(luò),廣泛應(yīng)用于工業(yè)控制。其硬件連接簡(jiǎn)單,可靠性好,實(shí)時(shí)性和性價(jià)比高,能夠很好地滿足計(jì)算機(jī)聯(lián)鎖系統(tǒng)通信網(wǎng)絡(luò)對(duì)實(shí)時(shí)性和可靠性的要求。
    AVR單片機(jī)是由Atmel公司研發(fā)的增強(qiáng)型內(nèi)置Flash的RISC高速8位單片機(jī)。本設(shè)計(jì)使用的是AVR系列新型單片機(jī)AT90CAN128,它自帶CAN控制器,使得通信部分的硬件電路設(shè)計(jì)大大簡(jiǎn)化,因此增強(qiáng)了系統(tǒng)可靠性。


1 CAN總線技術(shù)簡(jiǎn)介
   
CAN總線是德國Bosch公司20世紀(jì)80年代初為解決現(xiàn)代汽車中眾多的控制與測(cè)試儀器之間的數(shù)據(jù)交換而開發(fā)的一種串行數(shù)據(jù)通信協(xié)議。它是一種多主總線,通信介質(zhì)可以是雙絞線、同軸電纜或光導(dǎo)纖維。通信速率可達(dá)1 Mbps。CAN總線通信接口中集成了CAN協(xié)議的物理層和數(shù)據(jù)鏈路層功能,可完成對(duì)通信數(shù)據(jù)的成幀處理,包括位填充、數(shù)據(jù)塊編碼、循環(huán)冗余檢驗(yàn)、優(yōu)先級(jí)判別等工作。CAN總線具有以下技術(shù)特性:
    ①廢除了傳統(tǒng)的站地址編碼,改為對(duì)通信數(shù)據(jù)塊進(jìn)行編碼。采用這種方法的優(yōu)點(diǎn)是,可使網(wǎng)絡(luò)內(nèi)的節(jié)點(diǎn)個(gè)數(shù)在理論上不受限制,數(shù)據(jù)塊的標(biāo)識(shí)碼可由11位或29位二進(jìn)制數(shù)組成,因此可以定義211或229個(gè)不同的數(shù)據(jù)塊;這種按數(shù)據(jù)塊編碼的方式,還可使不同的節(jié)點(diǎn)同時(shí)接收到相同的數(shù)據(jù),這一點(diǎn)在分布式控制系統(tǒng)中非常有用。
    ②數(shù)據(jù)段長(zhǎng)度最多為8個(gè)字節(jié),可滿足通常工業(yè)領(lǐng)域中控制命令、工作狀態(tài)及測(cè)試數(shù)據(jù)的一般要求。同時(shí),8個(gè)字節(jié)不會(huì)占用總線時(shí)間過長(zhǎng),從而保證了通信的實(shí)時(shí)性。CAN協(xié)議采用CRC校驗(yàn)并可提供相應(yīng)的錯(cuò)誤處理功能,保證了數(shù)據(jù)通信的可靠性。
    ③CAN采用非破壞總線仲裁技術(shù)。當(dāng)多個(gè)節(jié)點(diǎn)同時(shí)向總線發(fā)送信息出現(xiàn)沖突時(shí),優(yōu)先級(jí)較低的節(jié)點(diǎn)會(huì)主動(dòng)退出發(fā)送,而優(yōu)先級(jí)最高的節(jié)點(diǎn)可不受影響地繼續(xù)傳輸數(shù)據(jù),從而大大節(jié)省了總線沖突仲裁時(shí)間。即使在網(wǎng)絡(luò)負(fù)載很重的情況下,也不會(huì)出現(xiàn)網(wǎng)絡(luò)癱瘓的情況。


2 AT90CAN128功能簡(jiǎn)介
2.1 基本特性
   
AT90C2AN128微控制器采用具有先進(jìn)的RISC結(jié)構(gòu)和低功耗的8位單片機(jī),在一個(gè)時(shí)鐘周期內(nèi)執(zhí)行一條指令,因此可以達(dá)到接近1 MIPS/MHz的性能。
    AT90CAN128具有以下特點(diǎn):128 KB的可在系統(tǒng)編程/應(yīng)用編程(ISP/IAP)Flash程序存儲(chǔ)器,4 KB SRAM,32個(gè)通用工作寄存器,53個(gè)通用I/O口,實(shí)時(shí)時(shí)鐘計(jì)數(shù)器(RTC),4個(gè)帶有比較模式靈活的定時(shí)器/計(jì)數(shù)器,2個(gè)可編程的USRAT接口,1個(gè)8位面向字節(jié)的TWI(I2C)總線接口,8通道單端或差分輸入的10位ADC(其中1個(gè)差分通道為增益可調(diào)的),可編程帶內(nèi)部振蕩器的看門狗定時(shí)器,1個(gè)SPI接口,1個(gè)符合2.0A或2.0B的CAN控制器接口,一個(gè)兼容IEEE1149.1標(biāo)準(zhǔn)的JTAG接口(用于在線仿真調(diào)試和程序下載),6種可通過軟件選擇的節(jié)電模式。
2.2 內(nèi)置CAN控制器
   
AT90CAN128內(nèi)置完全符合CAN2.0A和2.0B標(biāo)準(zhǔn)協(xié)議的CAN控制器。采用Mob(消息對(duì)象)方式進(jìn)行數(shù)據(jù)的發(fā)送和接收,共有15個(gè)Mob,它們具有相同的屬性:有11位標(biāo)識(shí)符(2.0A協(xié)議),也可擴(kuò)展至29位(2.0B協(xié)議);最多為8字節(jié)數(shù)據(jù)緩沖(靜態(tài)分配);Tx、Rx幀緩沖或自動(dòng)響應(yīng)配置;時(shí)間標(biāo)識(shí)。CAN控制器的結(jié)構(gòu)如圖1所示。

    Mob用來設(shè)置幀格式和存放數(shù)據(jù)。Mob的數(shù)目是0~14,它們相互獨(dú)立,但在進(jìn)行總線仲裁時(shí),低位的Mob會(huì)獲得優(yōu)先權(quán)。每個(gè)Mob都被安置在一個(gè)頁中來保存,頁的序號(hào)即Mob的序號(hào)。


3 控制單元的軟硬件設(shè)計(jì)
3.1 整體結(jié)構(gòu)
   
開關(guān)量控制單元與計(jì)算機(jī)聯(lián)鎖系統(tǒng)中其他的控制單元以及上位機(jī)等節(jié)點(diǎn)共同構(gòu)成CAN通信網(wǎng)絡(luò)。每一個(gè)控制單元都有自己獨(dú)立的地址,當(dāng)上位機(jī)發(fā)出指令時(shí),網(wǎng)絡(luò)中的CAN節(jié)點(diǎn)對(duì)指令中的地址信息進(jìn)行比對(duì),如果與自己的地址一致則接收數(shù)據(jù)并執(zhí)行相應(yīng)的控制命令。AT90CAN128的CAN控制器接口與TJA1050芯片通過光耦相連組成CAN通信通道,接收上位機(jī)下發(fā)的控制命令,使電子開關(guān)吸合或斷開,即接通或斷開負(fù)載。其A/D轉(zhuǎn)換通道對(duì)負(fù)載電路的電流進(jìn)行采樣,如果電流過載,則單片機(jī)停止輸出周期性脈沖信號(hào)給動(dòng)態(tài)電路,斷開與電源相連的繼電器組,切斷電源供給,以保證系統(tǒng)安全。
    開關(guān)量控制單元的硬件結(jié)構(gòu)如圖2所示。

3.2 硬件設(shè)計(jì)(CAN通信部分)
   
AT90CAN128的晶振頻率在5 V時(shí)可以達(dá)到16MHz,其與CAN總線的硬件連接如圖3所示。

    本設(shè)計(jì)中,CAN通信采用AT90CAN128內(nèi)置的CAN控制器與CAN收發(fā)器TJA1050經(jīng)高速光耦6N137相連接。TJA1050速率高,最高可達(dá)1 Mbps,提供總線與電源及地之間的短路保護(hù)。其引腳8(STB)用于選定工作模式,有兩種工作模式可供選擇:高速或待機(jī)。這里,引腳8接地,選擇高速模式,高速模式是TJA1050的正常工作模式。如果引腳接高電平,則TJA1050將進(jìn)入待機(jī)模式,發(fā)送器被關(guān)閉。高速光耦6N137起隔離控制器與工業(yè)現(xiàn)場(chǎng)的作用,可以提高系統(tǒng)的抗干擾能力。電路采用獨(dú)立的電源供電,有效地避免了外界電壓變化對(duì)通信的影響。
3.3 軟件設(shè)計(jì)
   
CAN總線節(jié)點(diǎn)要有效、實(shí)時(shí)地完成通信任務(wù),軟件的設(shè)計(jì)是關(guān)鍵。CAN總線節(jié)點(diǎn)的軟件設(shè)計(jì)主要包括CAN控制器的初始化、數(shù)據(jù)接收和數(shù)據(jù)發(fā)送程序。主程序通過調(diào)用函數(shù)來實(shí)現(xiàn)數(shù)據(jù)的接收和發(fā)送。
3.3.1 CAN初始化
   
為了正確地實(shí)現(xiàn)通信,這一部分要對(duì)波特率,標(biāo)識(shí)碼寄存器CANIDT、標(biāo)識(shí)碼屏蔽寄存器CANIDM,發(fā)送與接收Mob的頁號(hào),數(shù)據(jù)長(zhǎng)度、中斷開啟、Mob使能等內(nèi)容作出設(shè)置。本設(shè)計(jì)采用CAN2.0A協(xié)議,即標(biāo)識(shí)符為11位。將標(biāo)識(shí)碼寄存器CANIDT1設(shè)置為開關(guān)量控制單元的地址Addr,其余的標(biāo)識(shí)碼寄存器設(shè)置為0。該地址只使用一個(gè)8位寄存器,因此標(biāo)識(shí)碼屏蔽寄存器只需設(shè)置CANIDM1為0xFF,其余的標(biāo)識(shí)碼屏蔽寄存器設(shè)置為0。


    由4個(gè)標(biāo)識(shí)碼寄存器CANIDT、標(biāo)識(shí)碼屏蔽寄存器CANIDM組成驗(yàn)收濾波器,信息只有通過它的驗(yàn)收濾波才能被接收。所有驗(yàn)收屏蔽寄存器為0的位,驗(yàn)收碼寄存器和CAN信息幀對(duì)應(yīng)位必須相同才能驗(yàn)收通過;而所有驗(yàn)收屏蔽寄存器為1的位,驗(yàn)收碼寄存器對(duì)應(yīng)位的驗(yàn)收濾波功能則被屏蔽。本例中只接收ID為Addr的信息。
3.3.2 發(fā)送子程序
   
發(fā)送時(shí)只需將待發(fā)送的數(shù)據(jù)按特定格式送入發(fā)送緩存區(qū)中,然后啟動(dòng)發(fā)送即可。


3.3.3 接收子程序
   
消息的接收采用中斷方式實(shí)現(xiàn)。首先要關(guān)閉接收中斷,然后設(shè)置CANPAGE寄存器來指定接收的頁數(shù),隨后由CANCDMob寄存器來控制接收動(dòng)作。當(dāng)有消息到達(dá)時(shí),將觸發(fā)CANSTMob寄存器中的RXOK中斷,消息中的數(shù)據(jù)將被裝載到CANMSG寄存器中。


結(jié) 語
    本文詳細(xì)介紹了以AT90CAN128微控制器為核心的開關(guān)量控制單元的主要軟硬件設(shè)計(jì)。與目前同類型的單片機(jī)相比較,AT90CAN128由于內(nèi)置CAN控制器,因而可大大降低設(shè)備成本,簡(jiǎn)化硬件結(jié)構(gòu),提高通信效率、安全性以及可靠性。實(shí)踐證明,開關(guān)控制單元在計(jì)算機(jī)聯(lián)鎖系統(tǒng)中運(yùn)行穩(wěn)定,能夠很好地實(shí)現(xiàn)預(yù)期的功能。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉