嵌入式原理與應(yīng)用期末復(fù)習(xí)



《嵌入式原理與應(yīng)用期末復(fù)習(xí)》由會(huì)員分享,可在線閱讀,更多相關(guān)《嵌入式原理與應(yīng)用期末復(fù)習(xí)(43頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、單擊此處編輯母版標(biāo)題樣式,,單擊此處編輯母版文本樣式,,第二級,,第三級,,第四級,,第五級,,*,嵌入式系統(tǒng)原理與應(yīng)用,*,期末復(fù)習(xí),電話:,660345 13777780345,,Email: ywb_jsj@,*,嵌入式系統(tǒng)原理與應(yīng)用,2,課程性質(zhì)與目的,嵌入式原理與應(yīng)用是電類本科專業(yè)的一門核心選修課程,該課程涵蓋了,微電子技術(shù)、電子信息技術(shù)、計(jì)算機(jī)軟、硬件,等多個(gè)領(lǐng)域,且,技術(shù)性,、工程性、,實(shí)踐性,和綜合性都很強(qiáng)的一門課。,,使學(xué)生獲得嵌入式系統(tǒng)的有關(guān)軟硬知識,掌握嵌入式系統(tǒng),程序設(shè)計(jì),的基本方法和技巧;結(jié)合,上機(jī)實(shí)踐,,使學(xué)生對嵌入式系統(tǒng)程序設(shè)計(jì)和軟件開發(fā)過程有一個(gè)比
2、較全面地、系統(tǒng)地了解;初步具備應(yīng)用嵌入式系統(tǒng)解決實(shí)際問題的能力。,,,*,嵌入式系統(tǒng)原理與應(yīng)用,3,課程內(nèi)容,*,嵌入式系統(tǒng)原理與應(yīng)用,4,嵌入式系列課程,嵌入式系統(tǒng)原理與應(yīng)用,,面向數(shù)據(jù)采集、控制等,實(shí)時(shí)應(yīng)用,,基于,STM32 Cortex M3,嵌入式微控制器,講述嵌入式系統(tǒng)基本原理與應(yīng)用,,,嵌入式操作系統(tǒng)基礎(chǔ),,基于,ucOS/II,嵌入式實(shí)時(shí)操作系統(tǒng),講述嵌入式操作系統(tǒng)基本原理,,,嵌入式系統(tǒng)軟件開發(fā),,面向嵌入式網(wǎng)關(guān)等高端應(yīng)用,基于嵌入式,Linux,操作系統(tǒng),側(cè)重嵌入式,Linux,下的軟件開發(fā),STM32F,系列 圖解,STM32F10x,系列微控制器 系統(tǒng)結(jié)構(gòu),,存儲
3、器組織,4G,字節(jié)的尋址空間,地址范圍:,0x0000 0000----0xffff ffff,1.,空間,共分為,8,塊,:,block0,~,block7,,每塊,512M,外設(shè)寄存器組,,(,PERIPHERALS,),,---,包括輸入輸出端口,,數(shù)據(jù)存儲器,,(SRAM),,,程序存儲器,,(CODE),,APB1,,APB2,,,AHB,0x4001 0000,0x4002 0000,0x4000 0000,外設(shè)寄存器求法,,#define PERIPH_BASE ((u32)0x40000000),寄存器地址,=,總線基址,+,外圍總線基址,,,+,外設(shè)地址偏
4、移量,+,寄存器偏移量,#define APB1PERIPH_BASE PERIPH_BASE,,#define APB2PERIPH_BASE (PERIPH_BASE + 0x10000),,#define AHBPERIPH_BASE (PERIPH_BASE + 0x20000),#define GPIOA_BASE (APB2PERIPH_BASE + 0x0800),,#define GPIOB_BASE (APB2PERIPH_BASE + 0x0C00),,#define GPIOC_BASE
5、 (APB2PERIPH_BASE + 0x1000),*,嵌入式系統(tǒng)原理與應(yīng)用,10,標(biāo)準(zhǔn)外設(shè)庫文件體系結(jié)構(gòu),*,嵌入式系統(tǒng)原理與應(yīng)用,11,標(biāo)準(zhǔn)外設(shè)庫文件描述:,CMSIS,文件,文件名,功能描述,具體功能說明,core_cm3.h,,core_cm3.c,Cortex-M3,內(nèi)核及其設(shè)備文件,訪問,Cortex-M3,內(nèi)核及其設(shè),備,,提供,NVIC,,,SysTick,等訪,問,Cortex-M3,的,CPU,寄存器和內(nèi)核外設(shè)的函數(shù),stm32f10x.h,微控制器專用頭文件,包,含了,STM32F10x,全系列所有外設(shè)寄存器的定義(寄存器的基地址和布局)、位定義、中
6、斷向量表、存儲空間的地址映射等,system_stm32f10x.h,,system_stm32f10x.c,微控制器專用系統(tǒng)文件,函數(shù),SystemInit,用,來初始化微控制,器,,,,Sysem_ExtMemCtl,配,置外部存儲器控制器。它位于文,件,startup_stm32f10x_xx.s,/.c,,在跳轉(zhuǎn)到,main,前調(diào),用,SystemFrequncy,,該值代表系統(tǒng)時(shí)鐘頻率,startup_stm32f10x_Xd.s,編譯器啟動(dòng)代碼,微控制器專用的中斷處理程序列表,(,與頭文件一致,),弱,定義,(Weak),的中斷處理程序默認(rèn)函數(shù),(,可以被用戶代碼覆蓋,),,,,該
7、,文件是與編譯器相關(guān)的,*,嵌入式系統(tǒng)原理與應(yīng)用,12,外設(shè)驅(qū)動(dòng)文件,文件名,功能描述,具體功能說明,stm32f10x_conf.h,固件庫配置文件,通過更改包含的外設(shè)頭文件來選擇固件庫所使用的外設(shè),在新建程序和進(jìn)行功能變更之前應(yīng)當(dāng)首先修改對應(yīng)的配置。,stm32f10x_it.h,,stm32f10x_it.c,外設(shè)中斷函數(shù)文件,用戶可以相應(yīng)的加入自己的中斷程序的代碼,對于指向同一個(gè)中斷向量的多個(gè)不同中斷請求,用戶可以通過判斷外設(shè)的中斷標(biāo)志位來確定準(zhǔn)確的中斷源,執(zhí)行相應(yīng)的中斷服務(wù)函數(shù)。,stm32f10x_ppp.h,,stm32f10x_ppp.c,外設(shè)驅(qū)動(dòng)函數(shù)文件,包括了相關(guān)外設(shè)的初始
8、化配置和部分功能應(yīng)用函數(shù),這部分是進(jìn)行編程功能實(shí)現(xiàn)的重要組成部分。,Application.c,用戶文件,用戶程序文件,通過標(biāo)準(zhǔn)外設(shè)庫提供的接口進(jìn)行相應(yīng)的外設(shè)配置和功能設(shè)計(jì)。,misc.h,,misc.c,,單獨(dú)對于,NVIC(,中斷向量,嵌套,),的外設(shè)驅(qū)動(dòng),*,嵌入式系統(tǒng)原理與應(yīng)用,13,STM32,標(biāo)準(zhǔn)外設(shè)庫:命名規(guī)則,PPP,表示任一外設(shè)縮寫,如,ADC,、,GPIO,,系統(tǒng)、源程序文件和頭文件命名都以,stm32f10x,開頭,,常量,僅被用于一個(gè)文件的,定義于該文件中;被用于多個(gè)文件的,在對應(yīng)的頭文件中定義;所有常量命名都用大寫字母,,寄存器作為常量處理,用大寫字母命名,通常與用戶
9、手冊中的命名一致,,外設(shè)函數(shù)的命名以該外設(shè)的縮寫加下劃線開頭,每個(gè)單詞的第一個(gè)字母都由英文字母大寫書寫,如:,USART_SendData,,在函數(shù)命中,只允許存在一個(gè)下劃線,用以分隔外設(shè)縮寫和函數(shù)名的其他部分,,*,嵌入式系統(tǒng)原理與應(yīng)用,14,命名規(guī)則,PPP_Init,函數(shù),其功能是根據(jù),PPP_InitTypeDef,中指定的參數(shù),初始化外設(shè),PPP,,如,TIM_Init,,PPP_DeInit,函數(shù)用于復(fù)位外設(shè),PPP,的所有寄存器至默認(rèn)值,例如,TIM_DeInit,,PPP_StructInit,函數(shù)用于復(fù)位,PPP_InitTypeDef,結(jié)構(gòu)體中的成員至默認(rèn)值,如,USART
10、_StructInit,,PPP_Cmd,函數(shù)用于使能或失能外設(shè),PPP,,如,USART_Cmd,,PPP_ITConfig,函數(shù)用于使能或失能來自外設(shè),PPP,的某中斷源,如,RCC_ITConfig,,*,嵌入式系統(tǒng)原理與應(yīng)用,15,命名規(guī)則,PPP_DMAConfig,函數(shù)用于使能或失能外設(shè),PPP,的,DMA,接口,如,TIM_DMAConfig,,用以配置外設(shè)功能的函數(shù),總是以字符串“,Config”,結(jié)尾,如,GPIO_PinRemapConfig,,PPP_GetFlagStatus,函數(shù)用于檢查外設(shè),PPP,某標(biāo)志位被設(shè)置與否,如,I2C_GetFlagStatus,,PPP
11、_ClearFlag,函數(shù)用于清除外設(shè),PPP,的標(biāo)志位,如,I2C_ClearFlag,,PPP_GetITStatus,函數(shù)用于判斷來自外設(shè),PPP,的中斷發(fā)生與否,如,I2C_GetITStatus,*,嵌入式系統(tǒng)原理與應(yīng)用,16,數(shù)據(jù)類型和結(jié)構(gòu):變量(,stdint.h/core_cm3.h,),typedef unsigned char,uint8_t;,,typedef unsigned short int,uint16_t;,,typedef unsigned int,uint32_t;,,,#define __I volati
12、le const,(,read only,),,#define __IO volatile,(,,read / write,),,typedef signed char,int8_t;,,typedef signed short int,int16_t;,,typedef signed int,int32_t;,volatile,的作用,,*,嵌入式系統(tǒng)原理與應(yīng)用,17,定義為,volatile,的變量是說這變量可能會(huì)被意想不到地改變,優(yōu)化器在用到這個(gè)變量時(shí)必須每次都小心地重新讀取這個(gè)變量的值,而不是使用保存在寄存器里的備份。
13、,s,tatic,i,nt?i=0;,,int?main(void),,{?...,,while?(1),,{,,,if?(i),,dosomething();,,},,},,void?ISR_2(void),,{? i=1; ?},編譯器判斷在main函數(shù)里面沒有修改過i,因此可能只執(zhí)行一次對從i到某寄存器的讀操作,然后每次if判斷都只使用這個(gè)寄存器里面的“i副本”,可能會(huì)導(dǎo)致dosomething永遠(yuǎn)也不會(huì)被調(diào)用。,*,嵌入式系統(tǒng)原理與應(yīng)用,18,數(shù)據(jù)類型和結(jié)構(gòu):變量(,stm32f10x.h,),typedef int32_t,s32,;,,typedef int16_t,s16
14、,;,,typedef int8_t,s8,;,,typedef const int32_t,sc32,;//,只讀變量,,typedef const int16_t,sc16,;,,typedef const int8_t,sc8,;,,typedef __IO int32_t,vs32,;//,,typedef __IO int16_t,vs16,;,,typedef __IO int8_t,vs8,;,,typedef __I int32_t,vsc32,;,,typedef __I int16_t,vsc16,;,,typedef __I int8_t,vsc8,;,,,說明變量在程序
15、執(zhí)行中可被隱含地改變,,,優(yōu)化器在用到這個(gè)變量時(shí)必須每次都小心地重新讀取這個(gè)變量的值,而不是使用保存在寄存器里的備份,,*,嵌入式系統(tǒng)原理與應(yīng)用,19,數(shù)據(jù)類型和結(jié)構(gòu):變量(,stm32f10x.h,),typedef uint32_t,u32,;,,typedef uint16_t,u16,;,,typedef uint8_t,u8,;,,typedef const uint32_t,usc32,;//,只讀變量,,typedef const uint16_t,usc16,;,,typedef const uint8_t,usc8,;,,typedef __IO uint32_t,vu32,
16、;//,,typedef __IO uint16_t,vu16,;,,typedef __IO uint8_t,vu8,;,,typedef __I uint32_t,vuc32,;,,typedef __I uint16_t,vuc16,;,,typedef __I uint8_t,vuc8,;,,,*,嵌入式系統(tǒng)原理與應(yīng)用,20,數(shù)據(jù)類型和結(jié)構(gòu):布爾類型,布爾類型定義為:,,,typedef enum,,{,,FALSE = 0;,,TRUE = !FALSE;,,} bool;,標(biāo)準(zhǔn),C,規(guī)定:“枚舉類型的尺寸是以能夠容納最大枚舉子的值的整數(shù)的尺寸”,就是說可以是,char,、,shor
17、t,和,int,。,*,嵌入式系統(tǒng)原理與應(yīng)用,21,數(shù)據(jù)類型和結(jié)構(gòu):標(biāo)志位狀態(tài)類型,標(biāo)志位類型的兩個(gè)可能值為“設(shè)置,(SET)”,、“重置,(RESET)”,:,,,typedef enum,,{,,RESET = 0;,,SET = !RESET;,,} FlagStatus;,*,嵌入式系統(tǒng)原理與應(yīng)用,22,數(shù)據(jù)類型和結(jié)構(gòu):功能狀態(tài)類型,功能狀態(tài)類型的兩個(gè)可能值為“使能,(ENABLE)”,、“失能,(DISABLE)”,:,,,typedef enum,,{,,DISABLE = 0;,,ENABLE = !DISABLE;,,} FunctionalState;,,,*,嵌入式系統(tǒng)原理
18、與應(yīng)用,23,數(shù)據(jù)類型和結(jié)構(gòu):錯(cuò)誤狀態(tài)類型,錯(cuò)誤狀態(tài)類型的兩個(gè)可能值為“成功,(SUCCESS)”,、“出錯(cuò),(ERROR)”,:,,,typedef enum,,{,,ERROR = 0;,,SUCCESS = !ERROR;,,} ErrorStatus;,,,*,嵌入式系統(tǒng)原理與應(yīng)用,24,數(shù)據(jù)類型和結(jié)構(gòu):外設(shè)結(jié)構(gòu),外設(shè)結(jié)構(gòu)可以通過指向各個(gè)外設(shè)的指針訪問各外設(shè)的控制寄存器,這些指針?biāo)赶虻臄?shù)據(jù)結(jié)構(gòu)與各個(gè)外設(shè)的控制寄存器布局一一對應(yīng),文件,stm32f10x.h,包含了所有外設(shè)控制寄存器的結(jié)構(gòu),如,USART,寄存器結(jié)構(gòu)的聲明:,,typedef struct,,{,,vu16 SR;
19、 u16 RESERVED0;,,vu16 DR; u16 RESERVED1;,,vu16 BBR; u16 RESERVED2;,,vu16 CR1; u16 RESERVED3;,,vu16 CR2; u16 RESERVED4;,,vu16 CR3; u16 RESERVED5;,,vu16 GTPR; u16 RESERVED6;,,},USART_TypeDef;,*,嵌入式系統(tǒng)原理與應(yīng)用,25,時(shí)鐘系統(tǒng),*,嵌入式系統(tǒng)原理與應(yīng)用,26,1,、,STM32,有,5,個(gè)時(shí)鐘源,:HSI,、,HSE,、,LSI,、,
20、LSE,、,PLL,。,,,①,HSI,是,高速內(nèi)部,時(shí)鐘,,RC,振蕩器,頻率為,8MHz,,精度不高。 ②,HSE,是,高速外部,時(shí)鐘,可接石英,/,陶瓷諧振器,或者接外部時(shí)鐘源,頻率范圍為,4MHz~16MHz,。 ③,LSI,是,低速內(nèi)部,時(shí)鐘,,RC,振蕩器,頻率為,40kHz,,提供低功耗時(shí)鐘。 ④,LSE,是,低速外部,時(shí)鐘,接頻率為,32.768kHz,的石英晶體。 ⑤,PLL,為鎖相環(huán),倍頻,輸出,,其時(shí)鐘輸入源,可選擇為,HSI/2,、,HSE,或者,HSE/2,。,,,倍頻可選擇為,2~16,倍,但是其輸出頻率最大不得超過,72MHz,。,*,嵌入
21、式系統(tǒng)原理與應(yīng)用,27,RCC,庫函數(shù):,RCC_AHBPeriphClockCmd,函數(shù)原型,void,RCC_,AHBPeriphClockCmd(u32 RCC_AHBPeriph, FunctionalState NewState),功能描述,使能或失能,AHB,外設(shè)時(shí)鐘,輸入?yún)?shù),RCC_AHBPeriph,: AHB,上的設(shè)備,,NewState,: ENABLE,或,DISABLE,輸出參數(shù),無,返回值,無,先決條件,無,應(yīng)用示例,RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1,ENABLE),STM32,單片機(jī)的每一個(gè)輸入,/,輸出引腳可以配置
22、成以下,8,種模式,:,STM32,單片機(jī)的,GPIO,端口模式:,輸入浮空:,IN_FLOATING,,輸入上拉:,IPU,(,In Push-Up,),,輸入下拉,:,IPD,(,In Push-Down,),,模擬輸入,:,AIN,(Analog In),,,開漏輸出:,Out_OD,(,Open Drain Output,),,推挽式輸出,:,Out_PP,(Push-Pull Output),,推挽式復(fù)用功能,:,AF_PP,(,Push-Pull Output Alternate-Function,),,,開漏復(fù)用功能,:,AF_OD,(,Open Drain Output Alt
23、ernate-Function,),,,,輸 入,輸 出,復(fù)用輸出,I/O,端口位的推挽輸出配置,推挽模式:輸出寄存器上的,0,激活,N-MOS,,而輸出寄存器上的,1,將激活,P-MOS,。,激活,施密特觸發(fā)輸入,弱上拉和下拉電阻被,禁止,在每個(gè),APB2,時(shí)鐘周期,出現(xiàn)在,I/O,腳上的數(shù)據(jù)被采樣到,輸入數(shù)據(jù)寄存器,*,嵌入式系統(tǒng)原理與應(yīng)用,30,嵌套向量中斷控制器,NVIC,:,Nested Vectored Interrupt Controller,,管理,ARM Cortex-M3,處理器的所有中斷和中斷優(yōu)先級,是,Cortex-M3,不可分離的一部分,。,,ARM Cort
24、ex-M3,處理器的,NVIC,:支持,256,個(gè)中斷(,16,個(gè)內(nèi)核中斷,+,240,個(gè)外部中斷,)和可編程,256,級中斷優(yōu)先級的設(shè)置。,,所有基于,ARM Cortex-M3,內(nèi)核的處理器(包括,STM32,)的,256,個(gè)中斷中前面的,16,個(gè)內(nèi)核中斷都是一樣的,而后面的,240,個(gè),外部中斷,的具體數(shù)目和中斷優(yōu)先級的位數(shù)由芯片廠商決定。,,,,中斷優(yōu)先級,ARM Cortex-M3,內(nèi)核定義了兩類優(yōu)先級:,,,搶占式優(yōu)先級,,,響應(yīng)優(yōu)先級,(又稱為副優(yōu)先級或子優(yōu)先級),注意:通常,每個(gè),中斷源都需要指定這兩類優(yōu)先級,。,,STM32,單片機(jī)的中斷優(yōu)先級都是針對,“,中斷通道,”,的。
25、當(dāng)該中斷通道的優(yōu)先級確定后,也就確定了該外圍設(shè)備的中斷優(yōu)先級,并且該設(shè)備所能產(chǎn)生的所有類型的中斷,都享有相同的通道中斷優(yōu)先級。,,,至于該設(shè)備本身產(chǎn)生的多個(gè)中斷的執(zhí)行順序,則取決于用戶的中斷服務(wù)程序。,結(jié),構(gòu)體,NVIC_InitTypeDef,typedef struct,,{,,u8 NVIC_IRQChannel;,//,用于選擇中斷通道,,u8 NVIC_IRQChannelPreemptionPriority;,,,//,用于設(shè)置中斷通道的搶占式優(yōu)先級,,u8 NVIC_IRQChannelSubPriority;,,,//,用于設(shè)置中斷通道的子優(yōu)先級,,FunctionalS
26、tate NVIC_IRQChannelCmd;,,,//,用于選中的中斷通道的中斷使能或中斷失能,,},NVIC_,Init,TypeDef,;,EXTI,(外部中斷與外部事件,)控,制,器,EXTI,由,19,個(gè)產(chǎn)生事件,/,中斷要求的,邊沿檢測器,組成。,,每個(gè)輸入線可以獨(dú)立地配置輸入類型,(,脈沖或掛起,),和對應(yīng)的觸發(fā)事件,(,上升沿、下降沿、雙邊沿都觸發(fā),),。,,,每個(gè)輸入線都可以獨(dú)立地被屏蔽。掛起寄存器保持著狀態(tài)線的中斷請求。,從,外部激勵(lì)信號,來看,中斷和事件是沒有分別的,只是在芯片內(nèi)部分開,一路信號會(huì)向,CPU,產(chǎn)生中斷請求,另一路信號會(huì)向其它功能模塊,發(fā)送脈沖觸發(fā)信號
27、,。,,,事件本質(zhì)上就是一個(gè)觸發(fā)信號(脈沖),是用來觸發(fā)特定的外設(shè)模塊或核心本身,(,喚醒,),;而中斷則是一個(gè)固定的電平信號。,,,事件可以觸發(fā)中斷,也可以不觸發(fā);,,中斷有可能被更優(yōu)先的中斷屏蔽,事件不會(huì)被屏蔽。,中斷和事件的比較,*,嵌入式系統(tǒng)原理與應(yīng)用,35,EXTI_InitTypeDef,結(jié)構(gòu)體,typedef struct,,{,,u32 EXTI_Line;,,,//,待使能或失能的外部線路,,EXTI_Linex, x=0~19,,EXTIMode_TypeDef EXTI_Mode,;,,,//,工作模式,,EXTI_Mode_Event,EXTI_Mode_In
28、terrupt,,EXTITrigger_TypeDef EXTI_Trigger;,,,//,觸發(fā)邊沿,,EXTI_Trigger_Falling,,//EXTI_Trigger_Rising,EXTI_Trigger_Rising_Falling,,FunctionState EXTI_LineCmd;,//,ENABLE/DISABLE,,}EXTI_,Init,TypeDef;,//,用于初始化外部中斷,/,事件的參數(shù),STM32,的,112,個(gè)通用,I/O,端口線連接到,16,個(gè)外部中斷,/,事件(,EXTIx,)線上,其中每根,EXTIx,線上可接,PAx,~,PGx,共,7,
29、個(gè)通用,I/O,端口線其中,之一,。,,x=0,~1,5,。(,16*7=112,),EXTI_Line,:,另外,3,種其他的外部中斷,/,事件控制器的連接如下:,,EXTI,線,16,連接到,PVD,輸出;,,EXTI,線,17,連接到,RTC,鬧鐘事件;,,EXTI,線,18,連接到,USB,喚醒事件。,可以通過,GPIO_EXTILineConfig,來選擇,同一時(shí)刻 EXTx只能響應(yīng)一個(gè)端口的事件觸發(fā),,主,要由通過,可編程預(yù)分頻器,驅(qū)動(dòng)的,16,位自動(dòng)裝載,計(jì)數(shù)器,,+,自動(dòng)裝載寄存器,構(gòu)成,。,通用定時(shí)器時(shí)基單元,時(shí)基單元包含: ● 計(jì)數(shù)器寄存器,(TIMx_CNT) ●,預(yù)
30、分頻器寄存器,(TIMx_PSC),(帶有,緩沖器,,即影子寄存器),●,自動(dòng)裝載寄存器,(TIMx_ARR),(帶有,緩沖器,,即影子寄存器),TIMx_ARR,TIMx_CNT,TIMx_PSC,,CK_PSC,CK_CNT,AutoReload Register,,,PSC:Prescaler 預(yù)分頻器,/* TIM Time Base Init structure definition */,,t,ypedef struct,,{,,u16 TIM_Period,;//,設(shè)置通用定時(shí)器,TIMx,的定時(shí)周期,,u16 TIM_Prescaler;,//,設(shè)置通用定時(shí)器,TIMx,的預(yù)分
31、頻值,,u16 TIM_ClockDivision,;//,用于對通用定時(shí)器,TIMx,的內(nèi)部,,,//,時(shí)鐘,TIMxCLK(to TIM2,3,4,5,6&7),進(jìn)行分頻采樣,,u16 TIM_CounterMode,;//,設(shè)置通用定時(shí)器,TIMx,的計(jì)數(shù)模式,,,u8 TIM_RepetitionCounter;,//,重復(fù)寄存器值,僅在使用,,,//TIM1,和,TIM8,的高級功能時(shí)有用,,} TIM_TimeBase,Init,TypeDef;,TIM_TimeBaseInitTypeDef,定時(shí)器的定時(shí)時(shí)間主要取決于,定時(shí)周期,TIM_Period,,和,預(yù)分頻值,TIM_Pr
32、escaler,,。,例如,當(dāng),TIM_Period=35999,,,TIM_Prescaler=1999,,表示對,TIMxCLK,頻率,,經(jīng),2000,分頻,得到脈沖頻率作為定時(shí)器,計(jì)數(shù)脈沖,當(dāng)通用定時(shí)器累計(jì),36000,個(gè)脈沖時(shí)(即定時(shí)時(shí)間到),產(chǎn)生一個(gè),更新事件,或者,中斷,。,TIMx_ARR,TIMx_CNT,TIMx_PSC,,TIM2CLK,TIM2,counter,clock,AutoReload Register,通用定時(shí)器,TIMx,的定時(shí)時(shí)間:假設(shè),TIMxCLK = 72MHz,,T= (TIM_Period+1),·,(TIM_Prescaler+1) / TIMx
33、CLK = (35999+1),·,(1999+1) / 72MHz = 1s,TIM_TimeBaseInitTypeDef,*,嵌入式系統(tǒng)原理與應(yīng)用,40,串口收發(fā)控制,發(fā)送和接收控制部分有CR1、CR2、CR3控制寄存器及,1,個(gè)狀態(tài)寄存器SR;,,通過向寄存器寫入各種控制參數(shù),來控制發(fā)送和接收,如停止位、中斷等;,,串口的狀態(tài)在任何時(shí)候都可從狀態(tài)寄存器中查詢得到。,CR3,*,嵌入式系統(tǒng)原理與應(yīng)用,41,USART,中斷請求,如果設(shè)置了對應(yīng)的使能控制位,這些,事件,就可以產(chǎn)生各自的,中斷,。,T,ransmission,C,omplete,,TXE,即,Tx,DR,E,mpty,
34、*,嵌入式系統(tǒng)原理與應(yīng)用,42,USART,中斷映像圖,發(fā)送中斷,接收中斷,例:,發(fā)送完成后,TXE,、,TC,會(huì)置位(,TXE,先于,TC,置位,),此時(shí)如果,TXEIE,或,TCIE,被設(shè)置,就會(huì)進(jìn)入相應(yīng)中斷處理程序。,USART,_InitTypeDef,typedef struct,,{,,u32 USART_BaudRate;,,u16 USART_WordLength;,,u16 USART_StopBits;,,u16 USART_Parity;,,u16 USART_HardwareFlowControl;,,u16 USART_Mode;,,…………..,//,同步模式,,},USART_,Init,TypeDef,;,,,//,用于初始化,USART,x,串口的參數(shù)(包括波特率、字長,—,即數(shù)據(jù)位、停止位、奇偶效驗(yàn)位、硬件流控制、工作模式),,//,異步模式,
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 專題黨課講稿:以高質(zhì)量黨建保障國有企業(yè)高質(zhì)量發(fā)展
- 廉政黨課講稿材料:堅(jiān)決打好反腐敗斗爭攻堅(jiān)戰(zhàn)持久戰(zhàn)總體戰(zhàn)涵養(yǎng)風(fēng)清氣正的政治生態(tài)
- 在新錄用選調(diào)生公務(wù)員座談會(huì)上和基層單位調(diào)研座談會(huì)上的發(fā)言材料
- 總工會(huì)關(guān)于2025年維護(hù)勞動(dòng)領(lǐng)域政治安全的工作匯報(bào)材料
- 基層黨建工作交流研討會(huì)上的講話發(fā)言材料
- 糧食和物資儲備學(xué)習(xí)教育工作部署會(huì)上的講話發(fā)言材料
- 市工業(yè)園區(qū)、市直機(jī)關(guān)單位、市紀(jì)委監(jiān)委2025年工作計(jì)劃
- 檢察院政治部關(guān)于2025年工作計(jì)劃
- 辦公室主任2025年現(xiàn)實(shí)表現(xiàn)材料
- 2025年~村農(nóng)村保潔員規(guī)范管理工作方案
- 在深入貫徹中央8項(xiàng)規(guī)定精神學(xué)習(xí)教育工作部署會(huì)議上的講話發(fā)言材料4篇
- 開展深入貫徹規(guī)定精神學(xué)習(xí)教育動(dòng)員部署會(huì)上的講話發(fā)言材料3篇
- 在司法黨組中心學(xué)習(xí)組學(xué)習(xí)會(huì)上的發(fā)言材料
- 國企黨委關(guān)于推動(dòng)基層黨建與生產(chǎn)經(jīng)營深度融合工作情況的報(bào)告材料
- 副書記在2025年工作務(wù)虛會(huì)上的發(fā)言材料2篇
相關(guān)資源
更多