www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]基于LPC2294的CAN總線智能節(jié)點設(shè)計

一。本設(shè)計給出的CAN總線智能節(jié)點設(shè)計方案,它采用內(nèi)置多路CAN總線控制器的LPC2294作為主控制器,采用隔離CAN收發(fā)器CTM1050T作為收發(fā)器,使得該節(jié)點體積小、功耗低、抗干擾性好,因而特別適用于汽車、工業(yè)控制以及醫(yī)療系統(tǒng)和容錯維護總線中。

1.硬件設(shè)計

1.1 LPC2294的特點

LPC2294是PHILIPS公司推出的一款功能強大的超低功耗的具有ARM7TDMI內(nèi)核的32位微控制器。內(nèi)部嵌入256 KB的高速Flash 存儲器和16KB靜態(tài)RAM。128 位寬度的存儲器接口和獨特的加速結(jié)構(gòu)使32 位代碼能夠在最大時鐘速率(60MHz)下運行。對代碼規(guī)模有嚴(yán)格控制的應(yīng)用可使用16 位Thumb 模式將代碼規(guī)模降低超過30%,而性能的損失卻很小。

由于LPC2294 的144 腳封裝、極低的功耗、兩個個32 位定時器、八通道10 位ADC、四路互連的CAN接口、PWM 通道(六路)以及多達九個外部中斷管腳使它們特別適用于汽車、工業(yè)控制應(yīng)用以及醫(yī)療系統(tǒng)和容錯維護總線。

LPC2294 集成4路CAN 控制器。他們具有如下特性:

★ 單個總線上的數(shù)據(jù)傳輸速率高達1Mb/s

★ 32 位寄存器和RAM訪問

★ 兼容CAN 2.0B, ISO 11898-1標(biāo)準(zhǔn)

★ 全局驗收濾波器可以識別所有CAN 總線的11 位和29 位Rx 標(biāo)識符

★ 驗收濾波器為選擇的標(biāo)準(zhǔn)標(biāo)識符提供了Full CAN-style 自動接收功能

1.2      隔離CAN收發(fā)器CTM1050T

CTM1050T是一款帶隔離的高速CAN收發(fā)器芯片,其主要功能是將CAN控制器的邏輯電平轉(zhuǎn)換為CAN總線的差分電平,并且具有(DC 2500V)隔離功能、ESD保護功能及TVS管防總線過壓功能。CTM1050T具有以下特性:

☆完全符合CAN 2.0和ISO 11898標(biāo)準(zhǔn)的CAN收發(fā)器

☆具有隔離、ESD保護功能及TVS管防總線過壓功能;

☆速率最高達1Mbit/s;

☆隔離電壓:DC 2500V

☆電磁輻射EME極低,電磁抗干擾EMI性極高;

☆無需外加元件可直接使用。

1.3      CAN智能節(jié)點硬件電路設(shè)計

CAN智能節(jié)點硬件電路如圖1所示。

圖1基于LPC2294的CAN總線智能節(jié)點硬件電路

主控制器LPC2294的晶振頻率范圍為1~30MHz。本設(shè)計選晶振頻率為20MHz。內(nèi)部256KB的高速Flash存儲器用于代碼和數(shù)據(jù)的存儲。對于FLASH存儲器,可通過內(nèi)置的串行JTAG接口進行在系統(tǒng)編程(ISP In-System Programming),或進行在應(yīng)用編程(IAP In-Application Programming)。為了便于調(diào)試和系統(tǒng)升級,在設(shè)計中總可以預(yù)留這些接口電路。

LPC2294采用雙電源供電。CPU的供電電壓范圍為1.65~1.95V(1.8±0.15V),I/O供電電壓范圍為3.0~3.6V(3.3±03V)。

