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

當前位置:首頁 > 單片機 > 單片機
[導讀]設(shè)計了一種CAN-USB轉(zhuǎn)換器,實現(xiàn)了CAN總線與上位機的實時通信,完成了對CAN總線通信的實時信息采集。

摘要: 設(shè)計了一種CAN-USB轉(zhuǎn)換器,實現(xiàn)了CAN總線與上位機的實時通信,完成了對CAN總線通信的實時信息采集。
關(guān)鍵詞: USB;CAN總線;LPC2119

  引言

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

  系統(tǒng)硬件設(shè)計

  LPC2119 ARM7處理器

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

  USB轉(zhuǎn)換芯片CH372

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

  系統(tǒng)設(shè)計

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

  系統(tǒng)硬件設(shè)計部分框圖如圖1。

圖1   轉(zhuǎn)換器框圖

  系統(tǒng)軟件設(shè)計

  系統(tǒng)程序主要包括CAN控制器驅(qū)動程序,USB控制芯片CH372驅(qū)動程序,數(shù)據(jù)讀寫緩沖區(qū)的設(shè)計,以及如何調(diào)用CAN和USB的讀寫函數(shù)使數(shù)據(jù)的通信更好的同步。

  CAN驅(qū)動程序

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

  CH372驅(qū)動程序

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

  USBWriteData(uint32 Data)

  {

  ………………………

  IO0CLR=0x00000010; //a0=0,表示以下

  寫入為數(shù)據(jù)

  IO0PIN=Data; //向數(shù)據(jù)端口寫入數(shù)據(jù)

  IO0SET=0x00000020; //rd=1,讀信號無效

  IO0CLR=0x00000040; //wr=0,寫使能

  Delay8us(1); //延時8us,表示寫信號

  有效寬度

  IO0SET=0x00000060;

  …………………………

  }

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

  環(huán)形緩沖區(qū)

  在本設(shè)計中,設(shè)計了兩個環(huán)形緩沖區(qū),分別存放USB及CAN的數(shù)據(jù),使其能同步發(fā)送,一個典型的緩沖區(qū)數(shù)據(jù)結(jié)構(gòu)如下:

  struct CANRecRinBuf

  {

  Uint32 CANBuf[MAX];

  Uint32 WritePtr;

  Uint32 ReadPtr;

  }

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

  上位機監(jiān)控界面

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

  結(jié)語

  在ABS ECU的研發(fā)項目中,我們使用了此轉(zhuǎn)換器將ECU的CAN數(shù)據(jù)轉(zhuǎn)換成USB數(shù)據(jù)和上位機通信,ECU上傳需監(jiān)控參數(shù),上位機下傳標定參數(shù)。其硬件上使用ARM7內(nèi)核的LPC2119作為控制器,以及底層軟件的設(shè)計確保了轉(zhuǎn)換器在實際的ECU開發(fā)的CCP標定的工程中,在大量數(shù)據(jù)進行傳輸?shù)倪^程中有較好的可靠性。

  參考文獻:

  1. QinHeng Electronics.CH372 Datasheet[EB/OL].http://winchiphead.com/,2006

  2. Philips.LPC2119 Datasheet[EB/OL].http://www.zlgmcu.com/,2006

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

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