www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]新一代嵌入式微處理器STM32F103開(kāi)發(fā)與應(yīng)用

     摘要: 基于Co rtex- M3內(nèi)核的STM 32F103系列芯片是新型的32位嵌入式微處理器, 它是不需操作系統(tǒng)的ARM, 其性能遠(yuǎn)高于51系列單片機(jī), 但開(kāi)發(fā)過(guò)程與51系列單片機(jī)一樣簡(jiǎn)便, 因而在很多應(yīng)用場(chǎng)合可替代51系列單片機(jī)。本文從STM 32F103系列芯片性能特點(diǎn)和片上資源入手, 重點(diǎn)介紹其開(kāi)發(fā)工具以及開(kāi)發(fā)流程。并以溫度測(cè)量為例, 具體說(shuō)明了基于Keil? Vision4軟件的工程建立、源程序編輯、編譯, 基于J- L ink仿真器的程序下載, 程序在線(xiàn)調(diào)試, 片上運(yùn)行等過(guò)程, 最終測(cè)量的溫度轉(zhuǎn)換為數(shù)字量, 通過(guò)串口發(fā)送至PC 機(jī)顯示。

  1 引言

  嵌入式微處理器正越來(lái)越廣泛的應(yīng)用在生產(chǎn)生活的各個(gè)領(lǐng)域, 但是傳統(tǒng)的嵌入式微處理器要么是8位的處理器, 性能有限, 要么是32位基于A(yíng)RM 的微處理器在使用上需要嵌入式操作系統(tǒng)的支持, 比如L inux操作系統(tǒng), 使得系統(tǒng)不夠精煉。這一情況直到ARM 公司推出Cortex- M 內(nèi)核才得以改善, 它無(wú)需操作系統(tǒng),可以像單片機(jī)一樣使用Ke il C 語(yǔ)言進(jìn)行編程, 極大的減少了開(kāi)發(fā)者的工作量。2007年6月, ST 公司及時(shí)推出了一款基于Cortex- M 3內(nèi)核的新型ARM 處理器: STM32系列微處理器。本文以stm32F103處理器為例, 列舉了開(kāi)發(fā)需要用到的各種軟硬件資源及其作用, 較詳細(xì)介紹了處理器開(kāi)發(fā)使用方法, 隨后具體到以溫度傳感器檢測(cè)溫度這一實(shí)際應(yīng)用, 給開(kāi)發(fā)者提供一個(gè)更加直觀(guān)的印象, 目的就是讓開(kāi)發(fā)者能盡快了解熟悉該處理器的特點(diǎn), 掌握該系列處理器的開(kāi)發(fā)使用方法。

  2 STM32F103系列微處理器簡(jiǎn)介

  STM32F103系列微處理器是首款基于A(yíng)RMv7- M體系結(jié)構(gòu)的32位標(biāo)準(zhǔn)RISC (精簡(jiǎn)指令集)處理器, 提供很高的代碼效率, 在通常8位和16位系統(tǒng)的存儲(chǔ)空間上發(fā)揮了ARM 內(nèi)核的高性能。該系列微處理器工作頻率為72MHz,內(nèi)置高達(dá)128K 字節(jié)的Flash存儲(chǔ)器和20K 字節(jié)的SRAM,具有豐富的通用I /O 端口。

  作為最新一代的嵌入式ARM 處理器, 它為實(shí)現(xiàn)MCU 的需要提供了低成本的平臺(tái)、縮減的引腳數(shù)目、降低的系統(tǒng)功耗, 同時(shí)提供了卓越的計(jì)算性能和先進(jìn)的中斷響應(yīng)系統(tǒng)。豐富的片上資源使得STM32F103系列微處理器在多種領(lǐng)域如電機(jī)驅(qū)動(dòng)、實(shí)時(shí)控制、手持設(shè)備、PC 游戲外設(shè)和空調(diào)系統(tǒng)等都顯示出了強(qiáng)大的發(fā)展?jié)摿Α?/p>

  STM32F103系列微處理器主要資源和特點(diǎn)如下:

 ?。?1)多達(dá)51個(gè)快速I(mǎi) /O 端口, 所有I/O口均可以映像到16個(gè)外部中斷, 幾乎所有端口都允許5V 信號(hào)輸入。每個(gè)端口都可以由軟件配置成輸出(推挽或開(kāi)漏)、輸入(帶或不帶上拉或下拉) 或其它的外設(shè)功能口。

 ?。?2) 2個(gè)12位模數(shù)轉(zhuǎn)換器, 多達(dá)16個(gè)外部輸入通道, 轉(zhuǎn)換速率可達(dá)1MH z, 轉(zhuǎn)換范圍為0~ 36V; 具有雙采樣和保持功能; 內(nèi)部嵌入有溫度傳感器, 可方便的測(cè)量處理器溫度值。

 ?。?3)靈活的7路通用DMA 可以管理存儲(chǔ)器到存儲(chǔ)器、設(shè)備到存儲(chǔ)器和存儲(chǔ)器到設(shè)備的數(shù)據(jù)傳輸, 無(wú)須CPU 任何干預(yù)。通過(guò)DMA可以使數(shù)據(jù)快速地移動(dòng), 這就節(jié)?? CPU 的資源來(lái)進(jìn)行其他操作。DMA 控制器支持環(huán)形緩沖區(qū)的管理, 避免了控制器傳輸?shù)竭_(dá)緩沖區(qū)結(jié)尾時(shí)所產(chǎn)生的中斷。它支持的外設(shè)包括: 定時(shí)器、ADC、SPI、I2C和USART 等。

  ( 4)調(diào)試模式: 支持標(biāo)準(zhǔn)的20腳JTAG 仿真調(diào)試以及針對(duì)Cortex- M3內(nèi)核的串行單線(xiàn)調(diào)試( SWD )功能。通常默認(rèn)的調(diào)試接口是JTAG 接口。

 ?。?5)內(nèi)部包含多達(dá)7個(gè)定時(shí)器, 具體名稱(chēng)和功能如表1所示。

 ?。?6)含有豐富的通信接口: 三個(gè)USART異步串行通信接口、兩個(gè)I2C 接口、兩個(gè)SPI接口、一個(gè)CAN 接口和一個(gè)USB接口, 為實(shí)現(xiàn)數(shù)據(jù)通信提供了保證。

