《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于ARM處理器的CAN節(jié)點(diǎn)設(shè)計(jì)
基于ARM處理器的CAN節(jié)點(diǎn)設(shè)計(jì)
摘要: 目前越來越多的ARM處理器內(nèi)部自帶了CAN控制器,極大的方便了開發(fā)人員對CAN總線的開發(fā)。本課題是基于ARM2104的微處理器CAN總線系統(tǒng)節(jié)點(diǎn)開發(fā),采用CAN總線可以將節(jié)點(diǎn)控制器直接安裝在現(xiàn)場,數(shù)據(jù)經(jīng)處理后發(fā)送到總線上,實(shí)現(xiàn)了信息的全數(shù)字方式傳輸,提高了傳輸?shù)目垢蓴_能力,增加了信息的傳輸量。
Abstract:
Key words :

 引言

隨著信息技術(shù)的飛速發(fā)展,基于ARM在嵌入式系統(tǒng)方面的優(yōu)勢和CAN總線的廣泛應(yīng)用,目前越來越多的ARM處理器內(nèi)部自帶了CAN控制器,極大的方便了開發(fā)人員對CAN總線的開發(fā)。本課題是基于ARM2104的微處理器CAN總線系統(tǒng)節(jié)點(diǎn)開發(fā),采用CAN總線可以將節(jié)點(diǎn)控制器直接安裝在現(xiàn)場,數(shù)據(jù)經(jīng)處理后發(fā)送到總線上,實(shí)現(xiàn)了信息的全數(shù)字方式傳輸,提高了傳輸?shù)目垢蓴_能力,增加了信息的傳輸量。

總體設(shè)計(jì)方案

本課題中所設(shè)計(jì)的是CAN總線系統(tǒng)節(jié)點(diǎn),系統(tǒng)節(jié)點(diǎn)結(jié)構(gòu)圖如圖1。


圖1 系統(tǒng)節(jié)點(diǎn)結(jié)構(gòu)圖

CAN總線系統(tǒng)應(yīng)用要求:CAN總線接口的擴(kuò)展、點(diǎn)對點(diǎn)通信。

CAN節(jié)點(diǎn)的設(shè)計(jì)主要是CAN通信控制器與微處理器之間、CAN總線收發(fā)器與物理總線之間的電路的設(shè)計(jì)。微控制器主要負(fù)責(zé)CAN控制器的初始化,進(jìn)行與CAN控制器的數(shù)據(jù)傳遞,并按照預(yù)定的程序進(jìn)行處理;CAN的通信協(xié)議主要由CAN控制器完成,CAN控制器主要負(fù)責(zé)將數(shù)據(jù)以CAN報(bào)文的形式傳遞,并進(jìn)行系統(tǒng)的診斷、測試以及處理CAN總線上的錯(cuò)誤等;而CAN總線收發(fā)器是CAN控制器和CAN總線之間的接口,完成物理電平的轉(zhuǎn)換,功能是增大通信距離,提高系統(tǒng)的瞬間抗干擾能力,保護(hù)總線,降低射頻干擾(RFI)。

通常一個(gè)完整的CAN節(jié)點(diǎn)應(yīng)該包括三個(gè)部分:微控制器、CAN控制器、CAN收發(fā)器。目前廣泛流行的CAN總線器件有兩大類:一類是獨(dú)立的CAN控器,另一類是帶有在片CAN的微控制器。

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

對于CAN節(jié)點(diǎn)硬件電路的的各接口電路的設(shè)計(jì)有:CAN接口電路、CPU模塊、外圍電路(復(fù)位電路和JATG接口電路)。其中CPU及電源電路如下圖2所示:


圖2 CPU及電源模塊

LPC2104要使用兩組電源,I/O供電電源為3.3V應(yīng)用系統(tǒng)。首先,電源DW1將電源整流,經(jīng)過C1、C3濾波,然后通過78M05將電源穩(wěn)壓至5V,再使用LDO芯片(低差壓電源芯片)穩(wěn)壓輸出3.3V及1.8V電壓。LD0芯片采用S-1131B33UC和S-1131B18UC,其特點(diǎn)為輸出電流大、精度高、穩(wěn)定性高、功耗低。

