《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 基于LPC2292的CAN總線智能節(jié)點(diǎn)設(shè)計(jì)
基于LPC2292的CAN總線智能節(jié)點(diǎn)設(shè)計(jì)
摘要: 本文給出了一種基于本身已經(jīng)嵌入了CAN控制器的單片機(jī)LPC2292的CAN總線智能節(jié)點(diǎn)的設(shè)計(jì)方案。
Abstract:
Key words :

引言

CAN(Controller Area Network)總線控制器局域網(wǎng)絡(luò)是在1986年2月的SAE大會(huì)上,由RoberBosch公司首先提出的。CAN總線是一種串行通信協(xié)議,它能有效支持高安全等級的分布式實(shí)時(shí)控制,其最初的目的是用在汽車上。但由于采用了許多新技術(shù)及獨(dú)特的設(shè)計(jì),CAN總線與一般的通信總線相比,它的數(shù)據(jù)通信具有突出的可靠性、實(shí)時(shí)性和靈活性,目前的應(yīng)用范圍已不局限于汽車行業(yè),而是擴(kuò)展到了機(jī)械工業(yè)、紡織機(jī)械、農(nóng)用機(jī)械、機(jī)器人、數(shù)控機(jī)床、醫(yī)療器械、家用電器及傳感器等諸多領(lǐng)域。CAN節(jié)點(diǎn)的設(shè)計(jì)多采用單片機(jī),為此,本文給出了一種基于本身已經(jīng)嵌入了CAN控制器的單片機(jī)LPC2292的CAN總線智能節(jié)點(diǎn)的設(shè)計(jì)方案。

1 LPC2292控制器

LPC2292是一個(gè)可以支持實(shí)時(shí)仿真和跟蹤的16/32位ARM7TDMI-S CPU微控制器,它帶有256K字節(jié)的嵌人式高速Flash存儲(chǔ)器,并具有的128位寬度的存儲(chǔ)器接口和獨(dú)特的加速結(jié)構(gòu),可使32位代碼在最大時(shí)鐘速率下運(yùn)行。而對代碼有嚴(yán)格控制要求的應(yīng)用則可使用16位Thumb模式,這樣可將代碼規(guī)模降低30%以上,而性能的損失卻很小。LPC2292采用144腳封裝、可使用的GPIO高達(dá)76(使用外部存儲(chǔ)器)~112個(gè)(單片應(yīng)用)、并具有極低的功耗。LPC2292內(nèi)含多個(gè)32位定時(shí)器、4路10位ADC、2路CAN以及多達(dá)9路外部中斷等,特別適用于汽車、工業(yè)控制應(yīng)用、醫(yī)療系統(tǒng)和容錯(cuò)維護(hù)總線。

LPC2292內(nèi)部集成的2路CAN控制器符合CAN規(guī)范2.0B ISO 11898-1;可訪問32位的寄存器和RAM;每個(gè)總線的數(shù)據(jù)速率為1 MB/s;全局驗(yàn)收濾波器可識別所有總線的11位和29位Rx標(biāo)識符;驗(yàn)收濾波器為選擇的標(biāo)準(zhǔn)標(biāo)識符提供有FullCAN-style自動(dòng)接收功能。

2 節(jié)點(diǎn)硬件電路設(shè)計(jì)

CAN總線的節(jié)點(diǎn)硬件主要包括LPC2292、CAT1024、82C250、6N137以及B0505S。其中,LPC2292是節(jié)點(diǎn)的微處理器及CAN通信控制器,CAN總線驅(qū)動(dòng)器采用82C250。為了增強(qiáng)CAN總線節(jié)點(diǎn)的抗干擾能力,在TD1、RD1與82C250之間應(yīng)通過高速光耦6N137相連,這樣可以很好的實(shí)現(xiàn)總線上各CAN節(jié)點(diǎn)間的電氣隔離。要注意的是:光耦電路部分采用的兩個(gè)電源VCC和VDD必須完全隔離。這里的B0505S就起這個(gè)作用。另外,節(jié)點(diǎn)復(fù)位電路采用CAT1024來提高其可靠性。圖1所示是CAN總線的節(jié)點(diǎn)硬件電路。
 

3 軟件設(shè)計(jì)

該系統(tǒng)的軟件調(diào)試可在ADS1.2調(diào)試環(huán)境及EasyJTAG仿真器上進(jìn)行。

和硬件電路設(shè)計(jì)相比,軟件的設(shè)計(jì)相對來說要復(fù)雜些。CAN總線智能節(jié)點(diǎn)的軟件設(shè)計(jì)主要包括三部分:CAN節(jié)點(diǎn)初始化、報(bào)文發(fā)送和報(bào)文接收。除此之外,還必須編寫LPC2292的啟動(dòng)代碼,即對系統(tǒng)進(jìn)行初始化。

3.1 LPC2292的啟動(dòng)代碼

