




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第四章ARM硬件系統(tǒng)第一節(jié)STM32微控制器ARM硬件平臺必備資料Cortex-M3權威指南-經(jīng)典M3教程指導STM32F10xDATASHEET–器件參數(shù)ReferenceManual參考手冊—芯片使用方法
意法半導體官網(wǎng)ST代理商論壇ARM硬件平臺ARM硬件平臺ARM硬件平臺ARM硬件平臺ARM硬件平臺ARM硬件平臺ARM硬件平臺ARM硬件平臺STM32F103VBT6ARM硬件平臺ARM硬件平臺ARM硬件平臺STM32F103VBT6基本特性:內核:ARM32位的Cortex?-M3CPU?最高72MHz工作頻率存儲器?128K字節(jié)的閃存程序存儲器?高達16K字節(jié)的SRAM時鐘、復位和電源管理?2.0~3.6伏供電(I/O引腳)?上電/斷電復位(POR/PDR)、可編程電壓監(jiān)測器(PVD)?4~16MHz晶體振蕩器?內嵌經(jīng)出廠調校的8MHz的RC振蕩器?內嵌帶校準的40kHz的RC振蕩器?產(chǎn)生CPU時鐘的PLL?帶校準功能的32kHzRTC振蕩器ARM硬件平臺低功耗?睡眠、停機和待機模式?VBAT為RTC和后備寄存器供電STM32F103VBARM硬件平臺睡眠模式在睡眠模式下,CPU時鐘處于停止狀態(tài),但是所有的外設繼續(xù)運行,除非它們被關閉。電源功耗相應地減少。任一中斷或喚醒事件可將微處理器從睡眠模式中喚醒。在睡眠模式下,所有的SRAM和寄存器內的內容被保存下來。ARM硬件平臺停止模式停止模式是在Cortex-M3的睡眠模式基礎上結合了外設的時鐘控制機制,在停止模式下電壓調節(jié)器可運行在正?;虻凸哪J?。此時在1.8V供電區(qū)域的的所有時鐘都被停止,PLL、HIS和HSERC振蕩器的功能被禁止,SRAM和寄存器內容被保留下來。在停止模式下,通過設置電源控制寄存器(PWR_CR)使內部調節(jié)器進入低功耗模式,能夠降低更多的功耗。ARM硬件平臺待機模式待機模式可實現(xiàn)系統(tǒng)的最低功耗。該模式是在Cortex-M3深睡眠模式時關閉電壓調節(jié)器。整個1.8V供電區(qū)域被斷電。PLL、HSI和HSE振蕩器也被斷電。SRAM和寄存器內容丟失。只有備份的寄存器和待機電路維持供電。ARM硬件平臺RTC可以在不需要依賴外部中斷的情況下喚醒低功耗模式下的微控制器( 電池供電)。ARM硬件平臺2個12位模數(shù)轉換器?轉換范圍:0至3.6V?雙采樣和保持功能?溫度傳感器外部接口ARM硬件平臺DMA:?7通道DMA控制器?支持的外設:定時器、ADC、SPI、I2C和
USART80個I/O端口(100pins)?26/37/51/80個I/O口,所有I/O口可以映像到16個外部中斷;幾乎所有端口均可接受5V信號外部接口ARM硬件平臺調試模式?串行單線調試(SWD)和JTAG接口7個定時器?3個16位定時器?1個16位帶死區(qū)控制和緊急剎車,用于電機控制的PWM高級控制定時器?2個看門狗定時器(獨立的和窗口型的)?系統(tǒng)時間定時器:24位自減型計數(shù)器(systick)外部接口ARM硬件平臺9個通信接口?2個I2C接口?3個USART接口?2個SPI接口(18M位/秒)?CAN接口(2.0B主動)?USB2.0全速接口外部接口ARM硬件平臺ARM硬件平臺ARM硬件平臺ARM硬件平臺ARM硬件平臺再議GPIO口回顧:什么是GPIO?
GPIO,英文全稱為General-PurposeIOports,也就是通用IO口。嵌入式系統(tǒng)中常常有數(shù)量眾多,但是結構卻比較簡單的外部設備/電路,對這些設備/電路有的需要CPU為之提供控制手段,有的則需要被CPU用作輸入信號。而且,許多這樣的設備/電路只要求一位,即只要有開/關兩種狀態(tài)就夠了,比如燈亮與滅。對這些設備/電路的控制,使用傳統(tǒng)的串行口或并行口都不合適。所以在微控制器芯片上一般都會提供一個“通用可編程IO接口”,即GPIO。ARM硬件平臺二、STM32F103GPIO1、PA~PE,共五組GPIO2、Px0~Px15,每組16位,即16個管腳3、端口復用,并支持重映射ARM硬件平臺IO口的基本結構ARM硬件平臺ARM硬件平臺Example:端口配置寄存器端口配置低寄存器(GPIOx_CRL)(x=A..E)偏移地址:00h復位值:44444444h用于配置每組端口中的低8位端口ARM硬件平臺ARM硬件平臺當I/O端口配置為輸入時:輸出緩沖器被禁止施密特觸發(fā)輸入被激活根據(jù)輸入配置(上拉,下拉或浮動)的不同,弱上拉和下拉電阻被連接出現(xiàn)在I/O腳上的數(shù)據(jù)在每個APB2時鐘被采樣到輸入數(shù)據(jù)寄存器對輸入數(shù)據(jù)寄存器的讀訪問可得到I/O狀態(tài)ARM硬件平臺ARM硬件平臺當I/O端口被配置為輸出時:輸出緩沖器被激活─開漏模式:輸出寄存器上的0激活N-MOS,而輸出寄存器上的1將端口置于高阻狀態(tài)(P-MOS從不被激活)。─推挽模式:輸出寄存器上的0激活N-MOS,而輸出寄存器上的1將激活P-MOS。弱上拉和下拉電阻被禁止出現(xiàn)在I/O腳上的數(shù)據(jù)在每個APB2時鐘被采樣到輸入數(shù)據(jù)寄存器─在開漏模式時,對輸入數(shù)據(jù)寄存器的讀訪問可得到I/O狀態(tài)─在推挽式模式時,對輸出數(shù)據(jù)寄存器的讀訪問得到最后一次寫的值。ARM硬件平臺ARM硬件平臺當I/O端口被配置為復用功能時:在開漏或推挽式配置中,輸出緩沖器被打開內置外設的信號驅動輸出緩沖器(復用功能輸出)密特觸發(fā)輸入被激活弱上拉和下拉電阻被禁止在每個APB2時鐘周期,出現(xiàn)在I/O腳上的數(shù)據(jù)被采樣到輸入數(shù)據(jù)寄存器開漏模式時,讀輸入數(shù)據(jù)寄存器時可得到I/O口狀態(tài)在推挽模式時,讀輸出數(shù)據(jù)寄存器時可得到最后一次寫的值。ARM硬件平臺ARM硬件平臺跑馬燈實驗硬件資源分配:PC6----PC9分別連到4個LED,定義為LED1~4需將端口配置為輸出模式ARM硬件平臺跑馬燈實驗ARM硬件平臺控制過程點亮LED相應管腳輸出高電平即相應管腳置1管腳如何控制?特殊寄存器(端口配置寄存器)ARM硬件平臺控制GPIO端口用到的寄存器有:兩個32位配置寄存器(GPIOx_CRL,GPIOx_CRH),兩個32位數(shù)據(jù)寄存器(GPIOx_IDR,GPIOx_ODR),一個32位置位/復位寄存器(GPIOx_BSRR),一個32位復位寄存器(GPIOx_BRR)一個32位鎖定寄存器(GPIOx_LCKR)。ARM硬件平臺端口配置寄存器端口配置低寄存器(GPIOx_CRL)(x=A..E)偏移地址:00h復位值:44444444h用于配置每組端口中的低8位端口ARM硬件平臺ARM硬件平臺端口配置高寄存器(GPIOx_CRH)(x=A..E)偏移地址:04h復位值:44444444h用于配置每組端口中的高8位端口ARM硬件平臺ARM硬件平臺例:配置端口C的第6,7,8,9管腳為:1、通用推挽輸出2、輸出速度為50MHzGPIOC->CRL=0x33000000GPIOC->CRH=0x00000033ARM硬件平臺端口輸入數(shù)據(jù)寄存器(GPIOx_IDR)(x=A..E)地址偏移:08h復位值:00000000hARM硬件平臺端口輸出數(shù)據(jù)寄存器(GPIOx_ODR)(x=A..E)地址偏移:0Ch復位值:00000000hARM硬件平臺端口位設置/復位寄存器(GPIOx_BSRR)(x=A..E)地址偏移:10h復位值:00000000hARM硬件平臺端口位復位寄存器(GPIOx_BRR)(x=A..E)地址偏移:14h復位值:00000000hARM硬件平臺例:要求在以上配置的基礎上,讀出GPIOC管腳的狀態(tài),并將其狀態(tài)反轉temp=GPIOC->ODR;GPIOC->ODR=~temp;GPIOC->ODR=~GPIOC->ODRARM硬件平臺if((GPIOx->ODR&GPIO_Pin)!=(u32)Bit_RESET){bitstatus=(u8)Bit_SET;}else{bitstatus=(u8)Bit_RESET;}returnbitstatus;if(bitstatus!=RESET){GPIOx->BSRR=GPIO_Pin;}else{GPIOx->BRR=GPIO_Pin;}ARM硬件平臺端口配置鎖定寄存器(GPIOx_LCKR)(x=A..E)當執(zhí)行正確的寫序列設置了位16(LCKK)時,該寄存器用來鎖定端口位的配置。位[15:0]用于鎖定GPIO端口的配置。在規(guī)定的寫入操作期間,不能改變LCKP[15:0]。當對相應的端口位執(zhí)行了LOCK序列后,在下次系統(tǒng)復位之前將不能再更改端口位的配置。每個鎖定位鎖定控制寄存器(CRL,CRH)中相應的4個位。地址偏移:18h復位值:00000000hARM硬件平臺ARM硬件平臺控制過程點亮LED相應管腳輸出高電平即相應管腳置1管腳如何控制?特殊寄存器(端口配置寄存器)寫入相應值即可控制定位特殊寄存器存儲器地址ARM硬件平臺ARM硬件平臺ARM硬件平臺ARM硬件平臺ARM硬件平臺系統(tǒng)總線構架四個主動單元:Cortex-M3內核的ICode總線(I-bus)、DCode總線(D-bus)、
System總線(S-bus)和通用DMA(GP-DMA)。三個被動單元:內部SRAM、內部Flash存儲器、AHB到APB的橋(AHB2APBx,連接所有的APB設備)。ARM硬件平臺總線ICode總線該總線將Cortex-M3內核的指令總線與Flash指令接口相連接。指令預取在此總線上完成DCode總線該總線將Cortex-M3內核的DCode總線與閃存存儲器的數(shù)據(jù)接口相連接(常量加載和調試訪問)。系統(tǒng)總線連接內核的系統(tǒng)總線(外設總線)到總線矩陣,總線矩陣協(xié)調著內核和DMA間的訪問??偩€矩陣此總線矩陣由三個驅動部件(CPU的DCode、系統(tǒng)總線和DMA總線)和三個被動部件(閃存存儲器接口、SRAM和AHB2APB橋)構成。AHB外設通過總線矩陣與系統(tǒng)總線相連,允許DMA訪問ARM硬件平臺外設寄存器求法#definePERIPH_BASE((u32)0x40000000)寄存器地址=總線基址+外圍總線基址
+外設地址偏移量+寄存器偏移量#defineAPB1PERIPH_BASEPERIPH_BASE#defineAPB2PERIPH_BASE(PERIPH_BASE+0x10000)#defineAHBPERIPH_BASE(PERIPH_BASE+0x20000)#defineGPIOA_BASE(APB2PERIPH_BASE+0x0800)#defineGPIOB_BASE(APB2PERIPH_BASE+0x0C00)#defineGPIOC_BASE(APB2PERIPH_BASE+0x1000)ARM硬件平臺外設寄存器求法寄存器地址=總線基址+外圍總線基址
+外設地址偏移量+寄存器偏移量typedefstruct{vu32CRL;vu32CRH;vu32IDR;vu32ODR;vu32BSRR;vu32BRR;vu32LCKR;}GPIO_TypeDef;#defineGPIOC((GPIO_TypeDef*)GPIOC_BASE)GPIOC->BSRR=0x0040;ARM硬件平臺GPIO_SetBits(GPIO_LED,GPIO_Pin_6);voidGPIO_SetBits(GPIO_TypeDef*GPIOx,u16GPIO_Pin){GPIOx->BSRR=GPIO_Pin;}typedefstruct{vu32CRL;vu32CRH;vu32IDR;vu32ODR;vu32BSRR;vu32BRR;vu32LCKR;}GPIO_TypeDef;#defineGPIO_LEDGPIOCGPIOC->BSRR=GPIO_Pin_6;#defineGPIO_Pin_6((u16)0x0040)GPIOC->BSRR=((u16)0x0040)ARM硬件平臺GPIO端口復用AFIOAFIOAlternativeFunctionIO同一管腳,不僅作為GPIO,也可作為其他特殊功能使用即同一管腳,多種應用ARM硬件平臺ARM硬件平臺使用默認復用功能前必須對端口位配置寄存器編程。對于復用的輸入功能,端口可以配置成:─輸入模式(浮空、上拉或下拉)─復用功能輸出模式:輸入驅動器被配置成浮空輸入模式對于復用輸出功能,端口必須配置成復用功能輸出模式(推挽或開漏)。對于雙向復用功能,端口位必須配置復用功能輸出模式(推挽或開漏)。這時,輸入驅動器被配置成浮空輸入模式。注意:1、如果把一端口配置成復用輸出功能,將使引腳和輸出寄存器斷開,并和片上外設的輸出信號連接。2、如果軟件把一個GPIO腳配置成復用輸出功能,但是外設沒有被激活,它的輸出將不確定。ARM硬件平臺軟件重新映射I/O復用功能為了使不同器件封裝的外設I/O功能的數(shù)量達到最優(yōu),可以把一些復用功能重新映射到其他一些腳上。這可以通過軟件配置相應的寄存器來完成這時,復用功能就不再映射到它們的原始引腳上了。ARM硬件平臺當I/O端口被配置為復用功能時:在開漏或推挽式配置中,輸出緩沖器被打開內置外設的信號驅動輸出緩沖器(復用功能輸出)密特觸發(fā)輸入被激活弱上拉和下拉電阻被禁止在每個APB2時鐘周期,出現(xiàn)在I/O腳上的數(shù)據(jù)被采樣到輸入數(shù)據(jù)寄存器ARM硬件平臺ARM硬件平臺ARM硬件平臺例,采用串口1進行通信,進行必要AFIO的設置ARM硬件平臺例,采用串口1進行通信,進行必要AFIO的設置GPIOA->CRH=0xB0;GPIOA->CRH=0x0400;或GPIOA->CRH=0x04B0;ARM硬件平臺復用重映射和調試I/O配置寄存器(AFIO_MAPR)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 長沙軌道交通職業(yè)學院《數(shù)據(jù)庫概論》2023-2024學年第二學期期末試卷
- 揚州中瑞酒店職業(yè)學院《管理研究方法與模型工具》2023-2024學年第二學期期末試卷
- 山西省臨汾市2025屆數(shù)學三下期末監(jiān)測模擬試題含解析
- 口腔醫(yī)學述職報告
- 教培機構分校長述職報告
- 產(chǎn)褥期基礎知識要點
- 倉儲部出貨培訓
- 操作系統(tǒng)磁盤管理
- 教育史中的夸美紐斯
- 信息技術 第二冊(五年制高職)課件 9.1.3 人工智能的社會價值
- 建筑工地值班制度
- 環(huán)境政策協(xié)同效應-第1篇-深度研究
- Unit 6 Topic 2 Section C 課件 -2024-2025學年仁愛科普版八年級英語下冊
- 中國近現(xiàn)代史綱要學習心得體會與民族團結
- 2022年北京市初三一模道德與法治試題匯編:守望精神家園
- 2024年福建省能源石化集團有限責任公司秋季校園招聘153人筆試參考題庫附帶答案詳解
- 2025年修訂版二手房買賣協(xié)議
- 棚戶區(qū)改造項目(EPC)方案投標文件(技術方案)
- 鍋爐應急預案
- 2025年焦作師范高等??茖W校高職單招高職單招英語2016-2024歷年頻考點試題含答案解析
- 2025山東文旅云智能科技限公司招聘19人易考易錯模擬試題(共500題)試卷后附參考答案
評論
0/150
提交評論