1. 到目前為止,Cortex 系列正式發(fā)布的版本為 Cortex-A8、Cortex-R4和Cortex_M3,他們?nèi)繉?shí)現(xiàn)了Thumb-2 指令集(或子集),可滿足不同的性能、價(jià)格市場(chǎng)需求。 2.CM3處理器的主要性能指標(biāo) (1)Cortex-M3 處理器是一個(gè)低功耗的處理器,具有門數(shù)少, 中斷延遲小, 調(diào)試容易等特點(diǎn)。它是為功耗和價(jià)格敏感的應(yīng)用領(lǐng)域而專門設(shè)計(jì)的、具有較高性能的處理器,應(yīng)用范圍可從低端微控制器到復(fù)雜 SoC。 (2)Cortex-M3 處理器使用了 ARM v7-M 體系結(jié)構(gòu),是一個(gè)可綜合的、高度可配置的處理器。它包含了一個(gè)高效的哈佛結(jié)構(gòu)三級(jí)流水線,可提供 1.25DMIPS/MHz 的性能。在一個(gè)具有 32個(gè)物理中斷的標(biāo)準(zhǔn)處理器實(shí)現(xiàn)上(0.13um Metro @50MHz),達(dá)到了突出的 0.06mW/MHz 能效比。 (3)為降低器件成本,Cortex-M3 處理器采用了與系統(tǒng)部件緊耦合的實(shí)現(xiàn)方法,來(lái)縮小芯片面積,其內(nèi)核面積比現(xiàn)有的三級(jí)流水線內(nèi)核縮小了 30%。Cortex-M3 處理器實(shí)現(xiàn)了 Thumb-2指令集架構(gòu),具有很高的代碼密度,可降低存儲(chǔ)器需求,并能達(dá)到非常接近 32 位 ARM 指令集的性能。 (4)Cortex-M3 處理器在高性能內(nèi)核基礎(chǔ)上,集成了多種系統(tǒng)外設(shè),可以滿足不同應(yīng)用對(duì)成本和性能的要求。處理器是全部可綜合、高度可定制的(包括物理中斷、系統(tǒng)調(diào)試等),Cortex-M3 還有一個(gè)可選的細(xì)粒度的(fine-granularity)存儲(chǔ)器保護(hù)單元(MPU)和一個(gè)嵌入式跟蹤宏單元(ETM)。 3. Cortex-M3內(nèi)核具有如下特點(diǎn): - ARMv7-M Thumb-2 指令集架構(gòu)(ISA)的子集,包括了所有 16 位和 32 位的 Thumb-2。
- 基本指令,不包含 SIMD、DSP 和 ARM 系統(tǒng)訪問(wèn)。
- 采用哈佛處理器結(jié)構(gòu),在取指的同時(shí)可以讀取/存儲(chǔ)數(shù)據(jù)。
- 三級(jí)流水線。
- 單周期32位乘法。
- 硬件除法。
- Thumb和Debug狀態(tài)。
- Handler和Thread模式。
- 處理器狀態(tài)自動(dòng)保存與恢復(fù),保證低延遲的ISR進(jìn)入和退出。
- 可打斷-繼續(xù)LDM/STM, PUSH/POP。
- 支持ARMv6的BE8/LE(大小端)。
- ARMv6不對(duì)齊訪問(wèn)。
4. 在STM32F10x中,有 3 個(gè)不同的啟動(dòng)模式,這些模式可以通過(guò)引腳 BOOT[1:0] 來(lái)選擇, 啟動(dòng)模式選擇引腳 Boot模式 說(shuō)明 BOOT1 BOOT0 X 0 用戶閃存存儲(chǔ)器 用戶閃存存儲(chǔ)器被選作啟動(dòng)空間 0 1 系統(tǒng)存儲(chǔ)器 系統(tǒng)存儲(chǔ)器被選作啟動(dòng)空間 1 1 嵌入式SRAM 嵌入式SRAM 被選作啟動(dòng)空間 5. 每個(gè)I/O 端口的特有的硬件特點(diǎn)在數(shù)據(jù)手冊(cè)中已經(jīng)列出來(lái)了,通用 I/O 的每個(gè)端口位可以由軟件單獨(dú)的配置成以下幾種模式: - 輸入浮空
- 輸入上拉
- 輸入下拉
- 模擬輸入
- 開(kāi)漏輸出
- 推挽式輸出
- 推挽式復(fù)用功能
- 開(kāi)漏復(fù)用功能
- 2.STM32的所有端口都有外部中斷能力。當(dāng)使用 外部中斷線 時(shí),相應(yīng)的引腳必須配置成 輸入模式 。
- 3.STM32具有單獨(dú)的位設(shè)置或位清除能力。這是通過(guò)GPIOx_BSRR 和 GPIOx_BRR 寄存器來(lái)實(shí)現(xiàn)的。
6.為了優(yōu)化不同引腳封裝的外設(shè)數(shù)目,可以把一些復(fù)用功能重新映射到其他引腳上。這時(shí),復(fù)用功能不再映射到它們?cè)挤峙涞囊_上。在程序上,是通過(guò)設(shè)置復(fù)用重映射和調(diào)試I/O配置寄存器(AFIO_MAPR) 來(lái)實(shí)現(xiàn)引腳的重新映射 7.當(dāng)輸出模式位MODE[1:0]=“10”時(shí),最大輸出速度為( B )。 A.10MHz B.2MHz C.50MHz D.72MHz 8.簡(jiǎn)述不同復(fù)用功能的重映射。 答:為了優(yōu)化不同引腳封裝的外設(shè)數(shù)目,可以把一些復(fù)用功能重新映射到其他引腳上。這時(shí),復(fù)用功能不再映射到它們?cè)挤峙涞囊_上。在程序上,是通過(guò)設(shè)置復(fù)用重映射和調(diào)試I/O配置寄存器(AFIO_MAPR)來(lái)實(shí)現(xiàn)引腳的重新映射。各個(gè)復(fù)用功能的重映射可以參閱正文的介紹,由于內(nèi)容比較多,正文介紹非常詳細(xì),這里省略。 9.簡(jiǎn)述STM32的GPIO的一些主要特點(diǎn)(至少5個(gè))。 答:主要特點(diǎn)如下: - 通用I/O,可以作為輸出、輸入等功能。
- 單獨(dú)的位設(shè)置或位清除。
- 外部中斷/喚醒線。
- 復(fù)用功能(AF)和重映射。
- GPIO鎖定機(jī)制。
10.STM32的嵌套向量中斷控制器(NVIC) 管理著包括Cortex-M3核異常等中斷,其和ARM處理器核的接口緊密相連,可以實(shí)現(xiàn)低延遲的中斷處理,并有效地處理晚到中斷。 11.STM32的外部中斷/事件控制器(EXTI)由 19 個(gè)產(chǎn)生事件/中斷要求的邊沿檢測(cè)器組成。每個(gè)輸入線可以獨(dú)立地配置輸入類型(脈沖或掛起)和對(duì)應(yīng)的觸發(fā)事件(上升沿或下降沿或者雙邊沿都觸發(fā))。每個(gè)輸入線都可以被獨(dú)立的屏蔽。掛起寄存器保持著狀態(tài)線的中斷要求。 - 12.ARM Cortex-M3不可以通過(guò)( D )喚醒CPU。
- A.I/O端口 B.RTC 鬧鐘
- C.USB喚醒事件 D.PLL
- 13.STM32嵌套向量中斷控制器(NVIC) 具有( A ) 個(gè)可編程的優(yōu)先等級(jí)。
- A.16 B.43
- C.72 D.36
- 14.STM32的外部中斷/事件控制器(EXTI)支持( C )個(gè)中斷/事件請(qǐng)求。
- A.16 B.43
- C.19 D.36
15.簡(jiǎn)述嵌套向量中斷控制器(NVIC)的主要特性。 答:STM32的嵌套向量中斷控制器(NVIC) 管理著包括Cortex-M3核異常等中斷,其和ARM處理器核的接口緊密相連,可以實(shí)現(xiàn)低延遲的中斷處理,并有效地處理晚到的中斷。STM32嵌套向量中斷控制器(NVIC)的主要特性如下: - 具有43 個(gè)可屏蔽中斷通道(不包含16 個(gè)Cortex-M3 的中斷線)。
- 具有16 個(gè)可編程的優(yōu)先等級(jí)。
- 可實(shí)現(xiàn)低延遲的異常和中斷處理。
- 具有電源管理控制。
- 系統(tǒng)控制寄存器的實(shí)現(xiàn)。
16.STM32的USART可以利用分?jǐn)?shù)波特率發(fā)生器提供寬范圍的波特率選擇。 17.STM32的 USART 為通用同步異步收發(fā)器, 18.STM32的USART根據(jù)( A )寄存器M位的狀態(tài),來(lái)選擇發(fā)送8位或者9位的數(shù)據(jù)字。 A.USART_CR1 B.USART_CR2 C.USART_BRR D.USART_CR3 19.簡(jiǎn)述STM32的USART的功能特點(diǎn)。、 答:STM32的USART為通用同步異步收發(fā)器,其可以與使用工業(yè)標(biāo)準(zhǔn)NRZ異步串行數(shù)據(jù)格式的外部設(shè)備之間進(jìn)行全雙工數(shù)據(jù)交換。USART還可以利用分?jǐn)?shù)波特率發(fā)生器提供寬范圍的波特率選擇。 STM32的USART支持同步單向通信和半雙工單線通信。同時(shí),其也支持LIN(局部互連網(wǎng)),智能卡協(xié)議和IrDA(紅外數(shù)據(jù))SIR ENDEC規(guī)范,以及調(diào)制解調(diào)器(CTS/RTS)操作。STM32還具備多處理器通信能力。另外,通過(guò)多緩沖器配置的DMA方式,還可以實(shí)現(xiàn)高速數(shù)據(jù)通信。 20.系統(tǒng)計(jì)時(shí)器(SysTick)提供了1個(gè) 24位的計(jì)數(shù)器,具有靈活的控制機(jī)制。 21.STM32的通用定時(shí)器TIM,是一個(gè)通過(guò)可編程預(yù)分頻器驅(qū)動(dòng)的 16 位自動(dòng)裝載計(jì)數(shù)器構(gòu)成。 22.STM32通用定時(shí)器TIM的16位計(jì)數(shù)器可以采用三種方式工作,分別為向上計(jì)數(shù)模式、向下計(jì)數(shù)模式和中央對(duì)齊模式。 23.通用定時(shí)器TIMx的特性( ABCD )。(多選) A.具備16位向上,向下,向上/向下自動(dòng)裝載計(jì)數(shù)器。 B.具備16位可編程預(yù)分頻器。 C.具備4個(gè)獨(dú)立通道。 D.可以通過(guò)事件產(chǎn)生中斷,中斷類型豐富,具備DMA功能。 24.通用定時(shí)器TIMx的特殊工作模式包括( ABCD )。(多選) A.輸入捕獲模式 B.PWM 輸入模式 C.輸出模式 D.單脈沖模式(OPM) 25.STM32的可編程通用定時(shí)器的時(shí)基單元包含( ABC )。(多選) A.計(jì)數(shù)器寄存器(TIMx_CNT) B.預(yù)分頻器寄存器(TIMx_PSC) C.自動(dòng)裝載寄存器(TIMx_ARR) D.以上都不是 26.簡(jiǎn)述STM32TIM的計(jì)數(shù)器模式。 答:STM32通用定時(shí)器TIM的16位計(jì)數(shù)器可以采用三種方式工作,分別為向上計(jì)數(shù)模式、向下計(jì)數(shù)模式和中央對(duì)齊模式(向上/向下計(jì)數(shù))。 27.除了通用定時(shí)器外,STM32還提供了一個(gè)高級(jí)控制定時(shí)器 TIM1 。 TIM1 由一個(gè) 16 位的自動(dòng)裝載計(jì)數(shù)器組成,它由一個(gè)可編程預(yù)分頻器驅(qū)動(dòng)。 28.TIM1的溢出/下溢時(shí)更新事件(UEV) 只能在重復(fù)向下計(jì)數(shù)達(dá)到0的時(shí)候產(chǎn)生。這對(duì)于能產(chǎn)生PWM信號(hào)非常有用。 29.TIM1具備 16 位可編程預(yù)分頻器,時(shí)鐘頻率的分頻系數(shù)為 1~65535 之間的任意數(shù)值。 30.STM32的可編程TIM1定時(shí)器的時(shí)基單元包含( ABCD )。(多選) A.計(jì)數(shù)器寄存器(TIM1_CNT) B.預(yù)分頻器寄存器 (TIM1_PSC) C.自動(dòng)裝載寄存器 (TIM1_ARR) D.周期計(jì)數(shù)寄存器 (TIM1_RCR) 31.高級(jí)定時(shí)器TIM1的特性( ABCD )。(多選) A.具備16位上,下,上/下自動(dòng)裝載計(jì)數(shù)器 B.具備16位可編程預(yù)分頻器。 C.可以在指定數(shù)目的計(jì)數(shù)器周期之后更新定時(shí)器寄存器。 D.可以通過(guò)事件產(chǎn)生中斷,中斷類型豐富,具備DMA功能。 32.定時(shí)器TIM1的特殊工作模式包括( ABCD )。(多選) A.輸入捕獲模式 B.PWM 輸入模式 C.編碼器接口模式 D.單脈沖模式(OPM) 33.STM32提供了三種不同的時(shí)鐘源,其都可被用來(lái)驅(qū)動(dòng)系統(tǒng)時(shí)鐘SYSCLK,這三種時(shí)鐘源分別為( ABC )。 A.HSI振蕩器時(shí)鐘 B.HSE振蕩器時(shí)鐘 C.PLL時(shí)鐘 D.HLI振蕩時(shí)鐘 34.在STM32中,當(dāng)( AB )發(fā)生時(shí),將產(chǎn)生電源復(fù)位。(多選) A.從待機(jī)模式中返回 B.上電/掉電復(fù)位(POR/PDR復(fù)位) C.NRST管腳上的低電平 D.PLL 35.Cortex-M處理器采用的架構(gòu)是( D ) (A)v4T (B)v5TE (C)v6 (D)v7 36.NVIC可用來(lái)表示優(yōu)先權(quán)等級(jí)的位數(shù)可配置為是( D ) (A)2 (B)4 (C)6 (D)8 37.Cortex-M系列正式發(fā)布的版本是( A ) (A)Cortex-M3 (B)Cortex-M4 (C)Cortex-M6 (D)Cortex-M8 38.Cortex-M3的提供的流水線是( B ) (A)2級(jí) (B)3級(jí) (C)5級(jí) (D)8級(jí) 39.Context – M3處理器的寄存器r14代表( B ) (A)通用寄存器 (B)鏈接寄存器 (C)程序計(jì)數(shù)器 (D)程序狀態(tài)寄存器 40.Cortex – M3使用的存儲(chǔ)器格式是( D ) (A)小端格式 (B)大端格式 (C)小端或大端格式 (D)沒(méi)有正確答案 41.每個(gè)通用I/O端口有( )個(gè)32位的配置寄存器,( )個(gè)32位的數(shù)據(jù)寄存器,( )個(gè)32位的置位/復(fù)位寄存器,( )個(gè)16位的復(fù)位寄存器,( B)個(gè)32位的鎖定寄存器 (A)2,1,2,1,1 (B)2,2,1,1,1 (C)2,2,2,1,1 (D)2,2,1,2,1 42.( A )寄存器的目的就是用來(lái)允許對(duì)GPIO寄存器進(jìn)行原子的讀/修改操作 (A)GPIOX_BSRR和GPIOX_BRR (B)GPIOX_CRL和GPIOX_CRH(C)GPIOX_BSRR和GPIOX_LCKR (D)GPIOX_IDR和GPIOX_ODR 43.所有的GPIO引腳有一個(gè)內(nèi)部微弱的上拉和下拉,當(dāng)它們被配置為( A )時(shí)可以是激活的或者非激活的 44每個(gè)I/O端口位可以自由的編程,盡管I/O端口寄存器必須以( D )的方式訪問(wèn) (A)16位字 (B)16位字節(jié) (C)32位字節(jié) (D)32位字 45.向量中斷控制器最多可支持( C )個(gè)IRQ中斷 (A)127 (B)128 (C)240 (D)255 46.關(guān)于中斷嵌套說(shuō)法正確的是( B ) (A)只要響應(yīng)優(yōu)先級(jí)不一樣就有可能發(fā)生中斷嵌套 (B)只要搶占式優(yōu)先級(jí)不一樣就有可能發(fā)生中斷嵌套 (C)只有搶占式優(yōu)先級(jí)和響應(yīng)優(yōu)先級(jí)都不一才有可能發(fā)生中斷嵌套 (D)以上說(shuō)法都不對(duì) 47.在STM32107向量中斷控制器管理下,可將中斷分為( B )組 (A)4 (B)5 (C)6 (D)7 48.中斷屏蔽器能屏蔽( B ) (A)所有中斷和異常 (B)除了NMI外所有異常和中斷 (C)除了NMI、異常所有其他中斷 (D)部分中斷 49PWM是( A ) - 脈沖寬度調(diào)制 (B)脈沖頻率調(diào)制 (C)脈沖幅度調(diào)制 (D)脈沖位置調(diào)制
50以下為STM32的GPIO端口配置寄存器的描述,在GPIO控制LED電路設(shè)計(jì)時(shí),要使最大輸出速度為10MHz,應(yīng)該設(shè)置( B ) (A)CNFy[1:0] (B)MODEy[1:0] 51以下為GPIO端口配置寄存器的描述,在GPIO控制LED電路設(shè)計(jì)時(shí),要使最大輸出速度為2MHz,應(yīng)該設(shè)置MODE[1:0]值為( C ) 
25. 已知TIM1定時(shí)器的起始地址為0x4001 2C00,則定時(shí)器1的捕獲/比較寄存器1的地址為( D ) (A)0x4001 2C20 (B)0x4001 2C2C - 0x4001 2C38 (D)0x4001 2C34
53SysTick定時(shí)器校正值為( B ) (A)9000 (B)10000 54.SysTick定時(shí)器的中斷號(hào)是( C ) (A)4 (B)5 (C)6 (D)7 55.STM32的USART根據(jù)( A )寄存器M位的狀態(tài),來(lái)選擇發(fā)送8位或者9位的數(shù)據(jù)字。 A.USART_CR1 B.USART_CR2 C.USART_BRR D.USART_CR3 56.Cortex-M3系列處理器支持Thumb指令集。( 錯(cuò) ) 57.Cortex-M3系列處理器支持Thumb-2指令集。( 對(duì) ) 58.Contex-M3系列處理器內(nèi)核采用了哈佛結(jié)構(gòu)的三級(jí)流水線。( 對(duì) ) 59.Cortex-M系列不支持Thumb-2指令集。( 錯(cuò) ) 60.Contex-M3系列處理器內(nèi)核采用了馮諾依曼結(jié)構(gòu)的三級(jí)流水線。( 錯(cuò) ) 61.STM32系列MCU在使用電池供電時(shí),提供3.3~5V的低電壓工作能力。( 錯(cuò) ) 62.Context-M3處理器可以使用4個(gè)堆棧。( 錯(cuò) ) 63.在系統(tǒng)復(fù)位后,所有的代碼都使用Main棧。( 對(duì) ) 64.在系統(tǒng)層,處理器狀態(tài)寄存器分別為:APSR,IPSR, PPSR。( 錯(cuò) ) 65.APSR程序狀態(tài)寄存器的28位,當(dāng)V=0,表示結(jié)果為無(wú)益處。( 對(duì) ) 66.Cortex-M3只可以使用小端格式訪問(wèn)代碼。( 錯(cuò) ) 67.所謂不可屏蔽的中斷就是優(yōu)先級(jí)不可調(diào)整的中斷。( 錯(cuò)) 68.向量中斷控制器只負(fù)責(zé)優(yōu)先級(jí)的分配與管理,中斷的使能和禁止和它無(wú)關(guān)。( 錯(cuò) ) 69.Cortex-M3體系架構(gòu)中,有了位帶位操作后,可以使用普通的加載/存儲(chǔ)指令來(lái)對(duì)單一的比特進(jìn)行讀寫。(對(duì)) 70.Cortex-M3體系架構(gòu)中,有兩個(gè)區(qū)中實(shí)現(xiàn)了位帶:一個(gè)是 SRAM 區(qū)的最低 1MB 范圍,第二個(gè)則是片內(nèi)外設(shè) 區(qū)的最低 1MB 范圍。(對(duì)) 71.STM32的串口既可以工作在全雙工模式下,也可工作在半雙工模式下。( 對(duì)) 72.STM32的串口既可以工作在異步模式下,也可工作在同步模式下。(對(duì)) 73.每個(gè)I/O端口位可以自由的編程,盡管I/O端口寄存器必須以32位字的方式訪問(wèn)。(對(duì)) 74.所有的GPIO引腳有一個(gè)內(nèi)部微弱的上拉和下拉,當(dāng)它們被配置為輸入時(shí)可以是激活的或者非激活的。( 對(duì)) 75.所有的GPIO引腳有一個(gè)內(nèi)部微弱的上拉和下拉,當(dāng)它們被配置為輸出時(shí)可以是激活的或者非激活的。(錯(cuò) ) 76.端口輸入數(shù)據(jù)寄存器的復(fù)位值為00000000H。( 對(duì)) 77.端口輸入數(shù)據(jù)寄存器位[15:0]是只讀的,并且僅能按字訪問(wèn),它們包含相關(guān)I/O端口的輸入值。(對(duì) ) 78.端口輸入數(shù)據(jù)寄存器位[7:0]是只讀的,并且僅能按字訪問(wèn),它們包含相關(guān)I/O端口的輸入值。( 錯(cuò)) 79.從是否可編程的角度 ,中斷可分為固定優(yōu)先級(jí)中斷和可調(diào)整優(yōu)先( 對(duì) ) 80.從某種意義上說(shuō),異常就是中斷。(對(duì) ) 81.所謂不可屏蔽的中斷就是優(yōu)先級(jí)不可調(diào)整的中斷。( 錯(cuò)) 82.向量中斷控制器只負(fù)責(zé)優(yōu)先級(jí)的分配與管理,中斷的使能和禁止和它無(wú)關(guān)。(錯(cuò)) 83.中斷的優(yōu)先級(jí)和它在中斷向量表里的位置沒(méi)有關(guān)系。( 錯(cuò)) 84.當(dāng)搶占式優(yōu)先級(jí)不一樣時(shí),一定會(huì)發(fā)生搶占。( 錯(cuò)) 85.向量中斷控制器允許有相同的優(yōu)先級(jí)。( 對(duì)) 86如果兩個(gè)中斷的搶占式優(yōu)先級(jí)相同,則按先來(lái)后到的順序處理。(對(duì) ) - ST公司的STM32系列芯片采用了 Cortex-M3 內(nèi)核,其分為兩個(gè)系列。 STM32F101
系列為標(biāo)準(zhǔn)型,運(yùn)行頻率為 36MHZ ; STM32F103 系列為標(biāo)準(zhǔn)型,運(yùn)行頻率為 72MHZ 。 88.當(dāng)STM32的I/O端口配置為輸入時(shí),輸出緩沖器被禁止,施密特觸發(fā)輸入被激活。根據(jù)輸入配置(上拉,下拉或浮動(dòng))的不同,該引腳的弱上拉和下拉電阻被連接。出現(xiàn)在I/O腳上的數(shù)據(jù)在每個(gè)APB2時(shí)鐘被采樣到輸入數(shù)據(jù)寄存器,對(duì)輸入數(shù)據(jù)寄存器的讀訪問(wèn)可得到I/O狀態(tài)。 89.STM32的所有端口都有外部中斷能力。當(dāng)使用外部中斷線時(shí),相應(yīng)的引腳必須配置成輸入模式。 90.STM32具有單獨(dú)的位設(shè)置或位清除能力。這是通過(guò) GPIOX_BSRR 和 GPIOX_BRR 寄存器來(lái)實(shí)現(xiàn)的。 91.為了優(yōu)化不同引腳封裝的外設(shè)數(shù)目,可以把一些復(fù)用功能重新映射到其他引腳上。這時(shí),復(fù)用功能不再映射到它們?cè)挤峙涞囊_上。在程序上,是通過(guò)設(shè)置復(fù)用重映射和調(diào)試I/O口配置寄存器(AFIO_MAPR)來(lái)實(shí)現(xiàn)引腳的重新映射。 92、什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)一般由哪幾部分構(gòu)成? 93、Cortex-M3的處理器有那兩種工作模式和狀態(tài)?如何進(jìn)行工作模式和狀態(tài)的切換? 3Cortex-M3的存儲(chǔ)空間可以分為哪幾個(gè)部分,每一部分的地址范圍是怎樣的? 94、STM32的GPIO的配置模式有那幾種?如何進(jìn)行配置模式的配置? 95、簡(jiǎn)述STM32的不同復(fù)用功能的重映射功能。 96、簡(jiǎn)述STM32的優(yōu)先級(jí)劃分與搶占的過(guò)程。 97、簡(jiǎn)述STM32的USART的功能特點(diǎn)。 98、如何設(shè)置STM32的串口的波特率。 99、STM32高級(jí)定時(shí)器有哪些功能? - 已知STM32的系統(tǒng)時(shí)鐘為72MHz,如何設(shè)置相關(guān)寄存器,實(shí)現(xiàn)20ms定時(shí)?
101利用STM32的GPIO接口及其操作,實(shí)現(xiàn)4個(gè)LED按照LED1、LED2、LED3、LED4的順序循環(huán)顯示。硬件連接圖如圖所示。 102已知系統(tǒng)時(shí)鐘為72MHz,采用定時(shí)器TIM1產(chǎn)生周期為100ms的定時(shí)時(shí)間間隔并通過(guò)LED發(fā)光二極管指示定時(shí)過(guò)程。 103如果用串口1發(fā)送數(shù)據(jù),已知波特率為2.4Kbp/s,8位數(shù)據(jù),2位停止位,寫出串口的初始化程序。 104::廣義的嵌入式系統(tǒng)是帶有微處理器的專用軟、硬件系統(tǒng),狹義的嵌入式系統(tǒng)是指微處理器中帶有嵌入式操作系統(tǒng)(Embedded Operating System)的專用軟、硬件系統(tǒng) 105 STM32 是基于ARM公司Cortex-M3核的32位 106 GPIO口輸入的上拉電阻和下拉電阻對(duì)輸入的不同在于:有內(nèi)部上拉時(shí),輸入懸空時(shí)為1,無(wú)內(nèi)部上拉時(shí),輸入懸空時(shí)為0. 107輸入輸出數(shù)據(jù)寄存器的作用是定時(shí)將數(shù)據(jù)采樣到輸入數(shù)據(jù)寄存器 輸出到輸出數(shù)據(jù)寄存器。 108 STM32的工作電壓(VDD)為2.0~3.6V。 109 STM32的復(fù)位電路為低電平復(fù)位。 110.ContexM3的堆棧是向下生長(zhǎng)的滿棧, 111. 默認(rèn)情況下,外部中斷0和外部中斷1哪個(gè)優(yōu)先級(jí)高? 0 中斷的默認(rèn)排序是異常向量表中位置靠前的優(yōu)先級(jí)越高。 112. 對(duì)異常向量表中默認(rèn)排序可通過(guò)設(shè)置搶占式優(yōu)先級(jí)和響應(yīng)式優(yōu)先級(jí)進(jìn)行修改。 113.具有高搶占式優(yōu)先級(jí)的中斷可以在具有低搶占式優(yōu)先級(jí)的中斷處理過(guò)程中被響應(yīng),即中斷嵌套,或者說(shuō)高搶占式優(yōu)先級(jí)的中斷可以嵌套低搶占式優(yōu)先級(jí)的中斷。 114.搶占式優(yōu)先級(jí)相同時(shí),如同時(shí)產(chǎn)生中斷,響應(yīng)式優(yōu)先級(jí)高的中斷先得到處理。 如兩種優(yōu)先級(jí)都相同時(shí),默認(rèn)優(yōu)先級(jí)高的中斷先得到處理。 115 根據(jù)下圖說(shuō)明STM32F10X系列芯片的GPIO引腳的功能。并說(shuō)明對(duì)應(yīng)功能時(shí),哪部分開(kāi)關(guān)起作用(在圖上標(biāo)注)。 答: 模擬輸入:TTL被強(qiáng)置為0,弱上拉下拉斷開(kāi),CMOS斷開(kāi)。 浮空輸入:CMOS斷開(kāi),TTL被激活,弱上拉下拉斷開(kāi)。 上拉輸入:CMOS斷開(kāi),TTL被激活,弱上拉接通,下拉斷開(kāi)。 下拉輸入:CMOS斷開(kāi),TTL被激活,弱上拉斷開(kāi),下拉接通。 開(kāi)漏輸出:輸出寄存器上的’0’激活N-MOS,而輸出寄存器上的’1’將端口置于高阻狀態(tài)(P-MOS從不被激活)、TTL被激活、弱上拉下拉被禁止。 推挽輸出:輸出寄存器上的’0’激活N-MOS,而輸出寄存器上的’1’將激活P-MOS、TTL被激活、弱上拉下拉被禁止。 復(fù)用開(kāi)漏輸出:開(kāi)漏輸出時(shí),輸出緩沖器被打開(kāi)。 復(fù)用推挽輸出:推挽輸出時(shí),輸出緩沖器被打開(kāi)。 116將GPIO的PD2配置成通用開(kāi)漏輸出,最大速度2MHz應(yīng)如何配置以下寄存器。 答: GPIOD 0110左移8位 配置:GPIOD->CRL =(0x06 << 8); /*即:6左移8位(D口) [2]P113 01:通用開(kāi)漏輸出模式 10:輸出模式,最大速度2MHz*/ 117.堆棧指令:PUSH {R0}后,請(qǐng)畫(huà)出堆棧會(huì)如何變化? 指令執(zhí)行前:
118. 堆棧指令:POP {R0}后,請(qǐng)畫(huà)出堆棧會(huì)如何變化?  答: 
119:根據(jù)補(bǔ)充下面程序并進(jìn)行注釋: - (1)void LED_Init(void)
- {
-
- RCC->APB2ENR|=1<<6; //使能PORTE時(shí)鐘
-
- GPIOE->CRL&=0X00000000;
- GPIOE->CRL|=0X33333333;//PE.0-PE.7推挽輸出
- GPIOE->ODR|=0xFF; //PE.0-PE.7輸出高
- }
-
- (2) void Timerx_Init(u16 arr,u16 psc)
- {
- RCC->APB1ENR|=1<<1;//TIM3時(shí)鐘使能
- TIM3->ARR=arr; //設(shè)定計(jì)數(shù)器自動(dòng)重裝值//剛好1ms
- TIM3->PSC=psc; //預(yù)分頻器7200,得到10Khz的計(jì)數(shù)時(shí)鐘
-
- TIM3->DIER|=1<<0; //允許更新中斷
- TIM3->DIER|=1<<6;
-
- //允許觸發(fā)中斷
-
- TIM3->CR1|=0x01; //使能定時(shí)器3
-
- MY_NVIC_Init(1,3,TIM3_IRQChannel,2);//搶占1,子優(yōu)先級(jí)3,組2
- }
-
- (3) void MYRCC_DeInit(void)
- {
- RCC->APB1RSTR = 0x00000000;//復(fù)位結(jié)束
- RCC->APB2RSTR = 0x00000000;
-
- RCC->AHBENR = 0x00000014; //睡眠模式閃存和SRAM時(shí)鐘使能.其他關(guān)閉.
- RCC->APB2ENR = 0x00000000; //外設(shè)時(shí)鐘關(guān)閉.
- RCC->APB1ENR = 0x00000000;
- RCC->CR |= 0x00000001; //使能內(nèi)部高速時(shí)鐘HSION
- RCC->CFGR &= 0xF8FF0000;
- RCC->CR &= 0xFEF6FFFF; //復(fù)位HSEON,CSSON,PLLON
- RCC->CR &= 0xFFFBFFFF; //復(fù)位HSEBYP
- RCC->CFGR &= 0xFF80FFFF; //復(fù)位PLLSRC, PLLXTPRE, PLLMUL[3:0] and USBPRE
- RCC->CIR = 0x00000000; //關(guān)閉所有中斷
- }
復(fù)制代碼
完整的Word格式文檔51黑下載地址:
|