亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于LPC2368的CAN總線智能節(jié)點設(shè)計*

        2010-08-11 05:27:32周愛軍胡宏燦崔大連
        艦船電子工程 2010年7期
        關(guān)鍵詞:收發(fā)器微控制器中斷

        周愛軍 胡宏燦 崔大連

        (海軍大連艦艇學(xué)院裝備自動化系 大連 116018)

        1 引言

        最初CAN-bus被設(shè)計作為汽車環(huán)境中的微控制器通訊工具,用于在車載各電子控制裝置ECU之間交換信息,從而形成汽車電子控制網(wǎng)絡(luò)。CAN總線使用多主機模式進(jìn)行組網(wǎng),通訊方式靈活;使用非破壞性的總線仲裁技術(shù),節(jié)省了總線沖突仲裁時間;數(shù)據(jù)包采用短幀結(jié)構(gòu),傳輸時間短,受干擾概率低,傳輸距離長;具備完善的錯誤處理機制,保證了總線的健壯性。可以說CAN-bus總線在通信能力、可靠性、實時性、靈活性、易用性、傳輸距離等方面較其他串行總線有著明顯的優(yōu)勢。鑒于此,很多單片機廠商紛紛將CAN協(xié)議控制器集成在微控制器芯片上,LPC2368是PHILIPS公司推出的一款性價比很高的ARM7核處理器,內(nèi)部集成兩路獨立的CAN控制器,以其性能高、成本低和能耗小的特點,適用于多種工控領(lǐng)域,本文主要介紹基于LPC2368的CAN智能節(jié)點設(shè)計[1~2]。

        2 硬件設(shè)計

        2.1 LPC2368微控制器特點

        LPC2368處理器是基于一款支持實時仿真和跟蹤的 32位 ARM7TDMI微控制器,并帶有512KB嵌入的高速FLash存儲器,58KB的SRAM;128位寬度的存儲器接口和獨特的加速結(jié)構(gòu),使32位代碼能夠在最大時鐘速率下運行;對代碼規(guī)模有嚴(yán)格控制的應(yīng)用可使用Thumb指令進(jìn)行開發(fā),可將代碼規(guī)模降低30%,而性能的損失卻很小;指令實行三級流水線作業(yè),提供Embedded ICE邏輯單元,支持片上斷點和調(diào)試點,具有先進(jìn)的軟件開發(fā)和調(diào)試環(huán)境。LPC2368內(nèi)部集成2個CAN控制器,每一個CAN控制器都與PHILIPS出品的獨立CAN控制器SJA1000有著相似的寄存器結(jié)構(gòu),單個總線上的數(shù)據(jù)傳輸速率可高達(dá)1Mb/s;兼容CAN2.0B,符合IS011898-1規(guī)范;全局驗收濾波器可以識別所有的11位和29位標(biāo)識符;驗收濾波器為選擇的標(biāo)識符提供Full-style自動接收。

        2.2 CAN智能節(jié)點硬件電路

        CAN總線接口部分包括 LPC2368內(nèi)置的CAN協(xié)議控制器、光電耦合器和總線收發(fā)器[3],如圖1所示。

        圖1 接口電路圖

        由于LPC2368內(nèi)置了CAN協(xié)議控制模塊,所以節(jié)點硬件電路只需設(shè)計好協(xié)議控制器和總線收發(fā)器以及總線收發(fā)器和總線的接口電路即可。這里我們選用了PHILIPS公司(現(xiàn)為NXP公司)的TJA1050高速總線收發(fā)器。在整個應(yīng)用中,微控制器內(nèi)置的CAN協(xié)議控制模塊主要完成CAN的通信協(xié)議,實現(xiàn)報文的裝配和拆分、接收信息的過濾和校驗等工作;收發(fā)器TJA1050實現(xiàn)CAN協(xié)議控制器和通信線路的物理連接,提高CAN總線的驅(qū)動能力和可靠性;為了進(jìn)一步提高系統(tǒng)的抗干擾能力,LPC2368引腳 Tx1、Rx1與收發(fā)器 TJA1050并不直接相連,而是使用高速光耦合 6N137和TJA1050相連[4]。

        電路中采用隔離型DC/DC模塊B0505S-1W向收發(fā)器電路供電。這樣就可以很好地實現(xiàn)總線上各節(jié)點的電氣隔離,這部分電路雖增加了接點的復(fù)雜性,但卻提高了接點的穩(wěn)定性和安全性。

        TJA1050與總線接口部分,使CANH、CANL與地之間并聯(lián)濾波電容,以達(dá)到消除總線高頻干擾的目的,并且使節(jié)點具備一定的防電磁輻射能力。在選取電容大小的時候必須考慮總線節(jié)點的數(shù)量和總線傳播速率,當(dāng)T JA1050的輸出級阻抗約200歐姆,總線系統(tǒng)有10個節(jié)點,速度是500kbit/s時,則電容的值不應(yīng)該超過470pF。

        在兩根CAN總線接入端與地之間分別反接了一個保護二極管。當(dāng)CAN總線有較高的負(fù)電壓時,二極管的短路可起到一定的過壓保護作用。根據(jù)TJA1050的特性,本設(shè)計中CAN終端電阻使用了分裂終端,即總線端節(jié)點的兩個終端電阻都被分成兩個等值的電阻,用兩個60Ω的電阻取代120Ω的電阻,可以有效降低輻射。

        3 軟件設(shè)計

        軟件調(diào)試環(huán)境采用KEIL公司的keil uvision 4,通過 ULINK仿真調(diào)試。軟件設(shè)計部分包括CAN協(xié)議控制器的初始化、報文的接收、報文的發(fā)送及總線錯誤處理四個模塊[5]。

        3.1 CAN協(xié)議控制器的初始化

        系統(tǒng)是否能正常地工作,初始化程序的設(shè)計是個關(guān)鍵。必須對寫入每個寄存器的內(nèi)容進(jìn)行仔細(xì)和全面的考慮。控制器初始化工作主要包括:硬件使能、配置管腳連接、軟件復(fù)位、設(shè)置總線波特率、配置模式寄存器、配置中斷工作方式、配置驗收濾波器、啟動CAN工作等。這部分內(nèi)容與通用CAN協(xié)議控制器SJA1000相似,不再贅述。

        3.2 報文接收

        CAN報文的接收采用中斷方式。在ARM7TDMI核處理器中向量中斷控制器VIC具有32個中斷請求輸入,可將其編程分為3類:FIQ、向量IRQ和非向量IRQ。每個片內(nèi)外設(shè)都有一條中斷線連接到向量中斷控制器,其中CAN控制器的VIC通道號是19~23。考慮到CAN控制器的中斷源較多,筆者采用非向量中斷。為了避免接收到的數(shù)據(jù)因為沒有得到及時處理而造成數(shù)據(jù)丟失,我們定義了接收緩沖區(qū),采用環(huán)形緩沖結(jié)構(gòu)(類似于SJA1000CAN控制器中64字節(jié)FIFO環(huán)形緩沖)來接收數(shù)據(jù)。結(jié)合定義的環(huán)形緩沖區(qū)來進(jìn)行CAN報文的接收程序設(shè)計。CAN報文接收模塊流程如圖2所示。

        3.3 報文的發(fā)送

        LPC2368中CAN控制器為了提高大量數(shù)據(jù)發(fā)送的效率,每個CAN控制器配有三個獨立的發(fā)送緩沖寄存器,這點和SJA1000有所不同。因此與SJA1000的發(fā)送程序相比要相對復(fù)雜。因為發(fā)送時是根據(jù)緩沖區(qū)的實際情況有選擇的把數(shù)據(jù)寫入三個發(fā)送緩沖之一。每個緩沖區(qū)的狀態(tài)通過查詢CANSR得知。所以在設(shè)計發(fā)送程序的時候要先判斷哪個緩沖是空閑的,然后再把數(shù)據(jù)寫入緩沖區(qū),啟動發(fā)送。報文發(fā)送流程如圖3所示。

        3.4 總線錯誤處理

        為了使節(jié)點工作的更加可靠,對工作過程中發(fā)生的錯誤必須進(jìn)行處理。工作過程中的錯誤中斷類型有兩種,一是錯誤報警中斷,另一個是總線錯誤中斷,前者是產(chǎn)生的條件是錯誤計數(shù)器的值超過96,中斷處理方式通常為清零所有的錯誤計數(shù)器的值,維持CAN的運行;而總線錯誤中斷產(chǎn)生的條件是錯誤計數(shù)器的值到達(dá)255,中斷錯誤處理方式為復(fù)位節(jié)點,重新初始化CAN控制器。從錯誤中斷產(chǎn)生的條件可以得出,錯誤報警中斷會屏蔽總線錯誤中斷,所以為了簡化錯誤處理過程,我們可以使節(jié)點打開總線錯誤中斷而屏蔽錯誤報警中斷,在總線錯誤累計255次后,CAN節(jié)點脫離總線,總線錯誤中斷的處理是復(fù)位該節(jié)點,重新初始化CAN控制器,這樣可以消除錯誤,給節(jié)點一個很好的初態(tài),使節(jié)點重新回歸正常工作狀態(tài)。

        4 結(jié)語

        本文采用LPC2368作為主控CPU,利用其內(nèi)嵌CAN協(xié)議控制器和外置的TJA1050總線收發(fā)器給出了CAN智能節(jié)點的通訊接口設(shè)計和軟件實現(xiàn)流程。本設(shè)計在學(xué)校導(dǎo)航裝備仿真模擬實驗室的建設(shè)中得到了使用,試驗證明,本設(shè)計方案和“單片機+CAN協(xié)議控制器+總線收發(fā)器”設(shè)計方案相比,有開發(fā)簡單、工作穩(wěn)定可靠、支持在系統(tǒng)編程、便于功能擴展等優(yōu)勢,具有較高的容錯能力和自我診斷修復(fù)功能。

        [1]周立功.ARM嵌入式系統(tǒng)基礎(chǔ)教程[M].北京:電子工業(yè)出版社,2008

        [2]王黎明.CAN現(xiàn)場總線系統(tǒng)的設(shè)計與應(yīng)用[M].北京:電子工業(yè)出版社,2008

        [3]孫傳友.測控電路及裝置[M].北京:北京航空航天大學(xué)出版社,2007

        [4]張毅剛.新編MCS-51單片機應(yīng)用設(shè)計[M].北京:電子工業(yè)出版社,2003

        [5]饒運濤.現(xiàn)場總線CAN原理與應(yīng)用技術(shù)[M].北京:北京航天航空大學(xué)出版社,2003

        猜你喜歡
        收發(fā)器微控制器中斷
        清管球收發(fā)器設(shè)計細(xì)節(jié)分析及應(yīng)用
        物聯(lián)網(wǎng)技術(shù)在微控制器實驗教學(xué)中的應(yīng)用
        電子制作(2017年14期)2017-12-18 07:07:58
        跟蹤導(dǎo)練(二)(5)
        千里移防,衛(wèi)勤保障不中斷
        解放軍健康(2017年5期)2017-08-01 06:27:44
        Virtex5 FPGA GTP_DUAL硬核兩個收發(fā)器獨立使用的實現(xiàn)
        Atmel針對新一代物聯(lián)網(wǎng)應(yīng)用發(fā)布全新32位微控制器
        最新STM32設(shè)計工具增加對混合信號微控制器的支持
        意法半導(dǎo)體(ST)推出世界首款基于ARM Cortex-M7的STM32 F7系列微控制器
        AT89C51與中斷有關(guān)的寄存器功能表解
        FPGA內(nèi)嵌PowerPC的中斷響應(yīng)分析
        微處理機(2012年4期)2012-06-13 11:32:24
        日韩免费无码一区二区三区 | 一区二区视频网站在线观看| 日本精品一级二区三级| 亚洲av日韩av女同同性| 国产成人精品av| 成年奭片免费观看视频天天看| 日本一区二区三区精品不卡| av影院在线免费观看不卡| 巨茎中出肉欲人妻在线视频| 久久亚洲黄色| 91在线视频视频在线| 亚洲高清一区二区三区在线播放| 久久9精品区-无套内射无码| 狠狠色狠狠色综合日日92| 中文字幕人妻一区色偷久久| 国产精品成人亚洲一区| 久久99精品久久久久久秒播| 國产AV天堂| av网站韩日在线观看免费| 给你免费播放的视频| 日本又黄又爽gif动态图| 国产成人亚洲精品2020| 国产精品亚洲综合久久系列| 影视av久久久噜噜噜噜噜三级| 欧美日韩亚洲精品瑜伽裤| 亚洲精品国产主播一区二区| 男女真人后进式猛烈视频网站| 亚洲精品乱码久久久久久日本蜜臀| 欧美日韩区1区2区3区| 久久99免费精品国产| 五月综合激情婷婷六月| 国产女合集小岁9三部 | 西西午夜无码大胆啪啪国模| 十八岁以下禁止观看黄下载链接| 少妇被粗大猛进进出出| 日韩精品在线视频一二三| 在线综合亚洲欧洲综合网站| 国产一区二区丰满熟女人妻| 亚洲岛国一区二区三区| 性无码免费一区二区三区在线| 久久久亚洲欧洲日产国产成人无码|