




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
LiberationSerif低端的stm32采用的仍然是馮若依曼架地址總線數(shù)據(jù)總線數(shù)據(jù)分離的程序總線和數(shù)據(jù)總線允許在一個(gè)機(jī)器周期內(nèi)同時(shí)獲得指令字(來(lái)自程序存儲(chǔ)器)和操作數(shù)(來(lái)自數(shù)據(jù)存儲(chǔ)器),從而提高執(zhí)行速度和數(shù)據(jù)的吞吐率。馮若依曼架構(gòu)哈佛架構(gòu)存儲(chǔ)器類型單一的存儲(chǔ)器指令與數(shù)據(jù)存儲(chǔ)分離總線類型單一的總線:用于傳輸指令與數(shù)據(jù)兩套獨(dú)立的總線:一套指令,一套數(shù)據(jù)優(yōu)點(diǎn)簡(jiǎn)化了硬件設(shè)計(jì)降低了復(fù)雜性與成本高性能,低延時(shí)同時(shí)讀取指令與數(shù)據(jù)局限性由于指令與數(shù)據(jù)共享總線,可能會(huì)產(chǎn)生瓶頸多套獨(dú)立的存儲(chǔ)器與總線應(yīng)用總線系統(tǒng)。在這個(gè)系統(tǒng)中,AHB總線主要用于高性能模塊(如CPU、DMA和DSP等)之間的3:驅(qū)動(dòng)與IO控制一通用DMA1(directmemoryaccess)和通用DM●四個(gè)被動(dòng)單元一內(nèi)部閃存存儲(chǔ)器圖1系統(tǒng)結(jié)構(gòu)總線矩陣總線矩陣企企 BKPIWDGbxCANWWDGTIM7TIM6TIM5TIM4TIM3Flash接口我們可以拓展內(nèi)存,如外部的NORFLASH,NANDFLASH,SRAM等,通過(guò)FSMC接口ST注意:當(dāng)對(duì)APB寄存器進(jìn)行8位或者16位訪問(wèn)時(shí),該訪問(wèn)會(huì)問(wèn),橋會(huì)自動(dòng)將8位或者32位的數(shù)據(jù)擴(kuò)展以配合32位的向量。每個(gè)GPI/0端口有兩個(gè)32位配置寄存器(GPI0xCRL,GPIOxCRH),兩個(gè)32位數(shù)據(jù)寄存除寄存器輸出數(shù)據(jù)寄存器輸入數(shù)據(jù)奇存器模擬輸入復(fù)用功能輸入至片上外設(shè)讀出保護(hù)除寄存器輸出數(shù)據(jù)寄存器輸入數(shù)據(jù)奇存器模擬輸入復(fù)用功能輸入至片上外設(shè)讀出保護(hù)二極管-□10引腳[輸入驅(qū)動(dòng)器寫(xiě)入二二二二二二極管或關(guān)閉復(fù)用功能輸出GPIO可以被配置為8種狀態(tài),其中輸入輸出各4種狀態(tài)。輸出模式有:①通用推挽輸出②通用開(kāi)漏輸出③復(fù)用功能推挽輸出模式④復(fù)用功能開(kāi)漏輸出模式輸入模式有:⑤模擬輸入模式⑥浮空輸入模式⑦上拉輸入模式⑧下拉輸入模式開(kāi)漏輸出:推挽輸出:推挽輸出則是一種使用一對(duì)選擇性地從相連負(fù)載灌電流或者拉電流的器件的電路。它通常使用一對(duì)參數(shù)相同的功率三極管或MOSFET管,以推挽方式存在于電路中。推挽輸出可以GPI0內(nèi)部示意圖輸出關(guān)閉打開(kāi)打開(kāi)—打開(kāi)低電平浮空/高阻態(tài)開(kāi)漏模GPIO內(nèi)部示意圖實(shí)現(xiàn)了5V單片機(jī)對(duì)33V芯片的控偉高阻態(tài)—→被R1拉到3.3V低鬼平輸出特性:推挽輸出能夠直接輸出高、低電平,這使得它能夠直接連接數(shù)字器件。相比之下,開(kāi)漏輸出在輸出高電平時(shí)并沒(méi)有驅(qū)動(dòng)能力,需要借助外部的上拉電阻(I0基本架構(gòu)中有出現(xiàn))才能真正輸出高電平。因此,開(kāi)漏輸出在輸出特性上更加依賴于外部電路的配置。電流驅(qū)動(dòng)能力:推挽輸出在電路中能夠向負(fù)載灌電流,也可以從負(fù)載抽取電流,因此其驅(qū)動(dòng)能力相對(duì)較強(qiáng)。而開(kāi)漏輸出更適合做電流型的驅(qū)動(dòng),其吸收電流的能力一般在20mA以內(nèi),表現(xiàn)出一定的局限性。總結(jié)1:輸出高低電平與電源電壓基本沒(méi)有壓差。2:高低電平驅(qū)動(dòng)能力較強(qiáng),一般數(shù)字芯片推挽輸出I0口驅(qū)動(dòng)電流最大可到20mA。3:電平切換速度快不支持線與(多個(gè)GPIO輸出連接在一起)開(kāi)漏(OD)輸出內(nèi)部結(jié)構(gòu)輸出控制G輸出控制S_芯片內(nèi)部1:可實(shí)現(xiàn)電平轉(zhuǎn)換,輸出電平取決與上拉電阻電源。2:可以實(shí)現(xiàn)IO的線與。1:高電平驅(qū)動(dòng)能力差,取決與外部上拉電阻。2:電平切換速度速率取決與外部上拉電阻,電阻越小速度越快。(1)APB總線對(duì)應(yīng)引腳控制的外設(shè)使能,打開(kāi)時(shí)鐘線。(2)定義初始化結(jié)構(gòu)體(3)對(duì)引腳,時(shí)鐘頻率,模式的配置。(3)調(diào)用函數(shù)完成對(duì)應(yīng)引腳的初始化。//無(wú)需大功率時(shí)可使用開(kāi)漏輸出OD(Open_D(4)引腳電平設(shè)置GPI0_ResetBits(GPIOA,GPIO_Pin_8);//設(shè)置低電平GPI0_SetBits(GPIOC,GP(5)讀取低電平charread_num=GPIO_ReadInputDataBit(GPIOA,GPI01:文件中將GPI0x類型定義為指針類型,其他許多名詞都定義為了指針。1409fdefine2:pin腳定義為映射內(nèi)存地址。(強(qiáng)轉(zhuǎn)為16位)#define#define#define#define#definefdefine#define#define#define GPIo_Pin_3GPIO_Pin_5GPIO_Pin_6GPIo_Pin_7GPIo_Pin_8GPIo_Pin_9GPIO_Pin_12GPIO_Pin_13GPIo_Pin_14GPIo_Pin_15GPIo_Pin_Ai1 /*Checktheparameters*GPIO_Mode_IN_FLOATING=0x04,*@brief微秒級(jí)延時(shí)SysTick->LOAD=72*xus;//設(shè)置定時(shí)器重裝值SysTick->VAL=0x00;//清空當(dāng)前計(jì)數(shù)值SysTick->CTRL=0x00000005;//設(shè)置時(shí)鐘源為HCLK,啟動(dòng)定時(shí)器while(!(SysTick->CTRL&0x00010000));//等待計(jì)數(shù)到0SysTick->CTRL=0x00000004;//關(guān)閉定時(shí)器*@brief毫秒級(jí)延時(shí)*@paramxms延時(shí)時(shí)長(zhǎng),范圍:0~4294967295*@brief秒級(jí)延時(shí)*@paramxs延時(shí)時(shí)長(zhǎng),范圍:0~4294967295voidDelay_s(uint32_t除了GPI0_ResetBits與GPIO_SetBits之外還可以使用GPIO_WriteBit控制單個(gè)位以及GPIO_Write控制整個(gè)寄存器。引名庫(kù)523PC140SC32.IN45607859OWKUP/USART2.CTS/ADC12.INO/TIM2.CH1.USAR12,RTS/ADC12INI/USART2DXADC12N2/TIM2OT5OSP12NSS/202SMBAWUSART3.CKT0TSP12.50/USART3.0IS/TSP2MSOUSART3RIS/TifTUSARTI.CTsUS8DM/CANRX/TIMI0USART1.RTS/U58OP/CANDVTiM5T0M2O1ETR/PA1SsP11N3PB3/TRACESWO/TIM2.O42/5P1.55以PA9,PA10配置串口1為例(2)端口重映射配置1:打開(kāi)GPI0時(shí)鐘與重映射時(shí)鐘(重映射一定要使能AFI0時(shí)鐘)//借助|可以對(duì)多個(gè)對(duì)象實(shí)現(xiàn)統(tǒng)一操作GargGPIo_PartialRemap_QargGPIO_PartialRemapQargGPIO_Partia1RemGargGPIo_Remap2_caNiθargGPIo_Remap_sWJ_JTAQargGPIo_Remap_sWJ_ADCIExternalIriggerInsectedConvADCIExternalTriggerReqularConversionremapADC2ExternalIriggerInjectedConversionremappingADC2ExternalTriggerReqularConversionremappingEthernetremapping(onlyforConnecFullsWJEnabled(sfAG-DP+SW-DE)butwlthoutSPI3/I253AlternateFunetionmapping(onlyforWhentheSPI3/12531sremappedusingthisGPIO端口串行線調(diào)試,借助復(fù)用功能切換調(diào)試方式)自此,將JTAG-DP功能的禁用,從而PA15可作為普通GPI0口使用,但是PA14與PA13端GPI0初始化結(jié)構(gòu)體配置1:使能被重映射到的I0端口時(shí)鐘;4:進(jìn)行重映射.按鍵的電平變化當(dāng)單片機(jī)處于數(shù)字輸入模式時(shí),由于輸入的是不確定的信號(hào),實(shí)際輸入值會(huì)在0/1之間跳在沒(méi)有外部信號(hào)輸入時(shí),如果加上上拉電阻則采集到的值一直是1;而接下拉電阻后,常態(tài)時(shí)I0引腳上為確定的低電平,I0引腳輸入為確定的低電平信號(hào),而兩者“懸浮”,造成電路的不穩(wěn)定。 性質(zhì)浮空輸入數(shù)字輸入則電平不確定上拉輸入數(shù)字輸入懸空時(shí)默認(rèn)高電平下拉輸入數(shù)字輸入懸空時(shí)默認(rèn)低電平開(kāi)漏輸出數(shù)字輸出推挽輸出數(shù)字輸出復(fù)用開(kāi)漏輸出數(shù)字輸出復(fù)用推挽輸出數(shù)字輸出由片上外設(shè)控制,高電平接VDD,低電平接VSS引腳接連片上外設(shè)可以是1:GPIO_ReadInputDataBit(GPIOB,GPI0_Pin_0);讀取引腳輸入的高低電平狀態(tài)。if(!GPI0_ReadInputDataBit(GPIOB,G問(wèn)題Delay_ms(20);//在檢測(cè)到低電平時(shí)不確定是否進(jìn)入穩(wěn)定狀態(tài),借助Delay避免while(!GPIO_ReadInputDataBit(GPIOB,GPIO_Pin}2:GPI0_ReadInputDataBit(GPIOA,GPI0_Pin_8)讀取上一刻引腳的輸出寄存器中數(shù)值,從而{if(!GPIO_ReadInputDataBit(GPIOA,GGPIO_WriteBit(GPIOA,GPI0_PinGPIO_WriteBit(GPIOA,GPIO_Pin_時(shí)鐘樹(shù)與51只提供一個(gè)外部晶振與一個(gè)內(nèi)部晶振不同的是stm32提供了更多的晶振,并且通過(guò)預(yù)分頻器將不同頻率的信號(hào)發(fā)送給外設(shè)。hspratercanbethsfledperlpheral/FCLKCortex自由運(yùn)行時(shí)鐘APB2外設(shè)預(yù)分頻器2至定時(shí)器1和8至定時(shí)器1和8LK最人14MHz主時(shí)鐘輸出LSI。低速內(nèi)部時(shí)鐘信號(hào)主時(shí)鐘輸出在stm32系列中,main函數(shù)并不不是第一個(gè)執(zhí)行的函數(shù),在著之前會(huì)先函數(shù)。Vectors_sizeEQUVectorsE 位帶操作:通過(guò)位帶操作可以實(shí)現(xiàn)對(duì)對(duì)寄存器的單個(gè)位進(jìn)行操作,但是在一般的stm32中官方文檔對(duì)寄存器的操作都是以16位整體進(jìn)行操作:{曰{曰白白/*Checktheparametersif(BitVal!={}{}如果只是想單獨(dú)對(duì)一個(gè)位進(jìn)行操作時(shí),使用官方的 (現(xiàn)場(chǎng)保留),需要對(duì)多個(gè)寄存器進(jìn)行操作,因此通過(guò)對(duì)單個(gè)位進(jìn)行位帶操作可以避免如此因此在Corttex-M3內(nèi)核操作中,未來(lái)能達(dá)到直接操作某一個(gè)Bit的目的,就在內(nèi)核中開(kāi)辟了一塊區(qū)域(位帶別名):可以將ODR這類Bit位(位帶區(qū))映射到位帶別名區(qū)域?qū)?yīng)的地址,只需要操作映射后的地址,就可以實(shí)現(xiàn)操作這個(gè)Bit位,簡(jiǎn)單來(lái)說(shuō)就是映射二個(gè)則是片內(nèi)外設(shè)區(qū)的最低1MB范圍。1.SRAM區(qū)的最低1MB(0x20000000---0x200FFFFF)映射到(0x22000000---2.片內(nèi)外設(shè)區(qū)的最低1MB(0x40000000---0x400FFFFF)映射到(0x42000000---其實(shí)就是映射到偏移(距離自身)0x02000000外的32MB空間(位帶別名區(qū)),如下 0x6C000000-0x6FFFFFFF0x6800.0000-0x68FFFFFF0x6400.0000-0x67FFFFFF0x40024400-0x5FFFFFFF0x40023000-0x400233FF8Bit,它是映射到偏移0x02000000外的32Bit(4Byte)空間上。我們讀寫(xiě)0x22000000這個(gè)地址,其實(shí)就是操作0x20000000中的Bit0位。這就是所謂的“比特的膨脹對(duì)應(yīng)關(guān)系”,1Bit膨脹到32Bit(4字節(jié))。4字節(jié)對(duì)應(yīng)的就是那1Bit位的地址(CPU為32位,寄存器為32位,數(shù)據(jù)線與地址線都是以32位,因此一個(gè)地址位32位),而這個(gè)地址中的數(shù)據(jù)只有最低一位才有效(LSB),對(duì)其操作時(shí)也就是位帶操作的主要目的:通過(guò)Bit位地址(A)計(jì)算得到別名區(qū)地址(Addr)。1.SARM區(qū)計(jì)算公式(A為所在GPIO的基地址,n為對(duì)應(yīng)第幾號(hào)引腳)Addr=0x22000000+((A-0x20000000)*8+n)*4=0x22000000+(A-0x20000000)*32+n*42.Addr=0x42000000+((A-0x40000000)*8+n)*4=0x42000000+(A-0x40000000)*32+n*4AliasAddr=((A&0xF0000000)+0x02000000+((A&0x000FFFFF)<<5)+(n<<2))#definePAout(x)*(volatileuint32_t*)(0x42000000+(GPIOA_BASE+0x0C-#definePBin(x)*(volatileuint32_t*)(0x42000000+(GPIOB_BASE+0x08-{對(duì)寄存器的直接操作屬于原子操作,這樣的操作相當(dāng)快,并且可以有源競(jìng)爭(zhēng)(對(duì)硬件的操作時(shí)無(wú)法被異常狀態(tài)打斷)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年文化遺產(chǎn)保護(hù)與管理考試題及答案
- spijava面試題及答案
- 公共政策與社會(huì)穩(wěn)定的關(guān)系探討試題及答案
- 城市犯罪防控政策的有效性評(píng)估試題及答案
- 軟考網(wǎng)絡(luò)工程師復(fù)習(xí)計(jì)劃與試題及答案
- 新考綱適應(yīng)策略2025年信息系統(tǒng)項(xiàng)目管理師試題及答案
- 西方政治制度對(duì)國(guó)際關(guān)系的影響試題及答案
- 公共政策中的風(fēng)險(xiǎn)管理策略試題及答案
- 公共政策實(shí)施中的風(fēng)險(xiǎn)管理試題及答案
- 如何提升信息系統(tǒng)項(xiàng)目管理師考試中的獨(dú)立思考能力試題及答案
- 電場(chǎng)電場(chǎng)強(qiáng)度
- 白酒質(zhì)量要求 第4部分:醬香型白酒
- JT-T-329-2010公路橋梁預(yù)應(yīng)力鋼絞線用錨具、夾具和連接器
- 湖北武漢市2024屆高三沖刺模擬數(shù)學(xué)試卷含解析
- 2024年浙江臺(tái)州椒江區(qū)公安局警務(wù)輔助人員招聘筆試參考題庫(kù)附帶答案詳解
- 廣東省廣州市天河區(qū)2024年八年級(jí)下冊(cè)數(shù)學(xué)期末考試試題含解析
- 土木工程專業(yè)畢業(yè)答辯常問(wèn)問(wèn)題
- 紅色大氣商務(wù)企業(yè)啟動(dòng)會(huì)企業(yè)啟動(dòng)儀式
- 2024年新改版蘇教版六年級(jí)下冊(cè)科學(xué)全冊(cè)復(fù)習(xí)資料
- 手機(jī)制造行業(yè)未來(lái)五至十年行業(yè)分析
- 《發(fā)酵生物技術(shù)》課件
評(píng)論
0/150
提交評(píng)論