• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      多回路無線照明控制器MCU脫機下載器的設(shè)計與實現(xiàn)

      2017-01-09 06:19:20劉雪蘭田宏偉
      關(guān)鍵詞:飛思脫機低電平

      劉雪蘭, 田宏偉

      (1.江蘇農(nóng)牧科技職業(yè)學(xué)院 信息工程系,江蘇 泰州 225300;2.蘇州大學(xué) 應(yīng)用技術(shù)學(xué)院,江蘇 蘇州 215325)

      多回路無線照明控制器MCU脫機下載器的設(shè)計與實現(xiàn)

      劉雪蘭1, 田宏偉2

      (1.江蘇農(nóng)牧科技職業(yè)學(xué)院 信息工程系,江蘇 泰州 225300;2.蘇州大學(xué) 應(yīng)用技術(shù)學(xué)院,江蘇 蘇州 215325)

      目前MCU的下載器以在線下載器為主,在室外環(huán)境下攜帶不便,便攜式的脫機下載器比較缺乏且價格昂貴,因此根據(jù)多回路無線照明控制器實際需求設(shè)計了針對AW系列MCU的便攜式脫機下載器。通過對HCS08內(nèi)核CPU及背景調(diào)試控制器的深入理解,設(shè)計了使用SD卡和EEPROM雙重存儲器的下載器硬件和軟件,精心設(shè)計了能保證程序下載可靠性的軟件。該下載器已在實際項目中應(yīng)用,運行穩(wěn)定,效果較好。

      MCU下載器; 背景調(diào)試技術(shù); 脫機下載; 控制器

      0 引言

      嵌入式產(chǎn)品中MCU的程序下載是指將固件程序下載到目標芯片中,同時提供對目標芯片F(xiàn)lash的擦除和校驗等功能的過程。目前針對飛思卡爾MCU的程序下載器一般以在線編程為主,常用的有P&E公司、飛思卡爾公司等生產(chǎn)的調(diào)試器,這些調(diào)試器功能復(fù)雜、價格昂貴,就脫機下載器而言目前僅P&E公司提供一款Cyclone脫機下載器,價格更高。

      AW系列MCU是飛思卡爾半導(dǎo)體公司推出的針對電機控制、自動化控制以及汽車應(yīng)用等場合的工業(yè)級MCU,外圍模塊豐富,存儲器容量大,且抗干擾能力強,因此選擇其中的MC9S08AW60作為多回路無線照明控制器的核心MCU。實際運行中,由于用戶功能需求的變化,需要到現(xiàn)場對MCU進行程序升級,但現(xiàn)場下載程序必須攜帶筆記本電腦和在線下載器才能進行,攜帶不便。

      本文在分析了HCS08系列CPU內(nèi)核基礎(chǔ)上,設(shè)計了BDM調(diào)試器硬件電路,設(shè)計了多回路無線照明控制器MCU便攜式脫機下載器,同時給出在下載器軟件方面保證整個下載過程可靠性所采取的措施。

      1 設(shè)計思路

      便攜式下載器使用SD卡作為待燒寫的十六進制目標文件的存儲載體,帶有液晶顯示功能,通過按鍵選擇MCU的型號及目標文件,選定后對目標MCU執(zhí)行程序燒寫操作,下載器使用9 V鎳氫充電電池作為供電電源,外部的EEPROM用來存儲配置參數(shù),同時為了可靠起見,EEPROM還用來存儲待燒寫的目標文件,下載器的模塊構(gòu)成如圖1所示。

      圖1 編程器各模塊構(gòu)成示意圖

      便攜式下載器的設(shè)計需要深入理解HCS08內(nèi)核、背景調(diào)試控制器模塊以及目標文件格式的解析等。

      1.1 S19記錄文件

      S19記錄文件[1]是飛思卡爾HC08、HCS08、HCS12系列微控制器的機器碼文件,是使用字符記錄的具有固定格式的目標代碼文件,S19文件中每條記錄占用1行,每行由5部分數(shù)據(jù)段組成,其數(shù)據(jù)段定義如表1所示。

      表1 S19記錄格式

      1.2 背景調(diào)試模式BDM

      背景調(diào)試模式[2]BDM(Background Debug Mode)是由飛思卡爾半導(dǎo)體公司推出的單線調(diào)試方式,是S08、S12及Coldfire系列MCU支持的調(diào)試方式。這些芯片內(nèi)部都具有背景調(diào)試控制器(Background Debug Controller,BDC)[3],負責(zé)接收和解析下載器發(fā)送的命令,通過操作該控制器,開發(fā)人員可以實現(xiàn)底層調(diào)試、Flash擦除和編程、加密處理等功能。

      BDM接口為單線接口,使用的通信引腳為BKGD,其他的為2個供電引腳以及復(fù)位引腳RESET,下載器為雙排6芯接口,占用空間小,方便制作。

      2 載器硬件設(shè)計

      便攜式下載器以AW60為主控MCU,下載器硬件設(shè)計圍繞功能需求進行,包括BDM接口模塊、液晶顯示模塊、按鍵輸入模塊、使用SPI接口通信的SD卡模塊和EEPROM模塊等,此處主要介紹BDM接口電路,電路示意如圖2所示。

      圖2 編程器BDM接口電路

      主控芯片輸出信號與目標MCU之間接入三態(tài)緩沖器74HC125,在保證信號的驅(qū)動能力的同時可以適應(yīng)目標芯片3.3 V或者5 V的信號電壓[4]。從圖2中可以看出,需要向目標MCU發(fā)送BKGD數(shù)據(jù)時,下載器BKGD_DRV首先輸出低電平信號,75HC125-3由高阻態(tài)轉(zhuǎn)換為工作狀態(tài),此時即可通過BKGD_OUT引腳輸出0或1的信號,目標MCU的BKGD引腳即接收該信號,其他引腳的工作方式類似。

      需要注意的是,圖2中BKGD_IN引腳對應(yīng)的是MCU的兩個引腳PTC6和PTF0,而且在軟件中將PTF0配置為定時器1通道2的輸入捕捉引腳,這么做并不是為了增加驅(qū)動能力,而是為了配合BDM指令集提供的一條用于解決下載器與目標MCU速率不匹配的指令——SYNC指令。在實現(xiàn)SYNC指令功能時,PTF0處于輸入捕捉的工作模式,用于捕捉目標MCU發(fā)送的電平跳變信號,通過測量目標MCU發(fā)送的128個低電平周期從而計算出該芯片BDM控制器的運行頻率,實現(xiàn)自適應(yīng)的通信。

      3 下載器軟件設(shè)計要點

      BDM通信是單線通信,其最基本的底層操作是讀/寫一個數(shù)據(jù)位的操作,而對應(yīng)的指令集的基本單位為1 B,因此軟件設(shè)計的要點就是深入了解BDM指令以及編寫穩(wěn)定可靠的讀/寫字節(jié)數(shù)據(jù)函數(shù),同時為提高下載器下載的可靠性給出了三種措施。

      使用SPSS17.0統(tǒng)計學(xué),計數(shù)資料用(n/%)表示,采用χ2檢驗,P<0.05表差異具有統(tǒng)計學(xué)意義。

      3.1 BDM指令介紹

      HCS08內(nèi)核的BDM指令分為兩類[5]:一類是在任何運行模式下都可以執(zhí)行的指令,用于對存儲器的讀寫訪問及設(shè)置斷點等功能,稱為硬指令,硬指令不影響CPU運行。另一類指令稱為軟指令,需要在BDM模式下由CPU執(zhí)行(用戶程序無法運行),固件指令主要提供對CPU內(nèi)部寄存器的讀取和修改操作。表2列出了BDM常用的指令。

      表2 BDM常用指令

      3.2 讀寫匯編子程序

      下載器主控芯片第一步操作是測量目標MCU的頻率,該操作是通過發(fā)送長度足夠的低電平來同步請求SYNC指令,主控芯片通過測量目標MCU發(fā)送的128個低電平周期所使用的時間,從而換算出目標MCU的BDM控制器的工作頻率,此處用到的便是PTF0作為輸入捕捉用來計算兩次跳變間用時的功能[6]。

      在此基礎(chǔ)上,接下來就是比較關(guān)鍵的讀/寫字節(jié)子程序的實現(xiàn),為了保證通信的時序完全按照BDM的要求,該子程序必須使用匯編語言編寫,限于篇幅不再列出具體匯編程序,程序設(shè)計時需要仔細計算出每個語句及循環(huán)操作所占用的周期,發(fā)送數(shù)據(jù)的過程及占用周期如下:

      (1)主控芯片寫位0到目標芯片BKGD引腳的操作:拉低目標芯片的BKGD引腳不少于12個時鐘周期,目標芯片在檢測到低電平后的第10個周期對BKGD進行采樣,讀入該位。

      (2)主控芯片寫位1的操作:拉低目標芯片BKGD引腳2~4個時鐘周期后釋放BKGD端,使之為高電平,目標MCU在探測到低電平以后的第10個周期對BKGD進行采樣,讀入該位。

      3.3 程序下載的可靠性

      對于下載器而言,下載的完整性和可靠性是第一位的,脫機下載器在軟件方面做了以下幾個方面的工作:

      (1)程序下載回滾功能:為防止用戶下載程序后發(fā)現(xiàn)下載的代碼文件有誤,但目標MCU已被擦除無法恢復(fù)原有程序,在下載器的軟件中加入了一個操作,即在燒寫目標芯片前首先將目標MCU中的程序讀出,程序讀出后,存儲在下載器外置的EEPROM中,若用戶選擇程序回滾,則下載器軟件重新讀入之前讀出的目標文件,并進行回滾編程。

      EEPROM選用容量為128 KB的25LC1024,內(nèi)部劃分為三個區(qū)域,分別用來存儲配置參數(shù)、目標MCU內(nèi)部原有固件程序以及待燒寫的目標文件。

      (2)防SD卡故障功能:為防止在下載過程中出現(xiàn)SD卡被拔出等誤操作引起的無法讀取目標文件下載的錯誤,下載器軟件首先把待燒寫的目標文件S19存入EEPROM中,在對拷貝到EEPROM的目標文件進行重新校驗后才對目標MCU進行擦除和編程操作。

      (3)程序下載校驗功能:目標芯片燒寫成功后,偶爾也會遇到運行不正常的情況,而且可能很難被發(fā)現(xiàn),因此程序下載完畢后必須進行程序校驗操作。具體過程是讀出下載后芯片的程序,并按字節(jié)與存儲在EEPROM中的S19文件進行對比,若出現(xiàn)不一致則提示用戶校驗錯誤,需要重新下載。

      4 結(jié)論

      本文針對飛思卡爾下載器以在線編程為主,市場中缺乏MCU脫機下載器的問題,在深入理解HCS08型CPU內(nèi)核中BDC模塊的功能、指令的基礎(chǔ)上,設(shè)計了針對多回路無線照明控制器MCU的脫機下載器,并成功用于實際產(chǎn)品的程序下載中。通過進一步的改進,可以適應(yīng)更多型號的HCS08系列MCU的芯片編程。

      [1] 王超藝,王宜懷.飛思卡爾S08系列機器碼文件下載軟件的開發(fā)[J].計算機應(yīng)用與軟件,2011,28(12):256-258.

      [2] Freescale. HCS08 Family Reference Manual Rev.2[Z].2007.

      [3] Freescale. Introduction to HCS08 Background Debug Mode[Z]. 2006. [4] 徐清,王宜懷.嵌入式微控制器MC68HC912B32背景調(diào)試模式設(shè)計與實現(xiàn)[J].電子技術(shù)應(yīng)用,2006,32(6):61-64.

      [5] 王宜懷,張書奎,王林.嵌入式技術(shù)基礎(chǔ)與實踐(第2版)[M].北京:清華大學(xué)出版社,2011.[6] 邵貝貝.單片機嵌入式應(yīng)用的在線開發(fā)方法[M].北京:清華大學(xué)出版社,2004.

      Design and implementation of portable off-line programmer of wireless multi-circuit lighting controller

      Liu Xuelan1, Tian Hongwei2

      (1. Department of Information Engineering, Jiangsu Agri-animal Husbandry Veterinary College,Taizhou 225300, China;2. Applied Technical School, Soochow University, Suzhou 215325, China)

      Programmers for HCS08 series MCU are almost in-line programmer at present and inconvenient to carry in out-door environment. There are only few brand off-line programmers and they are too expensive. The portable off-line programmer of AW series MCU is designed here according to the actual demand. Based on the understanding of HCS08 CPU core and background debug controller, the programmer with SD card and EEPROM storage is designed, with its software designed to guarantee program-burning reliability, which is also the highlight. The programmer has been used in some projects and runs well in stability and translatability.

      MCU programmer; background debug mode; off-line downloading; controller

      TP393

      A

      10.19358/j.issn.1674- 7720.2016.24.028

      劉雪蘭, 田宏偉. 多回路無線照明控制器MCU脫機下載器的設(shè)計與實現(xiàn)[J].微型機與應(yīng)用,2016,35(24):98-100.

      2016-07-28)

      劉雪蘭(1979-),通信作者,女,碩士,講師,主要研究方向:智能信息處理及嵌入式系統(tǒng)應(yīng)用。E-mail:liuxl79311@sohu.com

      田宏偉(1981-),男,碩士,高級工程師,主要研究方向:嵌入式系統(tǒng)應(yīng)用。

      猜你喜歡
      飛思脫機低電平
      數(shù)字電路中“邏輯非”的用法辨析
      鐵道車輛高/低電平信號智能發(fā)生器設(shè)計
      淺快呼吸指數(shù)相關(guān)指標預(yù)測脫機結(jié)局的價值分析
      改良程序化脫機在老年患者呼吸機撤離中的應(yīng)用
      中心靜脈血氧飽和度監(jiān)測在機械通氣患者脫機過程中的意義※
      2017款凱迪拉克2.8L/3.0L/3.2L/3.6L車型低電平參考電壓總線電路圖
      飛思卡爾AC60鋰電池管理系統(tǒng)設(shè)計
      兩種不同脫機方法在ICU老年機械通氣患者拔管中的應(yīng)用
      飛思卡爾小尺寸Kinetis KL03釋放物聯(lián)網(wǎng)應(yīng)用的創(chuàng)新動力
      基于飛思卡爾單片機的光電智能小車設(shè)計
      连城县| 柞水县| 仁化县| 蒙山县| 中西区| 瓦房店市| 东丰县| 福建省| 新丰县| 石台县| 沾化县| 舒城县| 淳安县| 靖宇县| 连云港市| 鄂伦春自治旗| 鄱阳县| 海宁市| 和龙市| 阳原县| 西乌| 纳雍县| 乐安县| 固阳县| 阿克陶县| 泽库县| 大渡口区| 夏津县| 闻喜县| 乐都县| 桃江县| 红桥区| 德庆县| 建平县| 荔波县| 宁波市| 涡阳县| 定陶县| 于田县| 天长市| 嘉黎县|