《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于ARM7的CAN-USB轉換器設計
基于ARM7的CAN-USB轉換器設計
電子產品世界
柳沁
摘要: CAN通信協議是一種用于汽車內部測量與執行部件之間的數據通信協議。而USB具有即插即用的優點,并且有較高的通信速率,對于實現上位機和下位機的通信進行標定十分方便。我們設計的數據轉換器采用了NXP公司的LPC2119 ARM7處理器,通過它成功地實現上位機和ECU的可靠通信和對下位機的標定。
關鍵詞: ARM ARM7 CAN USB LPC2119
Abstract:
Key words :

引言

ABS(防抱死剎車系統)ECU(電控單元)在研發過程中,為了實時確定其行車參數和控制參數,通常會使用標定技術,標定技術就是通過一定的命令對ECU上傳和讀取控制算法參數,以達到對其實時修改以尋求最優的技術。對于車載電控單元來說,其通常只有CAN總線通信接口,為了能實現上位機和ECU能直接進行通信,實現利用標定技術對ABS ECU進行開發,我們設計了一款能實現CAN到USB的數據轉換器。CAN通信協議是一種用于汽車內部測量與執行部件之間的數據通信協議。而USB具有即插即用的優點,并且有較高的通信速率,對于實現上位機和下位機的通信進行標定十分方便。我們設計的數據轉換器采用了NXP公司的LPC2119 ARM7處理器,通過它成功地實現上位機和ECU的可靠通信和對下位機的標定。

系統硬件設計

LPC2119 ARM7處理器

LPC2119是基于一個支持實時仿真和跟蹤的16/32ARM7TDMI-S CPU的微控制器,并帶有28/256kB嵌入的高速Flash存儲器。128位寬度的存儲器接口和獨特的加速結構使32位代碼能夠在最大時鐘速率下運行。

USB轉換芯片CH372

CH372是一個USB總線的通用設備接口芯片,在本地端,CH372具有8位數據總線和讀、寫、片選控制線以及中斷輸出,可以方便地掛接到控制器的系統總線上;CH372內置了USB通訊中的底層協議,在內置固件模式下,CH372自動處理默認端點0的所有事務。

系統設計

轉換器直接使用USB的5V供電,使用了LM1117將5V電源轉換成3.3V和1.8V以供ARM處理器及其外圍模塊使用,對于CAN控制器輸出的邏輯電平用TJA1050轉換成差分電平輸出CH372的設計十分重要,外接電容用于CH372內外部電源節點去耦。在LPC2119的各電壓引腳分別接了0.01μf的電容進行濾波。在USB轉換芯片的設計中,可選4.7kΩ電阻用于在電源斷電后將電解電容中的電能及時釋放掉,使VCC及時下降到0V,確保在下次通電時CH372能夠可靠地上電復位。為使CH372能夠可靠復位,電源電壓從0V上升到5V的上升時間應該少于100ms,所以電容的容量和電阻的阻值都不能太大。用15pF的獨石或高頻瓷片電容作為CH372的時鐘振蕩電路的起振電容。

系統硬件設計部分框圖如圖1。

系統軟件設計

系統程序主要包括CAN控制器驅動程序,USB控制芯片CH372驅動程序,數據讀寫緩沖區的設計,以及如何調用CAN和USB的讀寫函數使數據的通信更好的同步。

CAN驅動程序

根據LPC2119微處理器CAN控制器的特性,將CAN的驅動程序分為3個層次:1.硬件抽象層:將CAN控制器的硬件特性用數據類型進行抽象,并提供CAN控制器硬件操作的接口。對物理層的寄存器和相應地址影射,定義了CAN控制器寄存器的數據類型和對寄存器的操作方法。2.功能函數層:CAN控制器各種功能的實現函數,該層的函數利用硬件抽象層中對寄存器操作的接口來訪問CAN控制器來實現各種CAN控制器所能提供的功能。3.應用程序接口層:在該層中的主要提供給3個函數,初始化CAN控制器CANinit()、發送數據CANSendData()、接收數據CANRecieveData()。

CH372驅動程序

CH372芯片在本地端提供了通用的被動并行接口。CH372芯片的讀寫時序主要要求讀寫使能信號有一個2~10μs的持續時間,并且在a0=1時寫入命令,a0=0時讀寫數據。在本設計中,用LPC2119的10口來表示CH372的各信號,并需要嚴格按照其時序要求用軟件模擬其讀寫時序,一個典型的寫數據子函數如下:



在以上程序中,對各端口的操作先后代表了CH372的讀寫時序信號的先后,適當的延時表示有效的寫/讀選通脈沖WR/RD的寬度,其典型值為90到10000ns,我們選擇25μs。同理可得寫命令,讀數據子函數:USBWriteCMD(uint32 CMD),USBReadData()。調用以上子函數提供了發送和接收數據的函數:IRQ_CH372(void),UploadUSBData(unin32Length,uint32 Data[])。

環形緩沖區

在本設計中,設計了兩個環形緩沖區,分別存放USB及CAN的數據,使其能同步發送,
一個典型的緩沖區數據結構如下:



數據元素是無符號32位整數,MAX為環形緩沖區最大長度,WritePtr為讀指針,ReadPtr為寫指針。讀寫指針初始化為writePtr=ReadPtr=0。通過CAN控制器接受的數據存放在環形緩沖區CANRecRinBuf中,再讀出數據從USB端輸出,保證了數據通信的可靠性。

上位機監控界面

安裝CH372的上位機驅動后,基于CH372的USB設備就可以被上位機識別了。調用CH372提供的動態連接庫CH372.d11及其相應的LIB文件CH372.Lib和頭文件CH372.h,以建立上位機的工序,調用CH372提供的庫函數CH375OpenDevice()、CH375CloseDevice(),用于打開和關閉設備,調用CH375WriteData();CH375ReadData()接收下位機通過CH372發送上來的數據,并根據CAN總線數據的格式將其封裝成CAN格式的數據,提供對CAN數據的收發CANDownload(),CANUpload()。用C++設計相應的圖形界面以實現和下位機的通信。

結語

