[嵌入式系統(tǒng)設(shè)計(jì)(基于STM32F4)][徐靈飛][習(xí)題解答] (7)_第1頁
[嵌入式系統(tǒng)設(shè)計(jì)(基于STM32F4)][徐靈飛][習(xí)題解答] (7)_第2頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、嵌入式系統(tǒng)設(shè)計(jì)(基于STM32F429)第7章課后題參考答案1外部中斷的中斷請求信號可以是控制器外部產(chǎn)生由GPIO引腳引入的,也可以是由控制器內(nèi)部一些片上外設(shè)產(chǎn)生的。這一說法是否正確?_正確。2. 每個(gè)GPIO引腳都可以作為外部中斷信號輸入引腳,GPIO引腳編號相同的映射到同一個(gè)EXTI線,那么GPIOA的0號引腳映射到EXTI線0,GPIOD的0號引腳映射到EXTI線0,GPIOC的5號引腳映射到EXTI線5,GPIOG的10號引腳映射到EXTI線10。3. 外部中斷信號輸入的觸發(fā)信號形式可以是_上升沿觸發(fā)_、_下降沿觸發(fā)_、_邊沿觸發(fā)_、。4. 每個(gè)外部中斷在中斷向量表中,是否都獨(dú)立占用一

2、個(gè)位置?_不是_5. 外部中斷_59共用一個(gè)中斷向量和外部中斷_1015_共用一個(gè)中斷向量。6. 外部中斷的中斷0在庫函數(shù)啟動文件中定義的默認(rèn)中斷函數(shù)名是_EXTI0_IRQHandler_。7.函數(shù)SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOA,EXTI_PinSource0)有什么功能?連接GPIOA的0號引腳到EXTI08.函數(shù)voidEXTI_Init(EXTI_InitTypeDef*EXTI_InitStruct)有什么功能?答:初始化外部中斷功能。9應(yīng)用外部中斷,需要先使能GPIO端口的時(shí)鐘和SYSCFG時(shí)鐘。10. 試述初始化外部中斷的步驟

3、。答:(1)使能用到GPIO時(shí)鐘和SYSCFG時(shí)鐘。(2) 初始化相應(yīng)GPIO的引腳為輸入。(3) 設(shè)置GPIO引腳與EXTI線的映射關(guān)系。(4)初始化工作類型、設(shè)置觸發(fā)條件、使能等等。(5) 配置中斷分組(NVIC),并初始化相應(yīng)中斷通道的優(yōu)先級及使能/禁止。(6) 編寫中斷服務(wù)函數(shù)。(7) 編寫中斷服務(wù)程序處理內(nèi)容。11. 初始化外部中斷1:將GPIOA的1號引腳作為輸入引腳,中斷模式,上升沿觸發(fā),中斷優(yōu)先級組為3組,搶占優(yōu)先級為3,響應(yīng)優(yōu)先級為1,并使能中斷。RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE);RCC_APB2Perip

4、hClockCmd(RCC_APB2Periph_SYSCFG,ENABLE);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_1;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN;GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_NOPULL;GPIO_Init(GPIOA,&GPIO_InitStructure);SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOA,EXTI_PinSource1);EXTI_InitStructure.EXTI_Line=EXT

5、I_Line1;EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Rising;EXTI_InitStructure.EXTI_LineCmd=ENABLE;EXTI_Init(&EXTI_InitStructure);NVIC_PriorityGroupConfig(NVIC_PriorityGroup_3);NVIC_InitStructure.NVIC_IRQChannel=EXTI1_IRQn;NVIC_InitStructure.NVIC_

6、IRQChannelPreemptionPriority=3;NVIC_InitStructure.NVIC_IRQChannelSubPriority=1;NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;NVIC_Init(&NVIC_InitStructure);12外部中斷被掛起后,不能硬件清除,需要在相應(yīng)的中斷服務(wù)程序中將掛起標(biāo)志清除,使用的函數(shù)是_voidEXTI_ClearITPendingBit(uint32_tEXTI_Line)。13請說明中斷服務(wù)程序的響應(yīng)過程及中斷服務(wù)程序的函數(shù)名怎么更改。答:(1) 處理器在當(dāng)前堆棧上把程

7、序狀態(tài)寄存器、程序計(jì)數(shù)寄存器、鏈接寄存器、R12、R3RO八個(gè)寄存器自動依次入棧。(2) 讀取向量表(如果是復(fù)位中斷,則更新堆棧指針的值)。(3)根據(jù)向量表更新程序計(jì)數(shù)寄存器的值。(4) 加載新程序計(jì)數(shù)寄存器處的指令(步驟(2)步驟(4)與步驟(1)同時(shí)進(jìn)行)。(5) 更新鏈接寄存器為EXC_RETURN(EXC_RETURN表示退出異常后返回的模式及使用的堆棧)。中斷服務(wù)程序的函數(shù)名更改:1) 直接在啟動文件中修改中斷服務(wù)程序的函數(shù)2) 在C文件中使用宏定義方法實(shí)現(xiàn)例如:#defineKEY_IRQHandlerEXTIO_IRQHandler14根據(jù)圖7-4,編寫程序以完成外部中斷初始化,

8、中斷輸入引腳為PE5,上升沿檢測方式。圖7-4題14電路圖GPIO_InitTypeDefGPIO_InitStructure;EXTI_InitTypeDefEXTI_InitStructure;NVIC_InitTypeDefNVIC_InitStructure;/第1步/*開啟按鍵GPIO口的時(shí)鐘*/RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIO,ENABLE);/*使能SYSCFG時(shí)鐘,使用GPIO外部中斷時(shí)必須使能SYSCFG時(shí)鐘*/RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG,ENABLE);/第2步

9、/*選擇按鍵的引腳*/GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5;/*設(shè)置引腳為輸入模式*/GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN;/*設(shè)置引腳不上拉也不下拉*/GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_NOPULL;/*使用上面的結(jié)構(gòu)體初始化按鍵*/GPIO_Init(GPIOE,&GPIO_InitStructure);/第3步/*連接EXTI中斷源到GPIOE5引腳*/SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOE,EXTI_Pi

10、nSource5);/第4步/*選擇EXTI中斷源*/EXTI_InitStructure.EXTI_Line=EXTI_Line5;/*中斷模式*/EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;/*上降沿觸發(fā)*/EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Rising;/*使能中斷/事件線*/EXTI_InitStructure.EXTI_LineCmd=ENABLE;EXTI_Init(&EXTI_InitStructure);/第5步/*配置NVIC*/*配置NVIC為優(yōu)先級組1,整

11、個(gè)程序處于同一組*/NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);/*配置中斷源:按鍵1*/NVIC_InitStructure.NVIC_IRQChannel=EXTI9_5_IRQn;/*配置搶占優(yōu)先級:1*/NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=1;/*配置子優(yōu)先級:1*/NVIC_InitStructure.NVIC_IRQChannelSubPriority=1;/*使能中斷通道*/NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;NVIC_Init(&NVIC_InitStructure);15編寫14題的外部中斷的服務(wù)程序,完成LED燈(PB2)

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論