啟動(dòng)代碼包括異常中斷向量表、堆棧初始化、目標(biāo)板初始化及存儲(chǔ)系統(tǒng)初始化等,一般都用匯編語言編寫。這里不作詳細(xì)介紹。

3.2 CAN控制器初始化

 

CAN總線控制器的初始化過程主要包括相應(yīng)的引腳功能設(shè)置、工作方式設(shè)置、波特率參數(shù)設(shè)置以及出錯(cuò)警告界限設(shè)置等,下面是對CAN1的初始化代碼(CAN2與之類似):


上面所述是對CAN控制器初始化的主要步驟,另外,還可以根據(jù)具體情況對其它CAN寄存器的值進(jìn)行設(shè)置。

LPC2292中有個(gè)全局驗(yàn)收濾波器,該模塊可為所有CAN控制器提供接收標(biāo)識符的查詢功能(即驗(yàn)收濾波)。另外,驗(yàn)收濾波器還可為選擇的標(biāo)準(zhǔn)標(biāo)識符提供fullCAN-style自動(dòng)接收功能。在上面對CAN控制器的初始化中,為了簡化程序,設(shè)計(jì)時(shí)將驗(yàn)收濾波器設(shè)置為旁路。但在實(shí)際應(yīng)用中,應(yīng)根據(jù)需要對它進(jìn)行設(shè)置。事實(shí)上,讓它參與接收濾波的工作有助于改善節(jié)點(diǎn)接收信息的選擇性。CAN控制器初始化完成后,即可開始發(fā)送和接收信息。

3.3 發(fā)送過程

發(fā)送子程序主要負(fù)責(zé)節(jié)點(diǎn)報(bào)文的發(fā)送。發(fā)送時(shí),用戶只需要將待發(fā)送的數(shù)據(jù)按特定的格式組合成一幀報(bào)文送入CAN控制器的發(fā)送緩存區(qū),然后啟動(dòng)發(fā)送即可。當(dāng)然,在向發(fā)送緩沖區(qū)送報(bào)文之前,必須先做一些判斷。發(fā)送程序分為發(fā)送遠(yuǎn)程幀和數(shù)據(jù)幀兩種,其中遠(yuǎn)程幀無數(shù)據(jù)場。圖2是發(fā)送過程流程圖。
 

3.4 接收過程

接收子程序主要負(fù)責(zé)節(jié)點(diǎn)報(bào)文的接收以及其它情況的處理。接收子程序相對要復(fù)雜一些。因?yàn)樵谔幚斫邮請?bào)文的過程中,同時(shí)也要對總線關(guān)閉、錯(cuò)誤報(bào)警、接收溢出等情況進(jìn)行處理。CAN控制器報(bào)文的接收主要有兩種方式:中斷接收方式和查詢接收方式。如果對通信的實(shí)時(shí)性要求不是很強(qiáng),建議采用查詢接收方式。兩種接收方式的編程思想基本相同。圖3給出了用查詢方式接收報(bào)文的流程圖。
 

4 結(jié)束語

