精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

IAR for ARM系列教程(一) _新建軟件工程詳細(xì)過程

黃工的嵌入式技術(shù)圈 ? 來源:黃工的嵌入式技術(shù)圈 ? 2020-03-20 14:54 ? 次閱讀

Ⅰ、寫在前面

本文使用目前(2016年11月25日)最新版本的IAR for ARMV7開發(fā)環(huán)境、以STM32處理器為例給大家講述新建一個軟件工程的詳細(xì)過程。

其它版本IAR,其它處理器新建軟件工程的過程類似,或許存在略微的差異,但也可以參考本文內(nèi)容。

為方便廣大STM32學(xué)習(xí)者,我將在下面把STM32F0 - F4各個系列芯片新建好的Demo軟件工程、相關(guān)的工具和文檔提供給大家下載。

本文內(nèi)容已經(jīng)整理成PDF文件,提供給大家下載:

http://pan.baidu.com/s/1eSeDSu2

Ⅱ、本文要點(diǎn)

網(wǎng)上很多人問:“我之前用IAR for ARMV5或V6建立好的工程,在IED升級到V7之后,打開以前的工程,編譯出來一大堆錯誤?”。

IAR for ARM在版本升級之后,工具鏈存在略微的差異,下面新建工程過程將會說到這些問題。

按照Keil(MDK-ARM)新建軟件工程的思路,將內(nèi)容分為準(zhǔn)備工作和新建工程兩大步驟來講述。

本文基于STM32F1系列芯片為例來講述(其它芯片類似),將簡單描述一下準(zhǔn)備STM32F1標(biāo)準(zhǔn)外設(shè)庫、Demo源代碼(LED閃爍例程)。

本文講述的內(nèi)容以簡單為主,只講述新建工程中常規(guī)的配置,其他大部分使用默認(rèn)配置。更多詳細(xì)配置和教程敬請等待我公眾號或博客的更新。

Ⅲ、 準(zhǔn)備工作

俗話說“磨刀不誤砍柴工”,準(zhǔn)備工作雖然看上去與題目關(guān)系不大,但也是本文的重點(diǎn),做好了準(zhǔn)備工作,后面新建軟件工程的工作就很容易實現(xiàn)了。

1.安裝IAR for ARM軟件工具

本文必備工具,這里不多說,詳情請看我的另一篇文章【IAR for ARM介紹、下載、安裝與注冊】:

博客:

http://blog.csdn.net/ybhuangfugui/article/details/52562533

PDF:http://pan.baidu.com/s/1eSeDSu2

2.STM32標(biāo)準(zhǔn)外設(shè)庫下載

官網(wǎng)下載鏈接(需要ST賬號登陸):

http://www.st.com/content/st_com/en/products/embedded-software/mcus-embedded-software/stm32-embedded-software.html?querycriteria=productId=SC961

根據(jù)芯片型號下載對應(yīng)的標(biāo)準(zhǔn)外設(shè)庫(如芯片為STM32F103ZE,則下載對應(yīng)的STM32F10x_StdPeriph_Lib),如下圖:

也可以到我百度網(wǎng)盤下載(和官網(wǎng)一樣):

http://pan.baidu.com/s/1qYbBKMK

3.整理工程文件夾

這一小節(jié)的內(nèi)容可根據(jù)自己習(xí)慣來整理,我整理的文件及文件夾結(jié)構(gòu)是按照常規(guī)的整理方式。你如果覺得合理,可以引用;如果覺得不習(xí)慣這個結(jié)構(gòu)方式,可以自己整理。

首先建立一個存放工程文件的文件夾:STM32F103ZE(IAR)_Demo

A.提取ST標(biāo)準(zhǔn)外設(shè)庫文件

ST官網(wǎng)下載的標(biāo)準(zhǔn)外設(shè)庫里面有很多源代碼文件,但我們只需要使用部分文件。因此,需要提取使用的文件及文件夾到我們的工程中。

解壓“STM32F10x_StdPeriph_Lib”,可以看到在主目錄下面有四個文件夾:

_htmresc:圖片文件夾(不提取)

Libraries:庫文件夾(提取大部分)

Project: 示例工程(提取少部分)

