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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 新一代嵌入式微處理器STM32F103開發(fā)與應(yīng)用

          新一代嵌入式微處理器STM32F103開發(fā)與應(yīng)用

          作者: 時(shí)間:2011-04-22 來源:網(wǎng)絡(luò) 收藏

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

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

            1 引言

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

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

            系列微處理器是首款基于ARMv7- 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)。豐富的片上資源使得系列微處理器在多種領(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 /O 端口, 所有I/O口均可以映像到16個(gè)外部中斷, 幾乎所有端口都允許5V 信號(hào)輸入。每個(gè)端口都可以由軟件配置成輸出(推挽或開漏)、輸入(帶或不帶上拉或下拉) 或其它的外設(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ù)傳輸, 無須CPU 任何干預(yù)。通過DMA可以使數(shù)據(jù)快速地移動(dòng), 這就節(jié)?? CPU 的資源來進(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)核的串行單線調(diào)試( SWD )功能。通常默認(rèn)的調(diào)試接口是JTAG 接口。

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

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

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

          各個(gè)定時(shí)器名稱及其作用


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

            3.1 開發(fā)工具

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

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

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

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

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁 1 2 3 下一頁

          評(píng)論


          相關(guān)推薦

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