該智能節(jié)點(diǎn)可利用EasyJTAG仿真器進(jìn)行調(diào)試仿真,并可在實(shí)驗(yàn)環(huán)境下完成通訊功能。該方法與51系列單片機(jī)相比,其通信速度較高。因此,在此基礎(chǔ)上構(gòu)建CAN控制系統(tǒng)具有實(shí)際意義,但對于不同系統(tǒng),其軟件和硬件需要作相應(yīng)的改動(dòng)。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲国产精品久久久久婷婷884| 亚洲欧美一区二区三区久久| 亚洲色图综合久久| 亚洲高清色综合| 激情欧美日韩| 韩日精品在线| 激情视频一区| 精品福利免费观看| 尤物99国产成人精品视频| 国际精品欧美精品| 国产综合av| 精品不卡在线| 亚洲福利视频在线| 亚洲欧洲中文日韩久久av乱码| 在线看国产日韩| 亚洲国产欧美一区| 日韩天堂在线观看| 一本色道久久精品| 亚洲一区二区三区四区在线观看| 中文亚洲免费| 亚洲欧美一区二区三区久久| 午夜精品久久久久久久| 欧美亚洲自偷自偷| 久久精品盗摄| 亚洲人成毛片在线播放| 亚洲精选成人| 亚洲一二三区在线观看| 性做久久久久久| 久久久亚洲午夜电影| 开心色5月久久精品| 欧美精品黄色| 国产精品v欧美精品v日韩精品| 国产精品日韩精品欧美在线| 国产乱肥老妇国产一区二| 国产欧美一区二区三区在线老狼 | 蜜桃av一区| 欧美精品一二三| 欧美午夜视频在线观看| 国产欧美精品一区| 一区在线观看| 亚洲最新视频在线| 欧美伊人影院| 99视频一区二区三区| 亚洲欧美韩国| 免费的成人av| 国产精品久久久久久亚洲毛片| 国产亚洲精品久久久久婷婷瑜伽 | 亚洲欧美中日韩| 91久久精品国产91久久性色| 日韩一级网站| 欧美一区亚洲二区| 欧美91视频| 国产精品久久久久久户外露出| 国产亚洲精品综合一区91| 最新成人在线| 亚洲欧美中文日韩在线| 亚洲另类在线一区| 欧美亚洲综合久久| 欧美国产极速在线| 国产精品网站在线| 最新中文字幕一区二区三区| 亚洲自拍偷拍一区| 亚洲人成绝费网站色www| 亚洲综合第一| 欧美大色视频| 国产伦精品一区二区三区高清版| 伊人成人开心激情综合网| 一区二区三区国产精品| 亚洲风情亚aⅴ在线发布| 亚洲特黄一级片| 女生裸体视频一区二区三区| 国产精品老牛| 亚洲精品黄色| 久久成人精品电影| 亚洲一区二区在线视频| 欧美chengren| 国产日韩一区| 亚洲午夜一区| 一区二区三区视频在线播放| 久色成人在线| 国产手机视频一区二区| 在线亚洲精品福利网址导航| 亚洲人成77777在线观看网| 欧美一区二区三区免费观看视频| 欧美激情精品久久久久久免费印度| 国产欧美一区二区三区在线老狼| 日韩视频三区| 亚洲精品影视在线观看| 久久天堂av综合合色| 国产美女精品视频| 一区二区三区日韩精品| 亚洲精一区二区三区| 久久人人爽爽爽人久久久| 国产精品自在在线| 亚洲视频一区二区在线观看| 亚洲免费激情| 欧美电影在线观看| 国产中文一区二区| 午夜精品免费在线| 欧美亚洲一区三区| 国产精品jizz在线观看美国| 亚洲日本精品国产第一区| 亚洲国产精品久久久久秋霞影院 | 红桃视频一区| 午夜一区二区三区不卡视频| 亚洲午夜在线视频| 欧美日韩理论| 亚洲免费黄色| 一区二区三区产品免费精品久久75 | 在线亚洲观看| 一本一本久久a久久精品综合麻豆| 欧美成人r级一区二区三区| 黑人操亚洲美女惩罚| 久久国产黑丝| 久久精品夜色噜噜亚洲a∨ | 亚洲香蕉视频| 欧美新色视频| 亚洲一区二区视频| 亚洲欧美日韩一区二区在线| 欧美午夜无遮挡| 一本色道婷婷久久欧美| 亚洲一区免费| 国产精品视频大全| 亚洲免费在线观看| 久久精品国产精品亚洲| 国产一区二区三区久久悠悠色av | 亚洲日韩欧美视频一区| 欧美大片免费观看| 亚洲黄色精品| 一本色道久久| 欧美视频中文字幕在线| 一二美女精品欧洲| 亚洲欧美成人一区二区在线电影| 国产精品毛片在线看| 香蕉av福利精品导航| 久久久久久婷| 亚洲第一区色| 中国亚洲黄色| 国产精品久久久久久久久免费桃花| 亚洲深夜福利视频| 欧美在线免费播放| 黄色成人在线网站| 亚洲激情一区二区三区| 欧美精品三级在线观看| 一区二区三区回区在观看免费视频| 午夜精品久久久久久久99热浪潮 | 韩日精品视频一区| 亚洲久久成人| 国产精品成av人在线视午夜片| 亚洲亚洲精品三区日韩精品在线视频| 午夜精品在线看| 韩国自拍一区| 一本久久综合亚洲鲁鲁五月天| 国产精品高潮呻吟久久av无限| 午夜视频在线观看一区| 美国十次成人| 99这里只有精品| 久久久999精品视频| 亚洲黄色毛片| 性刺激综合网| ●精品国产综合乱码久久久久| 亚洲午夜高清视频| 国产伪娘ts一区| 亚洲乱码国产乱码精品精98午夜| 欧美视频在线不卡| 久久www成人_看片免费不卡| 欧美福利视频网站| 亚洲综合视频网| 欧美成人蜜桃| 亚洲私拍自拍| 欧美成人午夜| 亚洲欧美日韩在线| 欧美顶级艳妇交换群宴| 亚洲影视综合| 欧美国产高潮xxxx1819| 亚洲欧美日韩一区在线| 欧美激情a∨在线视频播放| 亚洲欧美色一区| 欧美另类一区二区三区| 欧美一区三区三区高中清蜜桃| 欧美日韩国产成人精品| 久久国产精品免费一区| 国产精品成人播放| 亚洲日本免费电影| 国产深夜精品福利| 亚洲午夜国产成人av电影男同| 好看的日韩视频| 亚洲欧美日韩久久精品| 亚洲国产精品美女| 久久国产精品第一页| 99亚洲一区二区| 久久综合福利| 亚洲在线视频观看| 欧美日韩国产成人| 亚洲国产一区二区三区高清| 欧美午夜宅男影院| 99精品视频免费观看| 激情成人综合网| 欧美呦呦网站| 亚洲视频一区在线|