亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于CAN總線電氣綜合控制盒Bootloader軟件的設(shè)計(jì)與實(shí)現(xiàn)

        2021-04-01 12:37:30李艷明王志遠(yuǎn)倪永亮
        車輛與動(dòng)力技術(shù) 2021年1期
        關(guān)鍵詞:應(yīng)用程序總線編程

        李 鑫, 李艷明, 王志遠(yuǎn), 倪永亮

        (1. 駐北京地區(qū)第六軍事代表室,北京 100072;2. 中國(guó)北方車輛研究所,北京 100072)

        在特種無人車輛研發(fā)過程中,多樣的需求使得整車的控制策略需要不斷調(diào)整,因此需要對(duì)相關(guān)控制單元進(jìn)行程序更新.特種無人車輛小型化、輕量化的趨勢(shì)使得車上部件安裝比較緊湊,通常沒有足夠空間通過控制器上的程序下載口更新控制器內(nèi)部應(yīng)用程序,需常常拆卸控制單元來更新,那是非常麻煩的事情.當(dāng)前特種無人車輛底層控制單元大多采用CAN總線進(jìn)行信息傳遞,通過CAN總線實(shí)現(xiàn)控制單元程序的更新,會(huì)大大提高研發(fā)效率[1-2].本研究?jī)H針對(duì)特種無人車輛電氣綜合控制盒,在飛思卡爾型號(hào)為MC9S12XEP100的硬件平臺(tái)上實(shí)現(xiàn)Bootloader軟件的設(shè)計(jì),實(shí)現(xiàn)無需拆卸控制單元部件,無需使用下載器,僅通過車上的CAN總線接口便可實(shí)現(xiàn)控制單元應(yīng)用程序的更新.

        1 Bootloader軟件介紹及方案

        1.1 軟件原理

        嵌入式系統(tǒng)是以應(yīng)用為中心、以計(jì)算機(jī)為基礎(chǔ)、軟硬件可裁剪,適用于系統(tǒng)對(duì)功能、可靠性、成本、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng).在嵌入式系統(tǒng)中,通常沒有像BIOS(Basic Input Output System,基本輸入輸出系統(tǒng))那樣的固件程序,整個(gè)系統(tǒng)加電后運(yùn)行的第一段軟件代碼為引導(dǎo)加載程序,也就是Bootloader程序.通過這段程序,可以初始化硬件設(shè)備、建立內(nèi)存空間的映射過程,從而將系統(tǒng)的軟硬件環(huán)境設(shè)定在一個(gè)合適的狀態(tài),以便為調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境[3-4].

        Bootloader程序在單片機(jī)上電/復(fù)位后在應(yīng)用程序之前運(yùn)行.通過設(shè)計(jì)Bootloader程序可以實(shí)現(xiàn)應(yīng)用程序的更新,即Bootloader程序運(yùn)行后判斷當(dāng)前是否需要進(jìn)入更新應(yīng)用程序狀態(tài).如果不需要更新,就直接運(yùn)行Flash中原有的程序;如果需要更新,首先擦除舊的程序,然后從CAN總線接收新的程序,同時(shí)寫入Flash中.接收數(shù)據(jù)時(shí),需要進(jìn)行校驗(yàn),保證接收到的數(shù)據(jù)是正確的,避免更新的程序出現(xiàn)錯(cuò)誤.

        1.2 軟件方案

        本研究設(shè)計(jì)了一套基于CAN總線且基于UDS協(xié)議的Bootloader軟件,其可以基于飛思卡爾16位單片機(jī)MC9S12XEP100和CodeWarrior 5.1開發(fā)環(huán)境實(shí)現(xiàn)在線更新ECU應(yīng)用程序.

        該軟件方案是由一款運(yùn)行于ECU內(nèi)部的嵌入式下位機(jī)軟件和一款運(yùn)行于PC端的上位機(jī)下載軟件組成,如圖1所示,上位機(jī)下載軟件可以按照應(yīng)用需求,對(duì)下載過程中的各類通信參數(shù)、數(shù)據(jù)校驗(yàn)算法和安全訪問算法等內(nèi)容進(jìn)行設(shè)置,與ECU進(jìn)行重編程通信,實(shí)現(xiàn)對(duì)存儲(chǔ)在ECU中的應(yīng)用程序的更新.下位機(jī)嵌入式軟件運(yùn)行工作于ECU內(nèi)部,通過CAN總線接口設(shè)備,在重編程過程中對(duì)上位機(jī)的重編程請(qǐng)求和一系列指令進(jìn)行響應(yīng),完整接收需要下載至ECU中的應(yīng)用程序,通過存儲(chǔ)器驅(qū)動(dòng)完成對(duì)應(yīng)用程序的刷寫更新.上、下位機(jī)建立通信的過程應(yīng)提供安全訪問解鎖機(jī)制,程序和數(shù)據(jù)下載完成后應(yīng)提供數(shù)據(jù)一致性校驗(yàn)機(jī)制,以確保ECU中應(yīng)用程序更新的合法性和完整性.

        圖1 Bootloader軟件系統(tǒng)示意圖

        使用時(shí),首先通過BDM下載器將下位機(jī)軟件燒寫到ECU,使下位機(jī)軟件運(yùn)行于ECU內(nèi)部;然后配合上位機(jī)軟件,將ECU應(yīng)用程序通過CAN總線通信接口設(shè)備Vector VN7600刷寫至ECU內(nèi)部.此后更新ECU內(nèi)部應(yīng)用程序只需要通過控制器CAN總線接口即可實(shí)現(xiàn),無需使用下載器,在車上也就無需通過拆卸控制器.

        2 Bootloader軟件設(shè)計(jì)

        2.1 軟件架構(gòu)設(shè)計(jì)

        該Bootloader軟件借鑒軟件層次化設(shè)計(jì)以增加軟件的復(fù)用性、可移植性.軟件架構(gòu)如圖2所示.

        圖2 Bootloader軟件架構(gòu)

        各模塊功能如表1所示.

        表1 Bootloader軟件模塊功能簡(jiǎn)述

        2.2 軟件文件設(shè)計(jì)

        Bootloader軟件模塊文件組成如圖3所示.

        圖3 Bootloader軟件模塊文件組成

        Bootloader軟件模塊文件功能如表2所示.

        表2 Bootloader軟件模塊文件功能

        2.3 處理器存儲(chǔ)區(qū)分配設(shè)計(jì)

        2.3.1 存儲(chǔ)區(qū)分配規(guī)劃

        應(yīng)用程序和Bootloader存放在同一個(gè)ECU中.為了保證彼此正確使用,二者的設(shè)計(jì)按照表3所示的規(guī)則進(jìn)行.

        表3 系統(tǒng)存儲(chǔ)器分配情況說明表

        2.3.2 修改burner.bbl文件

        如圖4所示,在burner.bbl文件中添加“%ABS_FILE%.code.s19”文件信息,具體內(nèi)容參見應(yīng)用程序burner.bbl中語(yǔ)句OPENFILE“%ABS_FILE%.code.s19”下方所有內(nèi)容.在編譯時(shí),此文件信息用于生成全局地址的應(yīng)用程序.s19文件.

        圖4 %ABS_FILE%.code.s19內(nèi)容

        如圖5所示,在burner.bbl文件中添加“%ABS_FILE%.data.s19”文件信息,具體內(nèi)容參見應(yīng)用程序burner.bbl中語(yǔ)句OPENFILE“%ABS_FILE%.data.s19”下方所有內(nèi)容.在編譯時(shí),此文件信息用于生成全局地址的標(biāo)定數(shù)據(jù).s19文件.

        圖5 %ABS_FILE%.data.s19內(nèi)容

        2.3.3 修改Project.prm文件

        修改啟動(dòng)代碼地址.在Project.prm中刪掉ROM_C000(已被Bootloader占用),將ROM_C000修改為ROM_4000.

        修改標(biāo)定數(shù)據(jù)地址.在Project.prm中添加PageUser INTO PAGE_C0.

        2.4 應(yīng)用程序設(shè)計(jì)

        為了保證快速、高效地進(jìn)行應(yīng)用程序重編程功能集成,在開始集成之前,需要在應(yīng)用程序設(shè)計(jì)如下接口:

        1)CAN接收回調(diào)接口.當(dāng)接收到一幀CAN報(bào)文時(shí),驅(qū)動(dòng)將接收的報(bào)文傳遞給此接口處理.2)CAN發(fā)送確認(rèn)接口.當(dāng)CAN驅(qū)動(dòng)發(fā)送完CAN報(bào)文后,將發(fā)送結(jié)果傳遞給此接口確認(rèn).3)CAN發(fā)送接口.集成后的應(yīng)用程序需要向上位機(jī)發(fā)送一些響應(yīng)報(bào)文,因此需要CAN報(bào)文的發(fā)送接口.4)MCU影復(fù)位接口.使用硬件看門狗溢出或非法指令等形式實(shí)現(xiàn).5)RAM讀寫接口.Bootloader重編程請(qǐng)求標(biāo)識(shí)及復(fù)位標(biāo)識(shí)存放在內(nèi)部RAM中,因此需要可支持單字節(jié)讀寫的RAM接口.6)檢查編程條件接口.此接口用來檢查本次重編程是否可以繼續(xù)進(jìn)行的關(guān)鍵,在某些條件下不能進(jìn)行重編程操作,比如車速不為零,等等.

        2.5 集成文件設(shè)計(jì)

        為了保證應(yīng)用程序能夠正確地進(jìn)行重編程,它需包含重編程處理文件.文件名及內(nèi)容描述如表4所示.

        表4 文件名及內(nèi)容描述

        3 測(cè)試結(jié)果和分析

        對(duì)本設(shè)計(jì)的CAN總線Bootloader軟件進(jìn)行測(cè)試.將Bootloader軟件和集成后的應(yīng)用程序下載到電氣綜合控制盒后,通過對(duì)電氣綜合控制盒的功能進(jìn)行測(cè)試,驗(yàn)證下載到控制器內(nèi)部的Bootloader軟件和集成后的應(yīng)用程序是否完整和正確.

        測(cè)試的軟硬件環(huán)境及工具如表5所示,測(cè)試硬件連接關(guān)系原理如圖6所示,測(cè)試環(huán)境如圖7所示.

        表5 軟硬件環(huán)境及工具

        圖6 測(cè)試連接關(guān)系原框理圖

        圖7 測(cè)試環(huán)境

        首先利用軟件Codewarrior 5.1和硬件BDM下載器將Bootloader下位機(jī)嵌入式軟件燒寫到處理器內(nèi)部;然后通過上位機(jī)和硬件VN7600將集成好的應(yīng)用程序通過CAN總線下載到控制器內(nèi)部;接著利用軟件CANoe 11.0和硬件VN7600模擬電氣綜合控制盒的控制指令,同時(shí)利用萬用表和示波器實(shí)現(xiàn)對(duì)相關(guān)電壓參數(shù)的測(cè)量并且對(duì)電氣綜合控制盒上傳狀態(tài)進(jìn)行監(jiān)控.

        測(cè)試過程中,應(yīng)用程序通過CAN總線下載順利;電氣綜合控制盒電源燈常亮,呼吸燈閃爍,狀態(tài)正常;電氣綜合控制盒在控制下工作正常,CAN總線上傳狀態(tài)數(shù)據(jù)正常.

        測(cè)試結(jié)果表明,電氣綜合控制盒工作正常,應(yīng)用程序運(yùn)行正常.

        4 結(jié)束語(yǔ)

        基于CAN總線的Bootloader軟件能夠?qū)崿F(xiàn)電氣綜合控制盒應(yīng)用程序的快速更新,大大提高了研發(fā)效率,也極大地方便了電氣綜合控制盒應(yīng)用程序的后期更新和維護(hù).

        猜你喜歡
        應(yīng)用程序總線編程
        我家有只編程貓
        我家有只編程貓
        我家有只編程貓
        我家有只編程貓
        刪除Win10中自帶的應(yīng)用程序
        基于PCI Express總線的xHC與FPGA的直接通信
        機(jī)載飛控1553B總線轉(zhuǎn)以太網(wǎng)總線設(shè)計(jì)
        多通道ARINC429總線檢查儀
        基于EtherCAT總線的ROV控制系統(tǒng)設(shè)計(jì)
        河南科技(2014年16期)2014-02-27 14:13:22
        關(guān)閉應(yīng)用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        久久国产成人精品av| 蜜桃av噜噜一区二区三区| 97精品人妻一区二区三区香蕉| 丰满人妻熟妇乱又伦精品视| 美女超薄透明丝袜美腿| 少妇特殊按摩高潮对白| www国产亚洲精品| 成人免费a级毛片| 好大好硬好爽免费视频| 国产在线美女| 久99久精品免费视频热77| 少妇被爽到自拍高潮在线观看| 国产福利一区二区三区在线观看| 国产自产二区三区精品| 风韵少妇性饥渴推油按摩视频| 午夜亚洲www湿好爽| 97se在线| 激情视频在线观看国产中文| 一本久道竹内纱里奈中文字幕| 欧美熟妇性xxx交潮喷| 欧产日产国产精品精品| 亚洲国产日韩在线人成蜜芽| 中文字幕日本韩国精品免费观看 | 性久久久久久久| 国产香蕉尹人在线视频播放| 亚洲欧洲日产国码无码| 免费视频亚洲一区二区三区| 日本熟女中文字幕在线| 国产亚洲一区二区在线观看| 欧美成人一区二区三区在线观看 | 久久av高潮av无码av喷吹| 久久无码人妻一区二区三区午夜| 国产艳妇av在线出轨| 女人一级特黄大片国产精品| av国产免费在线播放| 国产69久久精品成人看| 欧美精品一区二区蜜臀亚洲| 国精品无码一区二区三区在线看| 日本一区二区视频免费观看| 亚洲精品中文字幕乱码无线| 草草影院发布页|