隔離CAN總線收發(fā)器CTM1050T是CAN協(xié)議控制器和物理總線之間的接口。在以往的設(shè)計方案中需要高速光耦(6N137)、DC/DC電源隔離模塊、CAN收發(fā)器等其他元件才能實現(xiàn)帶隔離的CAN收發(fā)電路,現(xiàn)在只需利用一片CTM1050T接口芯片就可以實現(xiàn)帶隔離的CAN收發(fā)電路,并且隔離電壓可以達到DC 2500V。

1.4硬件的抗干擾設(shè)計[!--empirenews.page--]

在本設(shè)計所應(yīng)用的場合中,產(chǎn)生電磁信號的設(shè)備較多,包括超短波設(shè)備、音頻設(shè)備、電源等,因此抗干擾設(shè)計顯得尤為重要。主要采取了以下措施:

(1)為了進一步提高CAN總線節(jié)點的抗干擾能力,保證各節(jié)點之間在電氣上是完全隔離和獨立的,我們采用隔離CAN收發(fā)器CTM1050T,取代傳統(tǒng)的光耦與電源隔離模塊,提高性能的同時簡化電路設(shè)計。

(2)在CAN總線的兩端加有兩個120Ω的電阻,這兩個電阻對于總線阻抗的匹配起著相當(dāng)重要的作用。去掉它們會使數(shù)據(jù)通信的抗干擾性及可靠性大大降低,甚至無法通信。

(3)CANH和CANL與地之間并聯(lián)了兩個30pF的小電容,可慮除總線上的高頻干擾并且具有一定的防電磁輻射的能力。

2.軟件設(shè)計

對于一般的32位ARM嵌入式應(yīng)用系統(tǒng),在運行主程序前必須初始化運行環(huán)境,即編寫ARM控制器啟動代碼。該啟動代碼包括異常向量表、堆棧初始化、存儲系統(tǒng)初始化和目標(biāo)板初始化等,一般用匯編語言編寫。

對于該設(shè)計來說,關(guān)鍵的是編寫CAN驅(qū)動程序。主程序只需通過調(diào)用驅(qū)動程序提供的接口來實現(xiàn)數(shù)據(jù)的接受和發(fā)送。驅(qū)動程序包括四部分內(nèi)容:CAN控制器的初始化、接收數(shù)據(jù)、發(fā)送數(shù)據(jù)和總線異常處理。圖2為主程序流程圖。

圖2 主程序流程圖

2.1      CAN控制器的初始化

初始化CAN 控制器的操作包括:硬件使能、設(shè)置管腳連接、軟件復(fù)位、設(shè)置報警界限、設(shè)置總線波特率、設(shè)置中斷工作方式、設(shè)置驗收濾波器工作方式、設(shè)置工作模式并啟動CAN等。需要特別指出的是設(shè)置總線波特率是個難點,所有CAN節(jié)點的波特率都要相同才能正常工作,所以要正確配置VPBDIV和PLL寄存器。在設(shè)置各CAN寄存器之前必須進行軟件復(fù)位,這是因為CAN的某些寄存器必須在軟復(fù)位下讀寫。

值得注意的是,LPC2294為所有的CAN 控制器提供了全局接收標(biāo)識符查詢功能。2KB的接收過濾用RAM可容納1024個標(biāo)準(zhǔn)標(biāo)識符或者512個擴展標(biāo)識符或兩種類型混合的標(biāo)識符。通過軟件處理,可在該RAM中設(shè)置存放1~5個標(biāo)識符表格,它能更容易的對任意復(fù)雜的ID進行篩選過濾,滿足復(fù)雜的ID的接受過濾要求。大大減少了系統(tǒng)軟件設(shè)計復(fù)雜度及運行時的負(fù)擔(dān)。設(shè)置驗收濾波器工作方式,必須首先創(chuàng)建LUT表格,指定每個表格的起始地址,并用實際的ID地址初始化該表格。最后設(shè)定驗收濾波器模式寄存器。若該節(jié)點不主動發(fā)送數(shù)據(jù),可選擇在總線不活動時進入睡眠模式。

