版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
STM32嵌入式微控器
快速上手1參考資料2考試形式總成績=實驗40%+平時10%+期末50%實驗時間:1-17周,雙周周五上午8:00實驗地點:電子樓1193主要內(nèi)容
1.嵌入式系統(tǒng)簡介
2.STM32簡介
3.教學(xué)開發(fā)板
4.工程模板的建立41.嵌入式系統(tǒng)簡介1.1嵌入式系統(tǒng)定義1.2嵌入式系統(tǒng)的特點1.3嵌入式系統(tǒng)的分類1.4嵌入式系統(tǒng)的應(yīng)用1.5嵌入式系統(tǒng)的發(fā)展1.6通用計算機與嵌入式系統(tǒng)對比51.1嵌入式系統(tǒng)定義嵌入式系統(tǒng)(Embeddedsystem),是一種“完全嵌入受控器件內(nèi)部,為特定應(yīng)用而設(shè)計的專用計算機系統(tǒng)”,根據(jù)英國電器工程師協(xié)會(U.K.InstitutionofElectricalEngineer)的定義,嵌入式系統(tǒng)為“用于控制、監(jiān)視或者輔助操作機器和設(shè)備的裝置”。與個人計算機這樣的通用計算機系統(tǒng)不同,嵌入式系統(tǒng)通常執(zhí)行的是帶有特定要求的預(yù)先定義的任務(wù)。由于嵌入式系統(tǒng)只針對一項特殊的任務(wù),設(shè)計人員能夠?qū)λM(jìn)行優(yōu)化,減小尺寸降低成本。嵌入式系統(tǒng)通常進(jìn)行大量生產(chǎn),所以單個的成本節(jié)約,能夠隨著產(chǎn)量進(jìn)行成百上千的放大。61.1嵌入式系統(tǒng)定義嵌入式系統(tǒng)的核心是由一個或幾個預(yù)先編程好以用來執(zhí)行少數(shù)幾項任務(wù)的微處理器或者單片機組成。與通用計算機能夠運行用戶選擇的軟件不同,嵌入式系統(tǒng)上的軟件通常是暫時不變的,所以經(jīng)常稱為“固件”。國內(nèi)普遍認(rèn)同的嵌入式系統(tǒng)定義為:以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計算機系統(tǒng)。一般而言,嵌入式系統(tǒng)的構(gòu)架可以分成四個部分:處理器、存儲器、輸入輸出(I/O)和軟件。71.2嵌入式系統(tǒng)的特點嵌入式系統(tǒng)的幾個重要特征:(1)系統(tǒng)內(nèi)核小。由于嵌入式系統(tǒng)一般是應(yīng)用于小型電子裝置的,系統(tǒng)資源相對有限,所以內(nèi)核較之傳統(tǒng)的操作系統(tǒng)要小得多。
內(nèi)核,是一個操作系統(tǒng)的核心。是基于硬件的第一層軟件擴充,提供操作系統(tǒng)的最基本的功能,是操作系統(tǒng)工作的基礎(chǔ),它負(fù)責(zé)管理系統(tǒng)的進(jìn)程、內(nèi)存、內(nèi)核體系結(jié)構(gòu)設(shè)備驅(qū)動程序、文件和網(wǎng)絡(luò)系統(tǒng),決定著系統(tǒng)的性能和穩(wěn)定性。(2)專用性強。嵌入式系統(tǒng)的個性化很強,其中的軟件系統(tǒng)和硬件的結(jié)合非常緊密,一般要針對硬件進(jìn)行系統(tǒng)的移植,即使在同一品牌、同一系列的產(chǎn)品中也需要根據(jù)系統(tǒng)硬件的變化和增減不斷進(jìn)行修改。同時針對不同的任務(wù),往往需要對系統(tǒng)進(jìn)行較大更改,程序的編譯下載要和系統(tǒng)相結(jié)合,這種修改和通用軟件的“升級”是完全兩個概念。81.2嵌入式系統(tǒng)的特點(3)系統(tǒng)精簡。嵌入式系統(tǒng)一般沒有系統(tǒng)軟件和應(yīng)用軟件的明顯區(qū)分,不要求其功能設(shè)計及實現(xiàn)上過于復(fù)雜,這樣一方面利于控制系統(tǒng)成本,同時也利于實現(xiàn)系統(tǒng)安全。(4)高實時性。高實時性的系統(tǒng)軟件(OS)是嵌入式軟件的基本要求。而且軟件要求固態(tài)存儲,以提高速度;軟件代碼要求高質(zhì)量和高可靠性。(5)多任務(wù)的操作系統(tǒng)。嵌入式軟件開發(fā)要想走向標(biāo)準(zhǔn)化,就必須使用多任務(wù)的操作系統(tǒng)。嵌入式系統(tǒng)的應(yīng)用程序可以沒有操作系統(tǒng)而直接在芯片上運行;但是為了合理地調(diào)度多任務(wù),利用系統(tǒng)資源、系統(tǒng)函數(shù)以及專家?guī)旌瘮?shù)接口,用戶必須自行選配RTOS(RealTimeOperatingSystem)開發(fā)平臺,這樣才能保證程序執(zhí)行的實時性、可靠性,并減少開發(fā)時間,保障軟件質(zhì)量。91.2嵌入式系統(tǒng)的特點(6)專門的開發(fā)工具和環(huán)境。系統(tǒng)開發(fā)需要開發(fā)工具和環(huán)境。由于其本身不具備自舉開發(fā)能力,即使設(shè)計完成以后用戶通常也是不能對其中的程序功能進(jìn)行修改的,必須有一套開發(fā)工具和環(huán)境才能進(jìn)行開發(fā)。開發(fā)時往往有主機和目標(biāo)機的概念,主機用于程序的開發(fā),目標(biāo)機作為最后的執(zhí)行機,開發(fā)時需要交替結(jié)合進(jìn)行。
【自舉(bootstrapping)一詞來自于人都是靠自身的“自舉”機構(gòu)站立起來的這一思想。計算機必須具備自舉能力將自己所有的元件激活,以便能完成加載操作系統(tǒng)這一目的,然后再由操作系統(tǒng)承擔(dān)起那些單靠自舉代碼無法完成的更復(fù)雜的任務(wù)。自舉只有兩個功能:加電自檢和磁盤引導(dǎo)?!?01.3嵌入式系統(tǒng)的分類
(1)體系結(jié)構(gòu)。普林斯頓結(jié)構(gòu)(馮·諾依曼結(jié)構(gòu))和哈佛結(jié)構(gòu)(2)指令集。CISC(復(fù)雜指令系統(tǒng))和RISC(精簡指令系統(tǒng))(見表1-2,P4)(3)嵌入式處理器種類。一般可以將嵌入式處理器分成4類,即嵌入式微處理器(MicroProcessor
Unit,MPU)嵌入式微控制器(MicroControllerUnit,MCU單片機)嵌入式DSP處理器(Digital
SignalProcessor,DSP)嵌入式片上系統(tǒng)(SystemOnChip,SoC)
(見表1-3,P5)11馮·諾依曼結(jié)構(gòu):單一存儲、統(tǒng)一編址、分時復(fù)用12哈佛結(jié)構(gòu):分開存儲、獨立編址、兩倍帶寬、效率更高13CISCvsRISC141.4嵌入式系統(tǒng)的應(yīng)用(1)工業(yè)控制基于嵌入式芯片的工業(yè)自動化設(shè)備將獲得長足的發(fā)展,目前已經(jīng)有大量的8、16、32位嵌入式微控制器在應(yīng)用中,網(wǎng)絡(luò)化是提高生產(chǎn)效率和產(chǎn)品質(zhì)量、減少人力資源主要途徑,如工業(yè)過程控制、數(shù)字機床、電力系統(tǒng)、電網(wǎng)安全、電網(wǎng)設(shè)備監(jiān)測、石油化工系統(tǒng)。就傳統(tǒng)的工業(yè)控制產(chǎn)品而言,低端型采用的往往是8位單片機。但是隨著技術(shù)的發(fā)展,32位、64位的處理器逐漸成為工業(yè)控制設(shè)備的核心,在未來幾年內(nèi)必將獲得長足的發(fā)展。(2)交通管理在車輛導(dǎo)航、流量控制、信息監(jiān)測與汽車服務(wù)方面,嵌入式系統(tǒng)技術(shù)已經(jīng)獲得了廣泛的應(yīng)用,內(nèi)嵌GPS模塊、GSM模塊的移動定位終端已經(jīng)在各種運輸行業(yè)獲得了成功的使用。目前GPS設(shè)備已經(jīng)從尖端產(chǎn)品進(jìn)入了普通百姓的家庭,只需要幾千元,就可以隨時隨地找到你的位置。151.4嵌入式系統(tǒng)的應(yīng)用(3)信息家電這將稱為嵌入式系統(tǒng)最大的應(yīng)用領(lǐng)域,冰箱、空調(diào)等的網(wǎng)絡(luò)化、智能化將引領(lǐng)人們的生活步入一個嶄新的空間。即使你不在家里,也可以通過電話線、網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程控制。在這些設(shè)備中,嵌入式系統(tǒng)將大有用武之地。(4)家庭智能管理系統(tǒng)水、電、煤氣表的遠(yuǎn)程自動抄表,安全防火、防盜系統(tǒng),其中嵌有的專用控制芯片將代替?zhèn)鹘y(tǒng)的人工檢查,并實現(xiàn)更高,更準(zhǔn)確和更安全的性能。目前在服務(wù)領(lǐng)域,如遠(yuǎn)程點菜器等已經(jīng)體現(xiàn)了嵌入式系統(tǒng)的優(yōu)勢。(5)POS網(wǎng)絡(luò)及電子商務(wù)公共交通無接觸智能卡(ContactlessSmartcard,CSC)發(fā)行系統(tǒng),公共電話卡發(fā)行系統(tǒng),自動售貨機,各種智能ATM終端將全面走入人們的生活,到時手持一卡就可以行遍天下。161.4嵌入式系統(tǒng)的應(yīng)用(6)環(huán)境工程與自然水文資料實時監(jiān)測,防洪體系及水土質(zhì)量監(jiān)測、堤壩安全,地震監(jiān)測網(wǎng),實時氣象信息網(wǎng),水源和空氣污染監(jiān)測。在很多環(huán)境惡劣,地況復(fù)雜的地區(qū),嵌入式系統(tǒng)將實現(xiàn)無人監(jiān)測。(7)國防與航天嵌入式芯片的發(fā)展將使機器人在微型化,高智能方面優(yōu)勢更加明顯,同時會大幅度降低機器人的價格,使其在工業(yè)領(lǐng)域和服務(wù)領(lǐng)域獲得更廣泛的應(yīng)用。171.5嵌入式系統(tǒng)的發(fā)展縱觀嵌入式系統(tǒng)的發(fā)展歷程,大致經(jīng)歷了以下3個階段:以嵌入式微處理器為基礎(chǔ)的初級嵌入式系統(tǒng)以嵌入式操作系統(tǒng)為標(biāo)志的中級嵌入式系統(tǒng)以Internet和實時多任務(wù)操作系統(tǒng)為標(biāo)志的高級嵌入式系統(tǒng)
18發(fā)展趨勢嵌入式技術(shù)與Internet技術(shù)的結(jié)合正在推動著嵌入式技術(shù)的飛速發(fā)展,為嵌入式市場展現(xiàn)了美好的前景,同時也對嵌入式生產(chǎn)廠商提出了新的挑戰(zhàn),未來嵌入式系統(tǒng)的幾大發(fā)展趨勢:(1)嵌入式系統(tǒng)的開發(fā)成了一項系統(tǒng)工程,開發(fā)廠商不僅要提供嵌入式軟硬件系統(tǒng)本身,同時還要提供強大的硬件開發(fā)工具和軟件支持包。(2)網(wǎng)絡(luò)化、信息化的要求隨著Internet技術(shù)的成熟和帶寬的提高而日益突出,以往功能單一的設(shè)備如電話、手機、冰箱、微波爐等功能不再單一,結(jié)構(gòu)變得更加復(fù)雜,網(wǎng)絡(luò)互聯(lián)成為必然趨勢。19發(fā)展趨勢(3)未來的嵌入式設(shè)備為了適應(yīng)網(wǎng)絡(luò)發(fā)展的要求,必然要求硬件上提供各種網(wǎng)絡(luò)通信接口。傳統(tǒng)的單片機對于網(wǎng)絡(luò)支持不足,而新一代的嵌入式處理器已經(jīng)開始內(nèi)嵌網(wǎng)絡(luò)接口,除了支持TCP/IP協(xié)議,還有的支持IEEE1394、USB、CAN、Bluetooth或IrDA通信接口中的一種或者幾種,同時也需要提供相應(yīng)的通信組網(wǎng)協(xié)議軟件和物理層驅(qū)動軟件。軟件方面系統(tǒng)系統(tǒng)內(nèi)核支持網(wǎng)絡(luò)模塊,甚至可以在設(shè)備上嵌入Web瀏覽器,真正實現(xiàn)隨時隨地用各種設(shè)備上網(wǎng)。
(4)精簡系統(tǒng)內(nèi)核,優(yōu)化關(guān)鍵算法,降低功耗和軟硬成本。(5)提供更加友好的多媒體人機交互界面。201.6通用計算機與嵌入式系統(tǒng)對比21硬件平臺比較22軟件平臺比較返回232.STM32簡介STM32系列基于專為要求高性能、低成本、低功耗的嵌入式應(yīng)用專門設(shè)計的ARM
Cortex-M3內(nèi)核。按性能分成兩個不同的系列:STM32F103“增強型”系列和STM32F101“基本型”系列。增強型系列時鐘頻率達(dá)到72MHz,是同類產(chǎn)品中性能最高的產(chǎn)品;基本型時鐘頻率為36MHz,以16位產(chǎn)品的價格得到比16位產(chǎn)品大幅提升的性能,是16位產(chǎn)品用戶的最佳選擇。兩個系列都內(nèi)置32K~128K的閃存,不同的是SRAM的最大容量和外設(shè)接口的組合。時鐘頻率72MHz時,從閃存執(zhí)行代碼,STM32功耗36mA,是32位市場上功耗最低的產(chǎn)品,相當(dāng)于0.5mA/MHz。242.STM32簡介2.1歷史2.2產(chǎn)品介紹2.3Cortex-M3內(nèi)核2.4應(yīng)用252.1STM32歷史意法半導(dǎo)體(STMicroelectronics)集團(tuán)于1987年6月成立,是由意大利的SGS微電子公司和法國Thomson半導(dǎo)體公司合并而成。1998年5月,SGS-THOMSONMicroelectronics將公司名稱改為意法半導(dǎo)體有限公司,意法半導(dǎo)體是世界最大的半導(dǎo)體公司之一。從成立之初至今,ST的增長速度超過了半導(dǎo)體工業(yè)的整體增長速度。自1999年起,ST始終是世界十大半導(dǎo)體公司之一。2007年6月ST宣布了她的第一款基于Cortex-M3并內(nèi)嵌32K~128K閃存的STM32微控制器系列產(chǎn)品。ARM公司在2004年推出了CM3內(nèi)核,經(jīng)過5年市場的積累,包括ST公司、TI公司等一些半導(dǎo)體公司推出了基于CM3內(nèi)核的微控制器產(chǎn)品。26ARMARM(AdvancedRISCMachines)是英國的一家微處理器企業(yè),也可以認(rèn)為是對一類微處理器的通稱,還可以認(rèn)為是一種技術(shù)的名字。見表1-5(P10)ARM體系結(jié)構(gòu)定義了指令集和基于這一體系結(jié)構(gòu)下處理器的編程模型?;谕瑯芋w系結(jié)構(gòu)可以有多種處理器,每個處理器性能不同,所面向的應(yīng)用也就不同。ARMv7有三個分支,即:
A-應(yīng)用分支,面向應(yīng)用,如手持設(shè)備。
R-實時分支,面向一般的實時控制。
M-微處理機分支,面向深度嵌入系統(tǒng)。27ARM處理器系列282.2Cortex-M3內(nèi)核Cortex-M3系列微處理器的主要特點如下:(1)Thumb-2指令集架構(gòu)(ISA,InstructionSetArchitecture)。(2)哈佛處理器架構(gòu),在加載/存儲數(shù)據(jù)的同時能夠執(zhí)行指令取指。(3)三級流水線。(4)32位單周期乘法。(5)具備硬件除法。(6)Thumb狀態(tài)和調(diào)試狀態(tài)。(7)處理模式和線程模式。(8)ISR(InterruptServiceRoutine)的低延遲進(jìn)入和退出。(9)可中斷-可繼續(xù)的LDM/STM(批量傳輸數(shù)據(jù)的指令),PUSH/POP。(10)ARMv6類型BE8/LE支持。
(字節(jié)不變式大端模式big-endian/小端模式little-endian)(11)ARMv6非對齊訪問。(12)分支預(yù)測功能29關(guān)于指令集Cortex-M3處理器采用ARMv7-M架構(gòu),它包括所有的16位Thumb指令集和基本的32位Thumb-2指令集架構(gòu),Cortex-M3處理器不能執(zhí)行ARM指令集。Thumb-2在Thumb指令集架構(gòu)(ISA)上進(jìn)行了大量的改進(jìn),它與Thumb相比,具有更高的代碼密度并提供16/32位指令的更高性能。為兼容數(shù)據(jù)總線寬度為16位的應(yīng)用系統(tǒng),ARM體系結(jié)構(gòu)除了支持執(zhí)行效率很高的32位ARM指令集以外,同時支持16位的Thumb指令集。Thumb指令集是ARM指令集的一個子集,是針對代碼密度問題而提出的,它具有16位的代碼寬度。與等價的32位代碼相比較,Thumb指令集在保留32位代碼優(yōu)勢的同時,大大的節(jié)省了系統(tǒng)的存儲空間。30Cortex-M3只支持最新的Thumb-2指令集,這樣設(shè)計的優(yōu)勢在于:免去Thumb和ARM代碼的互相切換,對于早期的處理器來說,這種切換會降低性能。Thumb-2指令集的設(shè)計是專門面向C語言的,切包括If/Then結(jié)構(gòu)、硬件除法以及本地位域操作。Thumb-2指令集允許用戶在C代碼層面維護(hù)修改程序。Thumb-2指令集也包含了調(diào)用匯編代碼的功能。綜合以上優(yōu)勢,新產(chǎn)品的開發(fā)將更易于實現(xiàn),上市時間也大為縮短。31三級流水線----取指、譯碼、執(zhí)行32關(guān)于工作狀態(tài)Coretx-M3處理器有2種工作狀態(tài)。Thumb狀態(tài):這是16位和32位“半字對齊”的Thumb和Thumb-2指令的執(zhí)行狀態(tài)。調(diào)試狀態(tài):處理器停止并進(jìn)行調(diào)試,進(jìn)入該狀態(tài)。33關(guān)于工作模式Cortex-M3處理器支持2種工作模式:線程模式和處理模式。在復(fù)位時處理器進(jìn)入“線程模式”,異常返回時也會進(jìn)入該模式,特權(quán)和用戶(非特權(quán))模式代碼能夠在“線程模式”下運行。出現(xiàn)異常模式時處理器進(jìn)入“處理模式”,在處理模式下,所有代碼都是特權(quán)訪問的。34關(guān)于中斷Cortex-M3的一個創(chuàng)新在于嵌套中斷向量控制器(NVIC,NestedVectoredInterruptController),是Cortex-M3內(nèi)部的獨有集成單元。NVIC提供如下的功能:可嵌套中斷支持向量中斷支持動態(tài)優(yōu)先級調(diào)整支持中斷延遲大大縮短中斷可屏蔽35ARM數(shù)據(jù)存儲格式36Cortex-M3處理器能夠以小端格式或大端格式訪問存儲器中的數(shù)據(jù)字,而訪問代碼時始終使用小端格式。小端格式是ARM處理器默認(rèn)的存儲器格式。372.3產(chǎn)品介紹在STM32F105和STM32F107互連型系列微控制器之前,意法半導(dǎo)體已經(jīng)推出STM32基本型系列、增強型系列、USB基本型系列、增強型系列;新系列產(chǎn)品沿用增強型系列的72MHz處理頻率。內(nèi)存包括64KB到256KB閃存和20KB到64KB嵌入式SRAM。新系列采用LQFP64、LQFP100和LFBGA100三種封裝,不同的封裝保持引腳排列一致性,結(jié)合STM32平臺的設(shè)計理念,開發(fā)人員通過選擇產(chǎn)品可重新優(yōu)化功能、存儲器、性能和引腳數(shù)量,以最小的硬件變化來滿足個性化的應(yīng)用需求。38LQFP也就是薄型QFP(Low-profileQuadFlatPackage)指封裝本體厚度為1.4mm的QFP,是日本電子機械工業(yè)會制定的新QFP外形規(guī)格所用的名稱。QFP封裝:這種技術(shù)的中文含義叫四方扁平式封裝技術(shù)(QuadFlatPackage),該技術(shù)實現(xiàn)的CPU芯片引腳之間距離很小,管腳很細(xì)。一般大規(guī)?;虺笠?guī)模集成電路采用這種封裝形式,其引腳數(shù)一般都在100以上。該技術(shù)封裝CPU時操作方便,可靠性高;而且其封裝外形尺寸較小,寄生參數(shù)減小,適合高頻應(yīng)用;該技術(shù)主要適合用SMT表面貼裝技術(shù)在PCB上安裝布線。39LFBGA封裝:也就是薄型FBGAFBGA(Fine-PitchBallGridArray:細(xì)間距球柵陣列)是一種在底部有焊球的面陣引腳結(jié)構(gòu),使封裝所需的安裝面積接近于芯片尺寸。BGA是英文BallGridArrayPackage的縮寫,即球柵陣列封裝。402.3產(chǎn)品介紹基本型:STM32F101R6,STM32F101C8,STM32F101R8,STM32F101V8,STM32F101RB,STM32F101VB增強型:STM32F103C8,STM32F103R8,STM32F103V8,STM32F103RB,STM32F103VB,STM32F103VE,STM32F103ZE41STM32型號的說明以STM32F103RBT6這個型號的芯片為例,該型號的組成為7個部分,其命名規(guī)則如下:STM32:STM32代表ARMCortex-M3內(nèi)核的32位微控制器。F:F代表芯片子系列。103:103代表增強型系列。R:R這一項代表引腳數(shù),其中T代表36腳,C代表48腳,R代表64腳,V代表100腳,Z代表144腳。B:B這一項代表內(nèi)嵌Flash容量,其中6代表32K字節(jié)Flash,8代表64K字節(jié)Flash,B代表128K字節(jié)Flash,C代表256K字節(jié)Flash,D代表384K字節(jié)Flash,E代表512K字節(jié)Flash。T:T這一項代表封裝,其中H代表BGA封裝,T代表LQFP封裝,U代表VFQFPN封裝。6:6這一項代表工作溫度范圍,其中6代表-40---85℃,
7代表-40---105℃。42STM32F103RBT6封裝引腳圖432.4STM32F103性能STM32F系列屬于中低端的32位ARM微控制器,該系列芯片是意法半導(dǎo)體(ST)公司出品,其內(nèi)核是Cortex-M3。該系列芯片按片內(nèi)Flash的大小可分為三大類:小容量(16K和32K)、中容量(64K和128K)、大容量(256K、384K和512K)。芯片集成有USB,CAN,最多8個定時器,2個ADC,SPI,IIC,USB,UART等多種功能。442.4STM32F103性能內(nèi)核:ARM32位Cortex-M3CPU,最高工作頻率72MHz,1.25DMIPS/MHz。單周期乘法和硬件除法。存儲器:片上集成32~512KB的Flash存儲器。6~
64KB的SRAM存儲器。時鐘、復(fù)位和電源管理:2.0~
3.6V的電源供電和I/O接口的驅(qū)動電壓;上電/斷電復(fù)位;4~16MHz的晶振;內(nèi)嵌出廠前調(diào)校的8MHzRC振蕩電路;內(nèi)部40kHz的RC振蕩電路;用于CPU時鐘的PLL(PhaseLockedLoop,鎖相環(huán));帶校準(zhǔn)用于RTC(real-timeclock)的32kHz的晶振??删幊屉妷簷z測(PVD)。低功耗:3種低功耗模式:休眠,停止,待機模式。為RTC和備份寄存器供電的VBAT(電池引腳)。調(diào)試模式:串行調(diào)試(SWD)和JTAG接口。DMA(DirectMemoryAccess):12通道DMA控制器。支持的外設(shè):定時器,ADC,DAC,SPI,IIC和UART。2個12位的us級的A/D轉(zhuǎn)換器(16通道):A/D測量范圍:0-3.6V。雙采樣和保持能力。片上集成一個溫度傳感器。452.4STM32F103性能2通道12位D/A轉(zhuǎn)換器:STM32F103xC,STM32F103xD,STM32F103xE獨有。最多高達(dá)112個的快速I/O端口:根據(jù)型號的不同,有26,37,51,80,和112的I/O端口,所有的端口都可以映射到16個外部中斷向量。除了模擬輸入,所有的都可以接受5V以內(nèi)的輸入。最多多達(dá)11個定時器:4個16位定時器,每個定時器有4個IC/OC/PWM或者脈沖計數(shù)器。2個16位的6通道高級控制定時器:最多6個通道可用于PWM輸出。2個看門狗定時器(獨立看門狗和窗口看門狗)。Systick定時器:24位倒計數(shù)器。2個16位基本定時器用于驅(qū)動DAC。最多多達(dá)13個通信接口:2個IIC接口。5個USART接口。3個SPI接口,兩個和IIS復(fù)用。CAN接口(2.0B)。USB2.0全速接口。SDIO接口。ECOPACK封裝:STM32F103xx系列微控制器采用ECOPACK封裝形式(一種無鉛的BGA封裝)。462.5應(yīng)用返回473.教學(xué)開發(fā)板48495051525354返回554工程模板的建立4.1ARMCortex-M3處理器編程環(huán)境需要準(zhǔn)備的資料:1.STM32F10x_StdPeriph_Lib_V3.5.0(這是ST官網(wǎng)下載的固件庫完整版)2.安裝MDK4.70a(Keil)3.注冊License(破解,如果不破解只能支持32K的代碼)安裝成功后,桌面上Keil4顯示圖標(biāo)56固件庫是壓縮文件,解壓縮后,準(zhǔn)備編程時用。574.2新建工程58輸入工程名,保存59選擇CPU,STM32F103VB60彈出對話框“CopySTM32StartupCodetoproject….”,詢問是否添加啟動代碼到我們的工程中,這里我們選擇“否”,因為我們使用的ST固件庫文件已經(jīng)包含了啟動文件。61接下來,在Template工程目錄下面,新建3個文件夾CORE,USER,STM32F10x_FWLib。USER用來放我們主函數(shù)文件main.c,以及其他包括system_stm32f10x.c等等,CORE用來存放啟動文件等,STM32F10x_FWLib文件夾顧名思義用來存放ST官方提供的庫函數(shù)源碼文件。還可以新建一個OUTPUT文件夾,用來放。HEX等編譯輸出的文件。6263下面要將官方的固件庫包里的源碼文件復(fù)制到我們的工程目錄文件夾下面。64我們只用到arm目錄下面的startup_stm32f10x_md.s文件,這個文件是針對中等容量芯片的啟動文件。其他兩個主要的為startup_stm32f10x_ld.s為小容量,startup_stm32f10x_hs.c為大容量芯片的啟動文件。這里copy進(jìn)來是方便其他開發(fā)者使用小容量或者大容量芯片的用戶。6566將目錄下面的src、inc文件夾copy到STM32F10x_FWLib文件夾下面。src存放的是固件庫的.c文件,inc存放的是對應(yīng)的.h文件,每個外設(shè)對應(yīng)一個.c文件和一個.h頭文件。67下面將這些文件加入我們的工程中去。右鍵點擊Target1,選擇ManageComponents68ProjectTargets一欄,將Target名字修改為Template,然后在Groups一欄刪掉一個,建立三個Groups:USER,CORE,FWLIB.點擊OK.6970下面我們往Group里面添加我們需要的文件。右鍵點擊點擊Tempate,選擇選擇ManageComponents.然后選擇需要添加文件的Group,這里第一步我們選擇FWLIB,然后點擊右邊的AddFiles,定位到我們剛才建立的目錄STM32F10x_FWLib/src下面,將里面所有的文件選中(Ctrl+A),然后點擊Add,然后Close.可以看到Files列表下面包含我們添加的文件71727374下面我們點擊編譯按鈕編譯工程,可以看到很多報錯,因為找不到庫文件。75下面要告訴MDK,在哪些路徑之下搜索相應(yīng)的文件?;氐焦こ讨鞑藛?,點擊魔術(shù)棒,出來一個菜單,然后點擊c/c++選項.然后點擊IncludePaths右邊的按鈕。彈出一個添加path的對話框,然后我們將圖上面的3個目錄添加進(jìn)去。記住,keil只會在一級目錄查找,所以如果你的目錄下面還有子目錄,記得path一定要定位到最后一級子目錄。然后點擊OK.767778重新定位到c/c++界面,然后copy“STM32F10X_MD,USE_STDPERIPH_DRIVER”到Define里面。79在編譯之前,我們記得打開工程USUR下面的main.c,復(fù)制下面代碼到main.c覆蓋已有代碼,然后進(jìn)行編譯。(記得在代碼的最后面加上一個回車,否則會有警告)#include"stm32f10x.h"GPIO_InitTypeDefGPIO_InitStructure
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 五年級數(shù)學(xué)(小數(shù)除法)計算題專項練習(xí)及答案
- 電冰箱、空調(diào)器安裝與維護(hù)電子教案 4.3 運行并調(diào)試
- 湘教版九年級美術(shù)上冊說課稿
- 江西省上饒市廣豐中學(xué)2024-2025學(xué)年高三上學(xué)期11月化學(xué)測試卷(含答案)
- 福建省龍巖市一級校聯(lián)盟2024-2025學(xué)年高三上學(xué)期11月期中考試 英語(含答案無聽力音頻有聽力原文)
- 頭發(fā)造型用發(fā)膠產(chǎn)業(yè)規(guī)劃專項研究報告
- 醫(yī)用人體成分分析儀產(chǎn)業(yè)規(guī)劃專項研究報告
- 挖泥機市場發(fā)展預(yù)測和趨勢分析
- 醫(yī)用消毒器市場需求與消費特點分析
- 湖北省荊州市監(jiān)利市多校2024-2025學(xué)年二年級上學(xué)期期中數(shù)學(xué)試題
- 人工挖孔樁單樁豎向承載力特征值計算Excel
- 南昌大學(xué)道路交通安全管理暫行辦法
- 軟件工程-網(wǎng)上購物系統(tǒng)的設(shè)計與實現(xiàn)(共32頁)
- 建筑工程實測實量技術(shù)規(guī)范
- 汽車轉(zhuǎn)向節(jié)機加工工藝及鉆銑夾具設(shè)計
- 一體化泵站施工組織設(shè)計方案
- 《古籍版本學(xué)》讀書筆記
- 華為公司英語介紹ppt課件
- 電力--標(biāo)煤---碳排放之間的換算
- 食堂食品定點采購詢價記錄表
- 人教版小學(xué)三年級上冊品德與社會《規(guī)則在哪里》
評論
0/150
提交評論