在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > Freescale+HC08+MCU集成開發(fā)環(huán)境的設計

            Freescale+HC08+MCU集成開發(fā)環(huán)境的設計

            作者: 時間:2016-12-02 來源:網(wǎng)絡 收藏
            1 引言

            Freescale(其前身為Motorola半導體部)公司推出的系列MCU,具有單一電源供電、支持在線編程的內部Flash。在線寫入、讀出穩(wěn)定,為研制新型嵌入式應用開發(fā)工具提供了技術基礎。Freescale公司的MCU應用非常廣泛,銷量已多年名列前茅,其中HC08系列MCU,功耗低、運用靈活.占銷量中的重要部分。開發(fā)廉價且實用的Freescale HC08系列MCU的編程調試開發(fā)工具對該系列MCU在我國的推廣應用具有重要價值。目前市面上能支持HC08的集成開發(fā)環(huán)境(IDE).除了CodeWarrior,雖對HC08系列MCU都支持。但系統(tǒng)龐大,功能復雜。價格貴,另外一些高校如清華、復旦等,只能支持某幾款芯片,對于有200多款的HC08 MCU,較大局限,使用不便,不利于應用開發(fā),更不便于教學實踐。

            本實驗室從1999年開始研制集成開發(fā)環(huán)境.在分析了各種嵌入式系統(tǒng)集成開發(fā)系統(tǒng)后.推出了一種新型的HC08MCU通用型的集成開發(fā)環(huán)境.每年不斷進行改進升級.現(xiàn)已基本成型。本IDE具有結構清晰、操作簡潔的特點.集成了程序編輯、編譯、下載、聯(lián)機調試、硬件評估等功能,有較好的實用前景。在闡述本IDE的設計基礎上,本文簡要分析了IDE的Pc方軟件主要技術要點和簡單介紹了本IDE配套的硬件系統(tǒng)的基本結構。

            2 設計思路與技術優(yōu)勢

            對HC08系列MCU。進行深入的研究。經(jīng)過長期的實踐與探索,研制了新型的嵌入式應用系統(tǒng)的集成開發(fā)環(huán)境。軟件分兩大部分:PC方軟件和MCU方軟件,配套硬件分三大部分:PC機、寫入器(也稱調試器或編程器)和實驗箱(或評估板或嵌入式產(chǎn)品)。

            1) IDE主要設計思路是:

            (1)PC方軟件提供程序管理、編輯、編譯、下載、聯(lián)機調試等功能,源程序經(jīng)過編輯和編譯成S19目標文件后.通過USB接口與寫入器中的MCU(稱主控MCU)方軟件通信.將該目標文件發(fā)給主控MCU,然后寫人器又與實驗箱MCU(稱目標MCU)芯片串行通信,將該目標文件寫入目標MCU芯片的FIash中。成功后可以試運行。檢驗目標MCU中的程序能否正常運行.否則聯(lián)機調試該程序。

            (2)HC08系列MCU間資源差異較大,進入監(jiān)控的支撐電路有差別,為了設計適用于不同MCU的通用IDE,解決這些問題是關鍵,具體方法參考文獻,即MCU間資源差異的問題是通過PC機中的數(shù)據(jù)庫保存其差異而得到解決。進入監(jiān)控的支撐電路問題是通過在PC機和目標MCU間加一個主控MCU而得到解決從而為實現(xiàn)通用的IDE奠定基礎。

            (3)作為以MC908GP32(舊稱MC68HC908GP32)MCU為藍本進行“單片機原理與嵌入式應用”教學的實驗箱配套軟件,實驗箱提供了基本實驗所需的接線端口.還提供了擴展實驗的接線排孔。運用本開發(fā)環(huán)境根據(jù)實驗項目開發(fā)軟件要求.可完成所有基于MC908GP32 MCU的接口實驗。對于Freescale該系列其他MCU??赏ㄟ^置換核心板(MCU與其支撐電路構成的),而達到更換HC08 MCU的目的,便于進行其他MCU的實驗。

            2) 本開發(fā)環(huán)境與傳統(tǒng)的仿真器相比具有如下技術優(yōu)勢:

            (1)傳統(tǒng)仿真器的“仿真系統(tǒng)”一般是使用軟件仿真的技術,在宿主機上通過軟件的方式實現(xiàn)目標機的功能。這種方式雖可以模擬大部分目標機的功能。但是這種方式并非是真正的目標系統(tǒng).往往在此基礎上開發(fā)出來的程序.一旦移到目標系統(tǒng)上運行.卻會出現(xiàn)一些在仿真軟件中無法遇到的問題。而本開發(fā)環(huán)境是基于硬件之上的,對目標系統(tǒng)可以達到完美的模擬,即在本開發(fā)環(huán)境上開發(fā)出來的程序在移到目標系統(tǒng)上時,由于硬件基礎相同.因此不會發(fā)生任何兼容性問題。

            (2)與傳統(tǒng)仿真器相比,提供的調試功能為在線調試方式,操作界面為Windows界面,操作猶如調試純軟件,方法簡潔。

            3 集成開發(fā)環(huán)境的設計

            為方便開發(fā)和調試嵌入式系統(tǒng),設計了基于C編譯的HC08 MCU集成開發(fā)環(huán)境.軟件總體分兩大部分:PC方軟件與MCU方軟件.PC方軟件可分為脫機編輯編譯和聯(lián)機下載調試兩部分。MCU方軟件設計請參考文獻。

            PC方軟件采用標準的Win32界面.利用Visual C++MFC編寫.主界面設計如圖1所示,其中左邊為工程管理窗口,右邊為代碼編輯窗口.下面為編譯輸出及調試窗口。


            圖1 集成開發(fā)環(huán)境主界面

            本IDE的主要設計功能和技術特點如下:

            (1)標準的Win32視窗界面,充分體現(xiàn)Windows平臺的特性。具有安裝方便、操作簡潔等特點。并配置內容豐富的幫助系統(tǒng),幫助用戶快速入門,學習HC08 MCU的編程方法。

            (2)工程管理。工程管理分別對c文件和頭文件兩種源文件進行管理.對匯編也支持.在主界面上以文件樹的形式呈現(xiàn)。工程屬性根據(jù)編程要求而設置,通過“編譯設置”對話框進行,它包括MCU類型、Flash區(qū)程序的起始地址、RAM起始地址和終止地址、堆棧起始地址等設置。工程管理的主要功能是管理源程序文件和生成編譯器所需的文件。在保存T程的同時后臺生成了該工程的make file文件(包含編譯選項和工程屬性)、src文件(包含工程中使用到的文件和資源)。

            (3)下載程序。下載程序是將生成的目標機器碼寫入目標MCU中的.包括通信模塊和S19文件分析模塊兩部分。通信模塊負責實現(xiàn)PC機與主控MCU的USB通信。發(fā)送命令、參數(shù)和程序代碼等,和主控MCU一起對目標MCU完成相應的擦除、寫入和調試等操作功能。S19文件分析模塊負責先對S19文件進行分析和打包.將文件的內容轉換成便于傳輸?shù)母袷?,并判斷文件中程序的起始地址、頁?shù)以及是否越界等.然后進行發(fā)送通信。

            (4)調試器以及寄存器查看器和內存變量查看器。寫入器也兼有調試功能.所以也稱調試器。調試的功能設計是參照通用IDE的調試方法而設計的,進入調試模式(即監(jiān)控模式),可以單步調試或斷點調試。調試時可以通過寄存器查看器和內存變量查看器觀察目標MCU運行的當前值,以便發(fā)現(xiàn)程序問題所在.實現(xiàn)在線調試功能。

            4 技術設計要點

            在系統(tǒng)的開發(fā)設計過程中,遇到許多的問題。下面把主要問題的一些處理方法作簡要分析說明,供大家借鑒。限于篇幅.HC08系列MCU的調試器通用性設計具體見文獻。

            4.1中文和語法高亮的實現(xiàn)

            語法高亮在集成開發(fā)系統(tǒng)的代碼編寫過程中是主要的問題之一。已有的一些控件雖然語法高亮功能比較全,但是對中文支持不是很好.最突出的就是半個漢字問題(在選擇和刪除字符的時候漢字當兩個字符處理,一次只能刪除半個,會出現(xiàn)亂碼)。使用MFC的RichEdit控件雖可以解決中文問題,但又沒有語法高亮的功能,為此,就以RichEdit為基類編寫了語法高亮類,才解決語法高亮和中文的顯示問題。其主要編程的思路是:通過捕獲用戶鍵盤輸入的事件.判斷用戶輸入的單詞是否為c語言中的關鍵字.如果是,則改變其顏色。

            4.2 GNU編譯器的整合

            本系統(tǒng)使用的是由GNU移植的HC08編譯器,該軟件不僅是開源、免費的。而且執(zhí)行效率高,功能強,對c代碼具有優(yōu)化的功能。但是唯一的問題是。該編譯器是Win32控制臺程序,輸出的編譯信息都是在不同控制臺下的.不易整合在一個IDE中。更甚的是編譯器的輸出信息都是非標準的輸出流,無法使用ShellExecute函數(shù)捕獲,也無法輸出到管道文件中。為了解決該問題參考了一些國內外的資料,受此啟發(fā)。采用CreateThread的方法,也就是創(chuàng)建子線程的辦法,通過線程的管道,將編譯輸出信息捕獲.并顯示在窗口中。同時在此基礎上也實現(xiàn)了從編譯錯誤信息跳轉到源代碼的功能。

            4.3 PC機與寫入器的USB通信設計

            寫入器和PC機建立USB通信除了MCU與PC的通信程序設計外.PC方必須要有相應的驅動程序。本設計使用的USB開發(fā)包USBIO_EL是由德國Thesycon Systemsoftware&Consulting GmbH公司提供的免費軟件,該開發(fā)包提供的功能是限制版本的USB驅動程序usbio_el.sys和USB動態(tài)鏈接庫usbiocom.dll文件。usbio_el.sys 的限制部分為:廠商ID只能為0x0C70.僅支持一個中斷IN端點和中斷OUT端點,支持的端點緩沖區(qū)大小最大為8字節(jié)。而本設計寫入器中使用的MC68HC908JB8芯片的USB模塊恰好滿足限制版本的條件,故可使用該驅動程序;usbiocom.dll可以直接加載至程序中,使用其中的類;表1為本設計中所用到的該庫中的類及函數(shù)的說明??梢哉{用這些類及其函數(shù)實現(xiàn)建立連接、發(fā)送數(shù)據(jù)和接收數(shù)據(jù)的程序功能,從而實現(xiàn)指令的通信以及程序代碼的傳輸。

            上一頁 1 2 下一頁

            評論


            技術專區(qū)

            關閉