2.2 數(shù)據(jù)發(fā)送

    將待發(fā)送的數(shù)據(jù)打包成符合CAN 協(xié)議的幀格式后,便可寫入發(fā)送緩存區(qū),并啟動發(fā)送。在寫發(fā)送緩存區(qū)前必須查詢其狀態(tài)。LPC2294中的CAN控制器為了提高大量數(shù)據(jù)發(fā)送的效率,每個CAN控制器都有三個獨立的發(fā)送緩沖區(qū),它們的狀態(tài)可以通過查詢CANSR得知。只有當(dāng)其中有空閑的發(fā)送緩沖區(qū)時才可將數(shù)據(jù)寫入。在發(fā)送大量數(shù)據(jù)數(shù),這一步顯得尤為重要,否則發(fā)送可靠性將不能保證。啟動發(fā)送成功后,只能通過查詢CANGSR的TCS位或配合發(fā)送成功中斷來判斷數(shù)據(jù)是否發(fā)送成功。

2.3 數(shù)據(jù)接收

接收數(shù)據(jù)可采用查詢方式或中斷方式。在某一段時間內(nèi),CAN總線并不總是在活動,為了提高效率,可采用中斷方式。在初始化程序中必須使能接收中斷。在中斷服務(wù)子程序中,讀取CANICR,判斷是否有接收中斷標(biāo)志,有則讀取接收緩沖區(qū)數(shù)據(jù)。

2.4 異常情況處理

在總線發(fā)生嚴(yán)重故障的情況下,CAN節(jié)點有可能脫離總線,此時以下寄存器位被置位:CANSR的BS位、CANIR的BEI位和EI位(如果使能)和CANMOD的RM位。RM將許多CAN控制器功能復(fù)位和禁止。軟件下一步必須置零RM位。發(fā)送錯誤計數(shù)器將遞減計數(shù)總線釋放條件(11個連續(xù)的隱性位)的第128個事件。軟件可通過讀取Tx錯誤計數(shù)器對計數(shù)器遞減計數(shù)的情況進行監(jiān)測。

一些不是很嚴(yán)重的錯誤一般不會引起總線錯誤,即使不處理也不會產(chǎn)生什么致命錯誤,為了提高中斷處理速度,可以根據(jù)實際情況裁減中斷服務(wù)程序。

3結(jié)束語

由于該方案體積小、功耗低、抗干擾性好,現(xiàn)已應(yīng)用于電磁環(huán)境復(fù)雜的某裝甲車通信設(shè)備中,滿足了該項目對CAN網(wǎng)絡(luò)節(jié)點的要求。此外該設(shè)計作為CAN總線節(jié)點的一個模塊,能夠和儀器儀表等設(shè)備相結(jié)合,使其具有網(wǎng)絡(luò)通信的能力,有著廣闊的應(yīng)用前景。

 

本文作者創(chuàng)新點:隔離CAN收發(fā)器CTM1050T的使用取代了在以往的設(shè)計方案中需要高速光耦(6N137)、DC/DC電源隔離模塊、CAN收發(fā)器等分立元件才能實現(xiàn)的帶隔離的CAN收發(fā)電路,現(xiàn)在只需利用一片CTM1050T接口芯片就可以實現(xiàn)帶隔離的CAN收發(fā)電路,并且隔離電壓可以達到DC 2500V。在簡化硬件電路開銷的同時提高了系統(tǒng)的抗干擾性能。

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

汽車電子系統(tǒng)架構(gòu)發(fā)生了顛覆性變化。它已經(jīng)持續(xù)了近十年,現(xiàn)在正在加快速度。這主要發(fā)生在 BEV 初創(chuàng)公司中,因為它們沒有歷史限制或根深蒂固的喜愛設(shè)計,并且可以從電子架構(gòu)的零基礎(chǔ)開始。

關(guān)鍵字: CAN總線 電動汽車

