<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STM32開(kāi)發(fā)環(huán)境(工具)之Keil MDK 介紹

          STM32開(kāi)發(fā)環(huán)境(工具)之Keil MDK 介紹

          作者: 時(shí)間:2016-11-27 來(lái)源:網(wǎng)絡(luò) 收藏

          STM32微處理器基于ARM核,所以很多基于ARM嵌入式開(kāi)發(fā)環(huán)境都可用于STM32開(kāi)發(fā)平臺(tái)。開(kāi)發(fā)工具都可用于STM32開(kāi)發(fā)。選擇合適的開(kāi)發(fā)環(huán)境可以加快開(kāi)發(fā)進(jìn)度,節(jié)省開(kāi)發(fā)成本。本章將先對(duì)STM32常用的開(kāi)發(fā)工具Keil MDK和IAR EWARM進(jìn)行簡(jiǎn)單介紹,然后結(jié)合STM32_SK仿真評(píng)估板和STM32F103C的開(kāi)發(fā)板講解STM32片上資源使用,最后給出一個(gè)基于STM32的數(shù)據(jù)采集器的應(yīng)用實(shí)例。

          5.1 Keil MDK介紹
          Keil是德國(guó)知名軟件公司Keil(現(xiàn)已并入ARM 公司)開(kāi)發(fā)的微控制器軟件開(kāi)發(fā)平臺(tái),是目前ARM內(nèi)核單片機(jī)開(kāi)發(fā)的主流工具。Keil提供了包括C編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器在內(nèi)的完整開(kāi)發(fā)方案,通過(guò)一個(gè)集成開(kāi)發(fā)環(huán)境(uVision)將這些功能組合在一起。uVision當(dāng)前最高版本是uVision3,它的界面和常用的微軟VC++的界面相似,界面友好,易學(xué)易用,在調(diào)試程序,軟件仿真方面也有很強(qiáng)大的功能。因此很多開(kāi)發(fā)ARM應(yīng)用的工程師,都對(duì)它十分喜歡。

          5.1.1 開(kāi)發(fā)過(guò)程及集成開(kāi)發(fā)環(huán)境簡(jiǎn)介
          1. Keil的軟件開(kāi)發(fā)周期
          使用Keil來(lái)開(kāi)發(fā)嵌入式軟件,開(kāi)發(fā)周期和其他的平臺(tái)軟件開(kāi)發(fā)周期是差不多的,大致有以下幾個(gè)步驟:
          1. 創(chuàng)建一個(gè)工程,選擇一塊目標(biāo)芯片,并且做一些必要的工程配置。
          2. 編寫(xiě)C或者匯編源文件。
          3. 編譯應(yīng)用程序。
          4. 修改源程序中的錯(cuò)誤。
          5. 聯(lián)機(jī)調(diào)試。
          下面這種結(jié)構(gòu)圖完整描述了Keil開(kāi)發(fā)軟件的整個(gè)過(guò)程。

          本文引用地址:http://www.ex-cimer.com/article/201611/322372.htm

          2. uVision3 集成開(kāi)發(fā)環(huán)境
          uVision3 IDE是一款集編輯,編譯和項(xiàng)目管理于一身的基于窗口的軟件開(kāi)發(fā)環(huán)境。uVision3集成了C語(yǔ)言編譯器,宏編譯,鏈接/定位,以及HEX文件產(chǎn)生器。uVision3具有如下特性:
            功能齊全的源代碼編輯器,
            用于配置開(kāi)發(fā)工具的設(shè)備庫(kù),
            用于創(chuàng)建工程和維護(hù)工程的項(xiàng)目管理器,
            所有的工具配置都采用對(duì)話框進(jìn)行,
            集成了源碼級(jí)的仿真調(diào)試器,包括高速CPU和外設(shè)模擬器,
            用于往Flash ROM下載應(yīng)用程序的Flash編程工具,
            完備的開(kāi)發(fā)工具幫助文檔,設(shè)備數(shù)據(jù)表和用戶使用向?qū)А?br />uVision3具有良好的界面風(fēng)格,下圖是一個(gè)典型的調(diào)試時(shí)的窗口。


            工程區(qū):用于訪問(wèn)文件組和文件,調(diào)試是可以查看CPU寄存器。
            輸出窗口:顯示編譯結(jié)果,以便快速查找錯(cuò)誤的地方,同時(shí)還是調(diào)試命令輸入輸出窗口,也可以用于顯示查找結(jié)果。
            內(nèi)存窗口:顯示指定地址內(nèi)村里的內(nèi)容。
            查看和調(diào)用棧窗口:用于查看和修改變量的值,并且現(xiàn)實(shí)當(dāng)前函數(shù)調(diào)用樹(shù)。
            代碼窗口:用于查看和編輯源文件。
            外設(shè)對(duì)話框:檢查微控制的片上外設(shè)的狀態(tài)。

          3. ULINK USB-JTAG接口適配器
          ULINK USB-JTAG是一個(gè)用于連接PC USB口和開(kāi)發(fā)板JTAG口的小硬件適配器。通過(guò)ULINK你可以在真實(shí)的目標(biāo)板上創(chuàng)建,下載和測(cè)試嵌入式應(yīng)用。ULINK支持如下操作:
            下載目標(biāo)程序。
            檢查內(nèi)存和寄存器。
            單步運(yùn)行程序。
            插入多個(gè)斷點(diǎn)。
            實(shí)時(shí)運(yùn)行程序
            燒寫(xiě)FLASH存儲(chǔ)器


          5.1.2 工程管理
          在項(xiàng)目開(kāi)發(fā)中,并不是僅有一個(gè)源程序就行了,還要為這個(gè)項(xiàng)目選擇CPU(Keil支持?jǐn)?shù)百種CPU,而這些CPU的特性并不完全相同),確定編譯、匯編、連接的參數(shù),指定調(diào)試的方式,有一些項(xiàng)目還會(huì)有多個(gè)文件組成等,為管理和使用方便,Keil使用工程(Project)這一概念,將這些參數(shù)設(shè)置和所需的所有文件都加到一個(gè)工程中,只對(duì)工程而不是對(duì)單一的源程序進(jìn)行編譯(匯編)和連接等操作。下面我們就以一個(gè)簡(jiǎn)單的例子HelloWorld來(lái)講解如何建立工程和配置工程。在這個(gè)例子里,我們將實(shí)現(xiàn)開(kāi)發(fā)板上的LED1閃爍,本例使用STM32F103C開(kāi)發(fā)板為目標(biāo)板。

          5.1.2.1 新建工程
          點(diǎn)擊菜單“Project”,選擇“New uVision Project”,這是將會(huì)出現(xiàn)一個(gè)對(duì)話框,要求給將要建立的工程起一個(gè)名字。
          選擇你要保存的路徑,輸入工程文件的名字,這里我們就叫HelloWorld,uVision3工程文件的后綴為“.uv2”,然后點(diǎn)擊“Save”。 這時(shí)會(huì)彈出一個(gè)對(duì)話框要求你選擇目標(biāo)設(shè)備的型號(hào)。


          你可以根據(jù)你使用的處理器來(lái)選擇,如果您所使用的處理器型號(hào)在列表中找不到,也可以找一款與您使用的相兼容的型號(hào)來(lái)代替。這里我們選擇STM32F103C8,如圖所示,右邊一欄是對(duì)這個(gè)芯片的基本的說(shuō)明,然后點(diǎn)擊“OK”。


          有些芯片會(huì)提供啟動(dòng)代碼,我們這個(gè)時(shí)候點(diǎn)擊“Yes”,到此一個(gè)工程就建立好了。

          5.1.2.2 配置工程
          工程建立好了之后,還要對(duì)工程進(jìn)行進(jìn)一步的設(shè)置,以滿足要求。
          首先用鼠標(biāo)右鍵(注意用右鍵)點(diǎn)擊左邊工程窗口的“Target 1”,會(huì)出現(xiàn)一個(gè)菜單,選擇“Options for Target Target 1”(也可以通過(guò)點(diǎn)擊工程窗口的Target 1”,然后使用菜單“Project”->“Options for Target Target 1”),即出現(xiàn)工程配置的對(duì)話框,如下圖所示:


          這個(gè)對(duì)話框很復(fù)雜,而且根所選擇的芯片有關(guān),這里共有10個(gè)頁(yè)面,絕大多數(shù)選擇默認(rèn)配置即可,下面將對(duì)一些需要注意的配置簡(jiǎn)單介紹一下。
          1. Output標(biāo)簽頁(yè)的設(shè)置


          Select Folder for Objects:選擇編譯之后的目標(biāo)文件存儲(chǔ)在哪個(gè)目錄里,默認(rèn)位置為工程文件的目錄里。
          Name of Executable:生成的目標(biāo)文件的名字,缺省是工程的名字。
          Create Executable:生成OMF以及HEX文件。OMF文件名同工程文件名但沒(méi)有帶擴(kuò)展名。
          Debug Information:用于Debug版本,生成調(diào)試信息,否則的話無(wú)法進(jìn)行單步調(diào)試。
          Create Batch File:生成用于實(shí)現(xiàn)整個(gè)編譯過(guò)程的批處理文件,使用這個(gè)文件可以脫離IDE對(duì)省程序進(jìn)行編譯。
          Create Hex File:這個(gè)選項(xiàng)默認(rèn)情況下未被選中,如果要寫(xiě)片做硬件實(shí)驗(yàn)就必須選中該項(xiàng)。這一點(diǎn)是初學(xué)者易疏忽的,在此特別提醒注意一定要要選中,否則編譯之不生成Hex文件。
          Big Endian:編碼格式,與CPU相關(guān),如果CPU采用的是Big Endian編碼則勾選上。
          Browse Information:產(chǎn)生用于在源文件快速定位的信息。
          Create Library:生成lib庫(kù)文件,默認(rèn)不選。
          在我們剛剛新建的HelloWorld工程中,更改了三個(gè)地方,在工程目錄下新建了一個(gè)Output目錄保存目標(biāo)文件,以避免和源文件混在一起。另外選中了Create Hex File和Browse Information,如上圖所示。
          2. C/C++標(biāo)簽頁(yè)的設(shè)置



          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();