Utilities: 公共代碼、評估板代碼(不提?。?/p>

我們使用標(biāo)準(zhǔn)外設(shè)庫主要提取的文件是Libraries下面的文件,但有些文件及文件夾也是多余的。因此,我將多余的文件及文件夾去掉,保留需要的文件和文件夾。

這里強(qiáng)調(diào)一點(diǎn):Libraries里面的startup啟動文件有些需要修改。我們使用之前的庫(如F1、F2的庫),這些庫是使用老版本的IAR for ARM V5或V6版本編寫的,在V7版本上使用這些庫就不兼容,需要將textREORDER改為textNOROOT:REORDER。

B.新建文件和文件夾

除了標(biāo)準(zhǔn)外設(shè)庫文件之外,我們需要建立存放自己代碼的文件和文件夾。我這里主要需要新建三個文件夾:

App: 應(yīng)用部分代碼

Bsp: 底層部分代碼

Doc: 說明文檔

在自己新建的文件夾下面還需要新建自己的文件,文件里面添加源代碼,我們提供的Demo工程,實現(xiàn)的功能比較簡單,就是一個LED閃爍。這里不描述,具體可以在最后下載查看。

上面兩個步驟完成之后,我們就可以看到在“STM32F103ZE(IAR)_Demo”下面整理的文件夾:

至此,準(zhǔn)備工作算完成了,上面提取的文件、新建的文件里面具體的內(nèi)容請下載Demo工程查看。

Ⅳ、新建軟件工程

新建一個簡單、基礎(chǔ)的軟件工程大概需要有三個步驟:創(chuàng)建工程、添加文件和配置工程。

上面的準(zhǔn)備工作做好之后,就可新建自己的軟件工程了,下面將一步一步講述從零開始新建一個軟件工程的詳細(xì)過程。

1.創(chuàng)建工程

創(chuàng)建工程的步驟是基礎(chǔ),也比較簡單。

A.打開軟件,創(chuàng)建新工程(Project ->CreateNew Project)

B.創(chuàng)建一個空工程

C.選擇路徑,保存名稱

D.空基礎(chǔ)工程

至此,一個空的基礎(chǔ)工程就創(chuàng)建好了,需要進(jìn)一步添加文件到工程和配置工程。

2.添加文件

準(zhǔn)確的來說,應(yīng)該是添加組(文件夾)和添加文件。直接的說,就是將你自己的源代碼(前面提取的庫、新建的文件等)添加到工程中。

這里的工程項目管理可根據(jù)自己的想法來定義(類似于自己分類、命名文件夾和文件),我這里按照常規(guī)的方式進(jìn)行管理項目。

IAR和Keil組管理的區(qū)別:

IAR可以添加多級組,類似于文件夾下可以再建文件夾,一直下去。

Keil只能添加單級組,類似于文件夾下面只能添加文件,而不能在添加文件夾。

為了簡單、遵循Keil組結(jié)構(gòu),我們在IAR中分組方式也按照Keil方式分組,先在工程中添加組,再在組中添加文件......一次循環(huán)下去直到完成。

A.工程中添加組

B.填寫組的名稱 -> OK

C.組中添加文件

D.按住Ctrl,鼠標(biāo)選中要添加的文件

E.依次添加(按照上面步驟循環(huán)),直到添加完成

3.配置工程

配置工程對于初學(xué)者來說,大部分內(nèi)容只需要默認(rèn)即可,這里只講述幾個常見的配置,能滿足基本的功能。更多配置可進(jìn)入我微信公眾號或博客查看。

A.進(jìn)入配置選項

B.選擇器件

C.庫配置Library Configration

第一Library:如果需要使用某些標(biāo)準(zhǔn)的庫函數(shù)接口(如我們使用的printf and scanf),就需要選擇Full(見下圖)。

第二CMSIS:是微控制器軟件接口標(biāo)準(zhǔn)(Cortex Microcontroller Software Interface Standard)的意思。IAR for ARM在V5和 V6、V7版本之間存在差異,很多人用新版本IAR編譯以前工程出現(xiàn)錯誤的原因就在于此(如STM32F1的庫就使用較老版本的CMSIS,我們使用新版本IAR就需要勾選這里)。

D.預(yù)處理Preprocessor - 添加路徑

添加的路徑最好是相對路徑,而不是絕對路徑。使用絕對路徑工程位置改變之后就找不到文件,就會出錯??梢渣c(diǎn)擊按鈕選擇路徑,也可以通過復(fù)制文件路徑進(jìn)行配置。

·

·

一步一步添加,直到最后完成

·

·

E.預(yù)處理Preprocessor - 預(yù)定義

這里的預(yù)定義類似于在源代碼中的#define xxx 這種宏定義。這里的STM32F10X_HD可以在stm32f10x.h中打開即可,USE_STDPERIPH_DRIVER這個宏定義我已經(jīng)定義在在stm32f10x.h文件中。

F.輸出Hex文件

很多初學(xué)的朋友都會問怎么輸出 Hex( 可直接下載的程序文件),只需要按照下面配置即可輸出Hex文件。

G.選擇下載調(diào)試工具

根據(jù)自己情況選擇的下載調(diào)試工具。使用ST-Link的朋友需要注意,有些時候ST-Link默認(rèn)的接口是JTAG,需要改為SWD才能使用(見下圖)。

Ⅴ、下載

為方便廣大STM32學(xué)習(xí)者,我將常見的STM32“Demo軟件工程”已經(jīng)建好,里面包含Keil(MDK-ARM)新建的工程供大家下載。

STM32F0工程模板:

http://pan.baidu.com/s/1pKSkSxt

STM32F1工程模板:

http://pan.baidu.com/s/1c1AWupM

STM32F2工程模板:

http://pan.baidu.com/s/1o8yGWg6

STM32F3工程模板:

http://pan.baidu.com/s/1boVXh2f

STM32F4工程模板:

http://pan.baidu.com/s/1qYzYMuS

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    134

    文章

    9054

    瀏覽量

    366827
  • STM32
    +關(guān)注

    關(guān)注

    2266

    文章

    10873

    瀏覽量

    354832
  • IAR
    IAR
    +關(guān)注

    關(guān)注

    5

    文章

    345

    瀏覽量

    36625
收藏 人收藏

    評論

    相關(guān)推薦

    IAR全面支持矽力杰SA32系列車規(guī)MCU

    在全球嵌入式系統(tǒng)開發(fā)軟件領(lǐng)域,IAR以其卓越的解決方案而享有盛譽(yù)。近日,IAR與矽力杰半導(dǎo)體達(dá)成戰(zhàn)略合作,共同宣布即將推出的IAR Embedded Workbench for
    的頭像 發(fā)表于 06-27 17:27 ?844次閱讀

    嵌入式軟件工程師如何提升自己?

    嵌入式軟件工程師如何提升自己? 作為名嵌入式軟件工程師,在這個充滿機(jī)遇和挑戰(zhàn)的領(lǐng)域里,如何提升自己顯得非常重要,它決定了你未來的發(fā)展方向和成就。接下來,我們起探討
    發(fā)表于 06-12 11:20

    索尼誠邀軟件工程師參與PS免費(fèi)手游平臺設(shè)計

    據(jù)悉,近日,澳大利亞知名媒體TweakTown發(fā)現(xiàn),索尼互動娛樂正在為其旗下的PlayStation Studios Mobile招募名資深的軟件工程師,負(fù)責(zé)設(shè)計PlayStation的免費(fèi)手機(jī)游戲平臺。
    的頭像 發(fā)表于 05-23 17:08 ?696次閱讀

    芯海應(yīng)用筆記:通用 MCU 基于 IAR 芯片包 IAR9 開發(fā)指南

    芯??萍寂c IAR Systems 達(dá)成合作,IAR Embedded Workbench for Arm 已全面支持芯??萍糃S32F103X、CS32F03X、 CS32L010X 等系列
    發(fā)表于 05-16 11:52

    嵌入式軟件工程師和硬件工程師的區(qū)別?

    嵌入式軟件工程師和硬件工程師的區(qū)別? 嵌入式軟件工程師 嵌入式軟件工程師是軟件開發(fā)領(lǐng)域中的種專
    發(fā)表于 05-16 11:00

    IAR FOR ARMIAR FOR STM8無法共存怎么解決?

    STM8版本:EWSTM8-3111 安裝完現(xiàn)象就是,原來STM32 IAR工程,無法正常打開。點(diǎn)擊后后默認(rèn)變成是STM8的IDE。修改默認(rèn)打開軟件和路徑也不行。因為安裝完都叫 在軟件
    發(fā)表于 04-07 07:39

    IAR全面支持小華全系芯片,強(qiáng)化工控及汽車MCU生態(tài)圈

    來源:IAR IAR Embedded Workbench for Arm已全面支持小華半導(dǎo)體系列芯片,加速高端工控MCU和車用MCU應(yīng)用的安全開發(fā) 近日,嵌入式開發(fā)
    的頭像 發(fā)表于 03-13 23:02 ?498次閱讀
    <b class='flag-5'>IAR</b>全面支持小華全系芯片,強(qiáng)化工控及汽車MCU生態(tài)圈

    Cognition發(fā)布首款A(yù)I軟件工程師Devin

    據(jù)報道,Cognition公司今日公布了其首款人工智能軟件工程師——Devin,掀起了打造軟件模式變革的序幕。該產(chǎn)品在SWE-bench代碼測驗中展現(xiàn)出卓越表現(xiàn),甚至超過了部分頂級人類工程師的水準(zhǔn)。
    的頭像 發(fā)表于 03-13 10:57 ?593次閱讀

    IAR推出新版IAR Embedded Workbench for Arm功能安全版

    全球知名的嵌入式系統(tǒng)開發(fā)軟件解決方案供應(yīng)商IAR Systems近日宣布,其旗艦產(chǎn)品IAR Embedded Workbench for Arm功能安全版已更新至最新版本9.50.3。
    的頭像 發(fā)表于 02-22 17:29 ?1329次閱讀

    IAR推出新版IAR Embedded Workbench for Arm功能安全版

    瑞典烏普薩拉,2024年2月20日 – 全球領(lǐng)先的嵌入式系統(tǒng)開發(fā)軟件解決方案供應(yīng)商IAR宣布:推出其旗艦產(chǎn)品IAREmbedded Workbench for Arm功能安全版的最新版本9.50.3。
    的頭像 發(fā)表于 02-21 13:47 ?791次閱讀

    如何構(gòu)建linux開發(fā)環(huán)境和編譯軟件工程、應(yīng)用程序

    前文介紹了如何使用官方提供的鏡像文件啟動開發(fā)板,本文將說明如何構(gòu)建linux開發(fā)環(huán)境和編譯軟件工程、應(yīng)用程序。
    的頭像 發(fā)表于 01-03 12:31 ?1943次閱讀
    如何構(gòu)建linux開發(fā)環(huán)境和編譯<b class='flag-5'>軟件工程</b>、應(yīng)用程序

    嵌入式軟件工程師常用的

    最近我換工作了,看見不同嵌入式軟件工程師用的平臺都不樣,所以我整理了下。PlatformIO:多平臺支持:PlatformIO支持多種嵌入式平臺,包括Arduino、ESP8266、ESP32
    的頭像 發(fā)表于 12-24 08:00 ?631次閱讀
    嵌入式<b class='flag-5'>軟件工程</b>師常用的

    IAR嵌入式解決方案發(fā)布全新版本

    軟件開發(fā)領(lǐng)域?qū)崿F(xiàn)了顯著進(jìn)展,引入了一系列增強(qiáng)功能,例如在Linux上進(jìn)行先進(jìn)的云調(diào)試和仿真。這次更新還包括Arm虛擬硬件(AVH)的集成和針對Linux的增強(qiáng)的IAR C-SPY調(diào)試器
    的頭像 發(fā)表于 12-08 15:17 ?769次閱讀

    嵌入式硬件和軟件哪個好?

    方案,要求理解嵌入式系統(tǒng)架構(gòu),有定的C語言基礎(chǔ),熟悉ARM、protel設(shè)計軟件,有四層板開發(fā)經(jīng)驗。 成為優(yōu)秀的嵌入式硬件開發(fā)工程師需具備以下技能:由需求分析至總體方案、
    發(fā)表于 12-05 15:17

    IAR全面支持恩智浦半導(dǎo)體全新電機(jī)控制芯片S32M2

    IAR Embedded Workbench for Arm已全面支持恩智浦最新的S32系列,可加速軟件定義汽車的車身和舒適性應(yīng)用的開發(fā)
    的頭像 發(fā)表于 11-27 09:27 ?1452次閱讀