在電子產(chǎn)品的設(shè)計中,電磁兼容EMC性能對系統(tǒng)的影響非常大,關(guān)系到其能正常穩(wěn)定運轉(zhuǎn)。世界上已經(jīng)開始對電子產(chǎn)品的電磁兼容性做強制性限制,電磁兼容性能已經(jīng)成為產(chǎn)品性能的一個重要指標(biāo)。 電磁兼容主要有兩方面的內(nèi)容,一個是產(chǎn)...

關(guān)鍵字: CAN總線 電磁兼容EMC

CAN 是Controller Area Network 的縮寫(以下稱為CAN),是ISO國際標(biāo)準(zhǔn)化的串行通信協(xié)議。在汽車產(chǎn)業(yè)中,出于對安全性、舒適性、方便性、低功耗、低成本的要求,各種各樣的電子控制系統(tǒng)被開發(fā)了出來。...

關(guān)鍵字: CAN總線 CAN 抗噪

CAN總線首先在汽車上得到了廣泛應(yīng)用,之后又在工業(yè)生產(chǎn)領(lǐng)域有了很大發(fā)展,那么面對不同的應(yīng)用場景和工況,如何選擇合適的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)慢慢成為一個讓人頭疼的問題。在這篇文章中,我將重點介紹用于驅(qū)動這些總線電壓的 CAN 驅(qū)動器...

關(guān)鍵字: CAN總線 CAN總線拓?fù)?/a>

在進行CAN總線通信前,應(yīng)保證正確的總線配置,比如終端電阻。它是影響總線通信的重要組件,下面我們不考慮信號的完整性,只從信號幅度和時間常數(shù)方面分析不加終端電阻時的影響。??終端電阻添加要求根據(jù)ISO11898-2對終端電...

關(guān)鍵字: 電阻 終端 CAN總線 電平

大家好,我是小麥。最近在調(diào)試一個CAN總線的設(shè)備遇到一些問題,簡單總結(jié)一下。本文會對CAN總線進行簡單介紹,CAN的硬件鏈路層,協(xié)議層,以及調(diào)試的一些心得。目錄什么是CAN總線?物理層差分信號連接方式CAN節(jié)點CAN協(xié)議...

關(guān)鍵字: CAN總線

大家好,我是小麥。最近在調(diào)試一個CAN總線的設(shè)備時遇到了一些問題,在此簡單總結(jié)一下。本文將對CAN總線進行簡單介紹,包括CAN的硬件鏈路層、協(xié)議層,以及調(diào)試的一些心得。目錄什么是CAN總線?物理層差分信號連接方式CAN節(jié)...

關(guān)鍵字: CAN總線

摘要:介紹了基于STC12C5A60S2單片機、SJA1000型CAN接口控制器以及PCA82C250串行收發(fā)器構(gòu)成的總線通信網(wǎng)絡(luò)。該網(wǎng)絡(luò)中遠端的CAN節(jié)點可監(jiān)測現(xiàn)場環(huán)境,并實現(xiàn)數(shù)據(jù)收發(fā)和串行通信,上位PC機利用VB6....

關(guān)鍵字: 單片機 CAN總線 VB6.0 環(huán)境參數(shù)

關(guān)注、星標(biāo)公眾號,直達精彩內(nèi)容來源:整理與網(wǎng)絡(luò)素材最近在搞一個can協(xié)議,本文爭對一些can底層細節(jié)很到位,分享一下。1.簡介CAN總線由德國BOSCH公司開發(fā),最高速率可達到1Mbps。CAN的容錯能力特別強,CAN控...

關(guān)鍵字: CAN總線

關(guān)注、星標(biāo)公眾號,直達精彩內(nèi)容來源:周立功嵌入式的工程師一般都知道CAN總線廣泛應(yīng)用到汽車中,其實船艦電子設(shè)備通信也廣泛使用CAN,隨著國家對海防的越來越重視,對CAN的需求也會越來越大。這個暑假,通過參加蘇州社會實踐,...

關(guān)鍵字: 嵌入式 CAN總線

嵌入式教程

6897 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