在ABSECU的研發項目中,我們使用了此轉換器將ECU的CAN數據轉換成USB數據和上位機通信,ECU上傳需監控參數,上位機下傳標定參數。其硬件上使用ARM7內核的LPC2119作為控制器,以及底層軟件的設計確保了轉換器在實際的ECU開發的CCP標定的工程中,在大量數據進行傳輸的過程中有較好的可靠性。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
激情伊人五月天久久综合| 亚洲小说欧美另类婷婷| 国产精品久久久久久超碰 | 久热精品在线视频| 久久久亚洲精品一区二区三区 | 亚洲国产一二三| 亚洲黄色免费网站| 亚洲破处大片| 日韩亚洲综合在线| 一区二区免费看| 亚洲婷婷在线| 亚洲欧美卡通另类91av| 亚洲欧美中文字幕| 欧美诱惑福利视频| 久久久精品午夜少妇| 久久免费视频在线| 欧美va亚洲va香蕉在线| 欧美精品久久一区二区| 欧美视频官网| 国产精品每日更新在线播放网址| 国产精品网站在线观看| 国产一区视频网站| 在线观看精品| 亚洲精品一级| 亚洲与欧洲av电影| 久久国产精品久久精品国产| 亚洲国产美女| 亚洲视频二区| 欧美伊人精品成人久久综合97| 久久久久久一区二区三区| 女主播福利一区| 欧美日韩精品免费看| 国产精品日韩一区| 国内外成人免费视频| 亚洲国产欧美国产综合一区| 99在线热播精品免费| 亚洲欧美日本另类| 亚洲激情一区二区三区| 亚洲午夜精品福利| 久久精品五月婷婷| 欧美精品网站| 国产精品一区在线播放| 亚洲第一级黄色片| 一区二区三区高清不卡| 午夜视频在线观看一区二区三区| 亚洲成色精品| 中文日韩在线视频| 欧美在线资源| 欧美精品三级| 国产日韩综合| 亚洲人成在线播放网站岛国| 亚洲一区二区三区午夜| 亚洲激情第一区| 亚洲欧美日韩成人高清在线一区| 久久久久一区二区| 欧美日韩亚洲精品内裤| 国内精品久久久| 亚洲美女在线一区| 久久都是精品| 亚洲五月婷婷| 另类春色校园亚洲| 国产精品视频xxx| 91久久一区二区| 欧美一区二区三区免费观看| 一本色道久久88亚洲综合88| 久久精品夜夜夜夜久久| 欧美视频日韩视频| 亚洲电影天堂av| 亚洲欧美日韩一区二区在线| 99国产精品99久久久久久| 久久精品欧美日韩| 欧美日韩免费一区二区三区视频| 国内外成人免费激情在线视频| 一区二区三区欧美在线| 亚洲激情国产| 久久爱另类一区二区小说| 欧美日韩一区二区三区高清| 在线免费观看视频一区| 亚洲永久字幕| 亚洲图片欧美日产| 欧美成人xxx| 黑人巨大精品欧美一区二区小视频| 一区二区三区四区五区视频| 亚洲精品网站在线播放gif| 久久久久久久久一区二区| 国产精品www994| 亚洲激情黄色| 亚洲国产精品久久91精品| 久久国产精品黑丝| 国产精品成人v| 亚洲靠逼com| 亚洲精品乱码久久久久久久久 | 亚洲国产一区二区a毛片| 午夜在线不卡| 欧美视频在线观看 亚洲欧| 亚洲人成啪啪网站| 亚洲激情电影中文字幕| 久久久噜噜噜久久| 国产日韩欧美一区在线| 亚洲一区免费在线观看| 亚洲主播在线观看| 欧美色欧美亚洲另类七区| 日韩亚洲不卡在线| 一本色道久久| 欧美日韩不卡一区| 亚洲乱码国产乱码精品精98午夜| 亚洲精品一级| 欧美激情第三页| 亚洲黄色成人| 99pao成人国产永久免费视频| 欧美黄色视屏| 亚洲人成啪啪网站| 99亚洲伊人久久精品影院红桃| 欧美电影专区| 亚洲欧洲一区| 99国产精品久久久久久久成人热| 欧美精品免费播放| 亚洲精品在线观看免费| 日韩视频精品在线| 欧美久久成人| 99成人免费视频| 亚洲一区二区三区精品动漫| 欧美三级乱码| 亚洲淫片在线视频| 久久gogo国模裸体人体| 国内精品视频666| 亚洲第一在线综合在线| 免费在线视频一区| 亚洲国产天堂网精品网站| 99re66热这里只有精品4| 欧美日韩免费视频| 一区二区三区日韩精品视频| 香蕉av福利精品导航| 国产日韩欧美二区| 久久99在线观看| 蜜桃av一区| 亚洲精品在线二区| 亚洲女女女同性video| 国产欧美精品日韩| 久久精品毛片| 欧美国产第一页| 一区二区三区精品久久久| 欧美一区二区三区在线观看| 国内视频一区| 日韩视频免费大全中文字幕| 欧美日韩视频一区二区三区| 亚洲校园激情| 久久综合99re88久久爱| 亚洲激情自拍| 亚洲欧美另类在线观看| 含羞草久久爱69一区| 日韩小视频在线观看| 欧美视频成人| 欧美中文在线免费| 欧美国产另类| 亚洲伊人网站| 欧美成人免费播放| 亚洲午夜一区二区三区| 麻豆国产精品va在线观看不卡| 日韩视频免费在线| 欧美一区二区视频在线观看2020 | 亚洲女性裸体视频| 美女免费视频一区| 亚洲最新视频在线播放| 久久国产综合精品| 亚洲人成高清| 欧美中文字幕精品| 亚洲人成在线观看网站高清| 先锋影音久久久| 亚洲国产综合在线看不卡| 午夜久久资源| 亚洲黄色成人| 欧美自拍偷拍| 亚洲麻豆国产自偷在线| 久久激情一区| 洋洋av久久久久久久一区| 久久久久9999亚洲精品| 日韩一级免费观看| 久久久美女艺术照精彩视频福利播放| 亚洲裸体视频| 另类亚洲自拍| 亚洲欧美日韩国产综合在线| 欧美激情久久久| 欧美一区二区视频在线观看2020| 欧美日韩二区三区| 亚洲第一精品电影| 国产精品久久久久久久久借妻 | 亚洲黄色三级| 国产三级精品三级| 亚洲夜晚福利在线观看| 亚洲高清一二三区| 久久精品动漫| 中国女人久久久| 欧美精品系列| 亚洲国产精品第一区二区| 国产精品一区二区三区四区五区| 亚洲作爱视频| 亚洲国产精品成人| 久久综合五月天婷婷伊人| 午夜精品国产更新|