表1 各個(gè)定時(shí)器名稱(chēng)及其作用


  3 開(kāi)發(fā)工具和流程

  3.1 開(kāi)發(fā)工具

  對(duì)STM32F103系列MPU 開(kāi)發(fā)前, 需要準(zhǔn)備相應(yīng)的軟硬件。其中硬件主要包括STM32F103開(kāi)發(fā)板(或用戶(hù)目標(biāo)板)、J- L ink下載仿真器等; 軟件主要包括Ke il V ision4 IDE 開(kāi)發(fā)平臺(tái)。下面對(duì)各自的功能和特點(diǎn)做簡(jiǎn)要說(shuō)明。

  ( 1) STM32F103開(kāi)發(fā)板(或用戶(hù)目標(biāo)板)是開(kāi)發(fā)目標(biāo)對(duì)象。

  ( 2) J- L ink下載仿真器是程序下載的樞紐, 它帶有的標(biāo)準(zhǔn)20芯扁平電纜可將程序通過(guò)JTAG 接口下載到處理器內(nèi)部存儲(chǔ)空間; 無(wú)需外部供電, 用USB 連接線(xiàn)與PC 機(jī)連接好后即可工作; 還具有下載速度快、功耗低的特點(diǎn)。

 ?。?3) Ke il V ision4 IDE 是一個(gè)基于窗口的軟件開(kāi)發(fā)平臺(tái), 它集成了強(qiáng)大而且現(xiàn)代化的編輯器、工程管理器和make工具, 幾乎集成了嵌入式系統(tǒng)開(kāi)發(fā)所需的全部工具: C /C + + 編譯器、宏匯編器、鏈接/定位器、HEX 文件生成器等。該軟件提供了兩種工作模式: 編譯和調(diào)試模式。在編譯模式中, 開(kāi)發(fā)者可以創(chuàng)建工程、選擇目標(biāo)器件、新建文件、輸入源代碼、生成可執(zhí)行文件; 調(diào)試模式中, 開(kāi)發(fā)者可以利用其強(qiáng)大的集成調(diào)試器對(duì)應(yīng)用程序進(jìn)行調(diào)試, 如設(shè)置斷點(diǎn)、單步執(zhí)行等, 方便了程序錯(cuò)誤的查找和修改。