設(shè)計(jì)中的CPU芯片與控制器SJA1000的配腳圖如圖3所示。


圖3 模擬總線硬件圖

CAN節(jié)點(diǎn)的軟件設(shè)計(jì)

CAN節(jié)點(diǎn)的軟件設(shè)計(jì)主要包括ARM處理器的編程和SJA1000驅(qū)動(dòng)程序的設(shè)計(jì)。在硬件電路確定以后,系統(tǒng)控制的主要功能將依賴于軟件來實(shí)現(xiàn)。系統(tǒng)能否正常可靠的工作,除了硬件的合理設(shè)計(jì)以外,與功能完善的軟件設(shè)計(jì)是分不開的。

軟件程序流程圖如下圖4所示:


圖4 主程序流程圖

配置軟件包使用的GPIO必須在文件config.h中進(jìn)行,其程序清單如列表1所示,其中程序清單(1)設(shè)置地址總線的寬度,只能為8、16、和24三個(gè)值之一。清單(2)設(shè)置信號(hào)AD0對應(yīng)GPIO,其中0對應(yīng)P0.0,1對應(yīng)P0.1,以此類推。地址/數(shù)據(jù)總線的其它信號(hào)以這個(gè)信號(hào)為基準(zhǔn),順序定義。清單(3)信號(hào)ALE對應(yīng)GPIO,其中0對應(yīng)P0.0,1對應(yīng)P0.1,以此類推。清單(4)信號(hào)WR對應(yīng)GPIO,其中0對應(yīng)P0.0,1對應(yīng)P0.1,以此類推。

程序清單列表1 配置總線使用的GPIO

#define ADDR_N_BIT 16 (1)

#define AD0_PIN_NUM 8 (2)

#define ALE_PIN_NUM 0 (3)

#define WR_PIN_NUM 1 (4)

#define RD_PIN_NUM 4 (5)

#include“exbus.h” (6)

本系統(tǒng)CAN控制器采用SJA1000,SJA1000控制器在微控制器正常通訊前,都必須先在相應(yīng)地址寄存器中加載,確定接收標(biāo)識(shí)碼、總線接收波特率以及輸出控制等,這就是CAN控制器的初始化。系統(tǒng)所用的CAN總線控制器SJA1000和CAN2.0A以及CAN2.0B兩個(gè)版本的協(xié)議同時(shí)兼容。本系統(tǒng)設(shè)計(jì)以CAN2.0A的Basic CAN為協(xié)議標(biāo)準(zhǔn)進(jìn)行設(shè)計(jì)。

測試之前編寫的程序前首先要確定SJA1000的片選地址,確定與其他外部存儲(chǔ)器無沖突。其次,微處理器對SJA1000的控制訪問是以外部存儲(chǔ)器的方式,來訪問SJA1000的內(nèi)部寄存器,所以應(yīng)該正確定義微處理器訪問SJA1000時(shí),SJA1000內(nèi)部寄存器的訪問地址。

整個(gè)流程進(jìn)行測試之后,SJA1000有8個(gè)不同的中斷,這些中斷可使主控制器立即作用在CAN控制器的某些狀態(tài)上。一旦CAN產(chǎn)生中斷,SJA1000就將中斷輸出(管腳16)設(shè)為低電平,直到主控制器通過讀SJA1000的中斷寄存器對中斷采取相應(yīng)措施,在主控制器響應(yīng)后中斷,或接收INFO里有更多有效數(shù)據(jù),SJA1000立刻將中斷輸出再次設(shè)為低電平。采用中斷接收的方式來接收數(shù)據(jù),LPC2104的P0.16設(shè)置為外部中斷INT,整個(gè)數(shù)據(jù)接收模塊由數(shù)據(jù)接收函數(shù)void ReceiveData(uint8 *Rt)、中斷處理函數(shù)CANException(void)構(gòu)成。當(dāng)SJA1000接收到CAN總線數(shù)據(jù),通過接收中斷使得LPC2104產(chǎn)生外部中斷INT而使其進(jìn)入中斷處理函數(shù),進(jìn)而對接收到的數(shù)據(jù)進(jìn)行處理。

