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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > IAR中創(chuàng)建STM32工程步驟(寄存器版本)

          IAR中創(chuàng)建STM32工程步驟(寄存器版本)

          作者: 時(shí)間:2016-11-21 來源:網(wǎng)絡(luò) 收藏
          先說明,是基于寄存器編程的。

          1.從官網(wǎng)下載STM32固件庫(kù)。我用的是3.5

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

          2.創(chuàng)建一個(gè)STM32文件夾(不是存放工程的),存放創(chuàng)建STM32工程所需的基本文件。以后再次創(chuàng)建工程時(shí),只需把這個(gè)文件夾的東西拷到相應(yīng)工程里面即可。

          此文件夾里面有CMSIS文件夾和Statup文件夾。

          2.找到解壓后的Libraries->CMSIS->CoreSupport,把里面的core_cm3.h和core_cm3放進(jìn)上面的CMSIS文件夾。

          找到Libraries->CMSIS->DeviceSupport->ST->STM32F10X->Statup->IAR里面的啟動(dòng)文件,這個(gè)啟動(dòng)文件根據(jù)STM32具體類型選擇,我用的是STM32F103RBT6,所以

          選擇startup_stm32f10x_md.s,把此文件粘貼到上訴Statup文件夾下。

          找到Libraries->CMSIS->DeviceSupport->ST->STM32F10X-下的3個(gè)文件,stm32f10x.h,system_stm32f10x.c,system_stm32f10x.h把三個(gè)文件添加到上訴CMSIS文件夾 中。

          3.用IAR創(chuàng)建一個(gè)STM32工程,選擇器件型號(hào),選擇調(diào)試類型等。。。

          4.在左邊工程目錄一欄創(chuàng)建CMSIS和Statup文件夾,然后把第二步驟中的文件夾拷到當(dāng)前工程目錄,然后Add Files,把文件添加到相應(yīng)目錄。并在options里面c/c++ Complier 添加頭文件的路徑說明。

          5.記得在options里面c/c++ Complier的預(yù)處理里面的Defined symbols里面添加你使用的STM32類型宏定義STM32F10X_MD,當(dāng)然根據(jù)器件不同有所不同。

          補(bǔ)充說明:編譯過程中CM3.h報(bào)錯(cuò)。幾個(gè)函數(shù)的問題,我用的是IAR6.1,開始不知道什么問題,網(wǎng)上也沒有找到解決辦法。索性把那報(bào)錯(cuò)的幾個(gè)函數(shù)給注釋掉了。然后就沒有 錯(cuò)誤了,編譯連接都沒有問題了。但是這么做不知道會(huì)不會(huì)帶來什么額外的影響,暫時(shí)不管吧。最后寫了個(gè)點(diǎn)亮LED的程序測(cè)試,JLINK下載,都沒有問題,至此,基本的環(huán) 境就搭成了。



          關(guān)鍵詞: IARSTM32工程步

          評(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); })();