[!--empirenews.page--]

  3.2 開(kāi)發(fā)流程

 ?。?1)用J- L ink仿真器將PC 機(jī)和STM32F103開(kāi)發(fā)板連接起來(lái)。

  ( 2)使用K eil V ision4 IDE開(kāi)發(fā)平臺(tái)創(chuàng)建新工程, 編寫(xiě)源程序。

  打開(kāi)Ke il V ision4 軟件, 創(chuàng)建新的工程文件, 為該工程選擇器件: STM icroe lectron ics 公司的STM32F103R8芯片, 單擊確定后會(huì)彈出對(duì)話(huà)框, 提示是否選擇將啟動(dòng)代碼添加到目標(biāo)工程。啟動(dòng)代碼用來(lái)完成系統(tǒng)的初始化工作, 對(duì)于嵌入式系統(tǒng)來(lái)說(shuō)是必不可少的。選擇??是 將啟動(dòng)代碼加入到目標(biāo)工程, 這樣可以大大節(jié)省啟動(dòng)代碼的編寫(xiě)工作。工程創(chuàng)建完畢后, 即可在該工程下新建C 文件, 編寫(xiě)源程序, 完成后將其添加到工程中。最后將庫(kù)文件STM32F10xRLIB 和STM32F10xDLIB 也添加到工程中。至此, 程序創(chuàng)建工作結(jié)束。所需源文件及功能如表2示。

表2 完整工程所需文件


 ?。?3)程序的編譯、下載、仿真和調(diào)試等。

  程序編寫(xiě)完成后即可編譯文件, 編譯無(wú)錯(cuò)誤后選擇Options選項(xiàng), 在D ebug程序編譯鏈接成功之后, 選擇Pro ject /Opt ions for Targe,t 打開(kāi)對(duì)話(huà)框后, 選擇Debug選項(xiàng)卡, 在U se下拉按鈕中選擇Cortex- M3 J- L ink, 選擇好后點(diǎn)擊settings, 在彈出的對(duì)話(huà)框中點(diǎn)擊Add按鈕, 選擇STM32F10xM ed- density Flash。點(diǎn)擊OK 完成配置。通過(guò)Load即可將程序下載到目標(biāo)器件中。如圖1所示。

  如果需要對(duì)程序進(jìn)行在線(xiàn)調(diào)試, 選擇S tart /Stop Debug Session, 這時(shí)可以插入斷點(diǎn)、設(shè)置指針、單步執(zhí)行、復(fù)位等, 還可以觀(guān)察各個(gè)寄存器值的變化, 進(jìn)行波形仿真??傊梢院芊奖愕脑诰€(xiàn)調(diào)試程序。

  4 應(yīng)用程序開(kāi)發(fā)實(shí)例

  下面以溫度測(cè)量為例, 具體介紹STM32F103處理器的開(kāi)發(fā)使用方法。該處理器帶有12位逐次逼近式ADC, 其輸入量程為VREF- ~ VREF+ , 在LQFP64引腳或更少的引腳封裝形式中, 它們?cè)谛酒瑑?nèi)部與ADC 的地VSSA和電源VDDA相連。由于STM32處理器在本設(shè)計(jì)中采用33V 電壓供電, 因此其輸入量程為0~ 33V。

  處理器內(nèi)部自帶一個(gè)溫度傳感器, 它感知到MPU 周?chē)臏囟茸兓?將其轉(zhuǎn)化為電壓的變化。該傳感器的溫度適應(yīng)范圍很寬, 可以測(cè)量- 40℃~ + 125℃之間變化的溫度值, 轉(zhuǎn)換精度為±1.5 ℃ , 能夠較好的滿(mǎn)足溫度測(cè)量的任務(wù)。

  4.1 AD轉(zhuǎn)換和數(shù)據(jù)傳輸

  通常情況下, 內(nèi)部溫度傳感器是關(guān)閉的, 為了使其正常工作, 首先需要選擇ADC _IN16通道, 因?yàn)樵撏ǖ朗莾?nèi)部通道, 與溫度傳感器直接相連, 其次要設(shè)置相關(guān)功能寄存器ADC _CR2的TSVREFE位, 開(kāi)啟溫度傳感器和VREFINT通道。

  編寫(xiě)main c文件時(shí), 首先配置系統(tǒng)時(shí)鐘, 然后進(jìn)行引腳配置, 主要是為串口數(shù)據(jù)發(fā)送和接收配置引腳,本設(shè)計(jì)采用通用I /O 口PB10作為串口發(fā)送引腳, 配置為推挽式輸出, 速度為50MH z; 將通用I /O 口PB11作為串口接收引腳, 浮空輸入模式。然后配置串口工作方式及中斷, 設(shè)置波特率為9600Baud、8位數(shù)據(jù)位、無(wú)校驗(yàn)位、1位停止位、無(wú)硬件流控制。然后使能串口的中斷、發(fā)送、接收。將AD 轉(zhuǎn)換通道設(shè)為通道16, 使能溫度傳感器。檢測(cè)到ADC 校準(zhǔn)寄存器復(fù)位完成后, 啟動(dòng)ADC 校準(zhǔn), 校準(zhǔn)完成后軟件觸發(fā)啟動(dòng)ADC 轉(zhuǎn)換。

  設(shè)置w h ile無(wú)限循環(huán), 等待串口中斷, 在中斷程序stm32 f10x_ it c文件中, 將轉(zhuǎn)換結(jié)果數(shù)據(jù)通過(guò)串口發(fā)送到PC機(jī)。流程圖如圖2所示。


 