可想,在CAN節(jié)點(diǎn)的軟件設(shè)計(jì)的整個(gè)流程中,當(dāng)硬件電路確定以后,系統(tǒng)控制的主要功能將依賴于軟件來實(shí)現(xiàn),并且能夠正常可靠的工作。

結(jié)論

以ARM芯片作為主控制器,CAN總線作為數(shù)據(jù)傳輸方式來進(jìn)行通訊的嵌入式系統(tǒng)得到了越來越廣泛的應(yīng)用。同時(shí)CAN通訊的可靠性也成為影響系統(tǒng)性能的關(guān)鍵部分之一。

本文以LPC2104為例,給出了一類微處理器與CAN控制器SJA1000之間的較為通用的硬件連接方法,對CAN總線節(jié)點(diǎn)進(jìn)行了可靠性設(shè)計(jì),采用CAN總線可以將節(jié)點(diǎn)控制器直接安裝在現(xiàn)場,數(shù)據(jù)經(jīng)處理后發(fā)送到總線上,實(shí)現(xiàn)了信息的全數(shù)字方式傳輸,提高了傳輸?shù)目垢蓴_能力,增加了信息的傳輸量。

該設(shè)計(jì)現(xiàn)已在工廠車間中的車身控制系統(tǒng)中得到了應(yīng)用,且運(yùn)行可靠。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美国产免费| 国产精品扒开腿爽爽爽视频| 一区二区三区四区在线| 亚洲国产精品一区二区www| 欧美亚洲一区二区三区| 亚洲一二三四区| 亚洲少妇一区| 在线亚洲成人| 亚洲视频播放| 亚洲一区二区成人在线观看| 一区二区三区精密机械公司 | 午夜精品免费视频| 亚洲在线视频免费观看| 亚洲一区二区黄| 亚洲一区视频在线观看视频| 亚洲综合精品一区二区| 亚洲欧美激情精品一区二区| 性视频1819p久久| 欧美在线观看视频一区二区| 久久国产高清| 久久尤物视频| 鲁鲁狠狠狠7777一区二区| 蜜桃精品久久久久久久免费影院| 久久中文欧美| 欧美激情精品久久久久| 欧美日韩视频专区在线播放| 欧美日韩亚洲一区三区 | 欧美插天视频在线播放| 欧美成人亚洲| 欧美日韩日日骚| 国产精品拍天天在线| 国产欧美日韩免费| 国产亚洲综合精品| 在线观看中文字幕不卡| 亚洲人午夜精品| 亚洲午夜激情网站| 欧美在线视频一区| 亚洲欧洲在线免费| 亚洲天堂网在线观看| 欧美一区二区视频观看视频| 久久婷婷蜜乳一本欲蜜臀| 欧美成人午夜激情视频| 国产精品国产a| 国产一区二区三区高清在线观看| 伊人成年综合电影网| 亚洲精品在线观| 亚洲欧美一区二区精品久久久| 久久精品成人一区二区三区| 99精品欧美一区二区三区| 亚洲欧美日韩一区在线| 久久久久国产精品一区| 欧美精品福利| 国产欧美视频一区二区| 1769国内精品视频在线播放| 夜夜精品视频一区二区| 欧美在线黄色| 99视频日韩| 欧美综合国产| 欧美极品一区二区三区| 国产日韩精品一区二区| 在线观看一区二区精品视频| 亚洲视频在线一区观看| 久久精品一区二区三区不卡牛牛| 亚洲精品婷婷| 午夜精品一区二区三区四区| 欧美大成色www永久网站婷| 国产精品第三页| 亚洲风情亚aⅴ在线发布| 亚洲网站在线观看| 久久不见久久见免费视频1| 一区二区三区三区在线| 久久不射中文字幕| 欧美日韩免费一区二区三区| 国产综合18久久久久久| 99精品欧美一区| 久久精品视频导航| 亚洲专区在线| 欧美成人精品激情在线观看| 国产精品免费小视频| 亚洲人成毛片在线播放| 欧美在线视频在线播放完整版免费观看| 日韩午夜在线视频| 久久久亚洲一区| 国产精品乱码人人做人人爱 | 亚洲国产精品成人一区二区| 午夜久久黄色| 一区二区精品国产| 久久中文在线| 国产视频久久| 亚洲色图在线视频| 亚洲精品日本| 久久免费视频一区| 国产精品亚洲精品| 亚洲视频欧美视频| 99精品欧美一区| 免费影视亚洲| 久久国产欧美日韩精品| 欧美日韩第一区| 樱桃国产成人精品视频| 午夜精品在线看| 亚洲欧美激情视频| 欧美三级免费| 亚洲日本电影在线| 亚洲欧洲一区| 美女免费视频一区| 国产真实乱偷精品视频免| 亚洲一区二区三区中文字幕| 一区二区免费在线视频| 欧美高清视频一区| 亚洲二区精品| 亚洲区国产区| 欧美不卡视频一区发布| 国产一区二区三区观看| 欧美亚洲视频一区二区| 欧美一区二区日韩| 国产精品午夜av在线| 亚洲无限乱码一二三四麻| 亚洲午夜精品久久久久久app| 欧美精品一区二区高清在线观看| 亚洲国产精品第一区二区三区 | 久久精品国产99| 国产无一区二区| 午夜精品在线| 久久精品亚洲热| 国产日韩在线不卡| 欧美一区二区三区四区夜夜大片 | 国产一区二区中文字幕免费看| 午夜精品视频在线| 欧美在线短视频| 国产精品一区二区在线观看网站| 99国产精品视频免费观看一公开| 夜夜爽av福利精品导航| 欧美日韩 国产精品| 99在线精品视频| 亚洲一区精品电影| 欧美特黄一级| 亚洲在线中文字幕| 欧美综合激情网| 国产综合视频| 亚洲区一区二区三区| 欧美麻豆久久久久久中文| 91久久国产精品91久久性色| 亚洲电影免费观看高清| 一本色道久久综合亚洲精品婷婷| 欧美电影电视剧在线观看| 亚洲韩国日本中文字幕| 艳妇臀荡乳欲伦亚洲一区| 欧美午夜精品久久久久免费视| 一区二区三区免费网站| 欧美亚洲一区二区三区| 国产欧美精品国产国产专区| 久久成人精品一区二区三区| 欧美~级网站不卡| 亚洲精品字幕| 欧美亚洲一级| 在线播放不卡| 宅男精品导航| 国产日韩欧美三区| 亚洲国产一区二区三区高清 | 国产精品女人久久久久久| 午夜久久资源| 另类欧美日韩国产在线| 亚洲美洲欧洲综合国产一区| 欧美一区二区高清在线观看| 尤妮丝一区二区裸体视频| 亚洲毛片在线| 国产精品久在线观看| 亚洲高清视频一区| 欧美日韩精品一区二区三区四区| 亚洲一区在线观看视频| 久久综合色8888| 一区二区三区**美女毛片| 久久久999精品| 亚洲精品三级| 久久xxxx| 99国产精品私拍| 久久青草久久| 一本色道久久综合一区| 久久久国产一区二区三区| 亚洲精品综合精品自拍| 久久久国产一区二区| 洋洋av久久久久久久一区| 久久青草欧美一区二区三区| 日韩亚洲精品电影| 毛片一区二区三区| 亚洲一区二区三区精品动漫| 欧美成黄导航| 欧美一级播放| 欧美三级电影大全| 最新中文字幕一区二区三区| 国产精品视频福利| 一本色道久久综合狠狠躁篇的优点 | 久久精品国产精品亚洲精品| 亚洲久久一区二区| 久久久久在线观看| 国产精品99久久久久久人| 欧美国产精品日韩| 久久国产视频网| 国产精品久久久一区二区三区| 亚洲精品日韩久久|