圖1 Dubug 選項(xiàng)的配置[!--empirenews.page--]


 

圖2 溫度測(cè)量流程圖


圖3 C + + Buider顯示界面

  4.2 顯示界面的設(shè)計(jì)

  在PC 機(jī)上, 使用C+ + Builder軟件制作顯示界面。編寫(xiě)串口接收程序, 將串口設(shè)置與發(fā)端一致, 接收數(shù)據(jù)時(shí)以雙字節(jié)十六進(jìn)制形式接收。接收到的數(shù)據(jù)大小介于0~ 0x0FFF之間, 換算為十進(jìn)制數(shù)介于0~4095之間。由于VREF- = 0V, VREF+ = 3.3V, 因此, 根據(jù)數(shù)值和電壓值的關(guān)系算得當(dāng)前電壓值。VSENSE = Data /4096* 3.3V。比如, 若當(dāng)前得到十進(jìn)制數(shù)值為1773, 則根據(jù)上述公式算得當(dāng)前電壓為1.428V。得到電壓值之后, 由公式:

  TA = { ( V25 - VSEN SE ) /A vg_S lope} + 25可進(jìn)一步算出當(dāng)前溫度值。其中, V25 為VSENSE 在25℃ 時(shí)的大小, 其值為1.43V; Avg_Slope為溫度與VSENSE曲線(xiàn)的平均斜率, 大小為4.3mV /℃ 。根據(jù)上例得出的當(dāng)前電壓1428V, 可推算得溫度值為25.36 ℃ 。得出結(jié)果的同時(shí)將該溫度值在該界面中顯示出來(lái)。結(jié)果顯示如圖3所示。

  5 結(jié)束語(yǔ):

  基于C ortex- M3內(nèi)核的STM32F103系列處理器是新型的嵌入式微處理器, 它在各方面指標(biāo)上都遠(yuǎn)遠(yuǎn)優(yōu)于51系列單片機(jī), 但是其開(kāi)發(fā)使用方法卻和51系列單片機(jī)一樣簡(jiǎn)便, 而且不需要操作系統(tǒng)的支持, 因此開(kāi)發(fā)工作量比起傳統(tǒng)的嵌入式系統(tǒng)大大減少了。這些突出的優(yōu)勢(shì)使得STM32系列處理器在生產(chǎn)生活的各個(gè)領(lǐng)域都有很大的發(fā)展?jié)摿Γ?得到了越來(lái)越廣泛的應(yīng)用。本文從該款處理器的資源、性能和特點(diǎn)入手, 較詳細(xì)的介紹了其開(kāi)發(fā)工具和開(kāi)發(fā)流程, 特別對(duì)K eilV ision4開(kāi)發(fā)平臺(tái)的使用做了詳細(xì)的說(shuō)明。最后以溫度測(cè)量實(shí)驗(yàn)為例, 具體講解了片上AD資源的開(kāi)發(fā)使用方法, 給讀者提供了一個(gè)直觀(guān)的印象, 為開(kāi)發(fā)者更好的使用該款微處理器提供借鑒。


 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀(guān)點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