《STM32Cube嵌入式系統(tǒng)應(yīng)用》 標(biāo)準(zhǔn)庫(kù)版本 試卷及答案 共2套_第1頁(yè)
《STM32Cube嵌入式系統(tǒng)應(yīng)用》 標(biāo)準(zhǔn)庫(kù)版本 試卷及答案 共2套_第2頁(yè)
《STM32Cube嵌入式系統(tǒng)應(yīng)用》 標(biāo)準(zhǔn)庫(kù)版本 試卷及答案 共2套_第3頁(yè)
《STM32Cube嵌入式系統(tǒng)應(yīng)用》 標(biāo)準(zhǔn)庫(kù)版本 試卷及答案 共2套_第4頁(yè)
《STM32Cube嵌入式系統(tǒng)應(yīng)用》 標(biāo)準(zhǔn)庫(kù)版本 試卷及答案 共2套_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《STM32Cube嵌入式系統(tǒng)應(yīng)用》試卷B-標(biāo)準(zhǔn)庫(kù)版本試卷及答案一、簡(jiǎn)述題1.簡(jiǎn)述STM32的GPIO的一些主要特點(diǎn)(至少5個(gè))?!敬鸢浮恐饕攸c(diǎn)如下:通用I/O,可以作為輸出、輸入等功能。單獨(dú)的位設(shè)置或位清除。外部中斷/喚醒線。復(fù)用功能(AF)和重映射。GPIO鎖定機(jī)制。2.簡(jiǎn)述STM32的雙ADC工作模式?!敬鸢浮吭谟袃蓚€(gè)ADC的STM32器件中,可以使用雙ADC模式。在雙ADC模式里,根據(jù)ADC_CR1寄存器中DUALMOD[2:0]位所選的模式,轉(zhuǎn)換的啟動(dòng)可以是ADC1主和ADC2從的交替觸發(fā)或同時(shí)觸發(fā)。雙ADC工作模式主要包括如下幾種:同時(shí)注入模式、同時(shí)規(guī)則模式、快速交替模式、慢速交替模式、交替觸發(fā)模式和獨(dú)立模式。3.簡(jiǎn)述STM32時(shí)鐘的類型?!敬鸢浮縎TM32提供了三種不同的時(shí)鐘源,其都可被用來(lái)驅(qū)動(dòng)系統(tǒng)時(shí)鐘SYSCLK,這三種時(shí)鐘源分別為:HSI振蕩器時(shí)鐘、HSE振蕩器時(shí)鐘、PLL時(shí)鐘。4.簡(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)引腳的重新映射。5.STM32CubeMX軟件有什么特點(diǎn)?【答案】(1)集成了ST有限公司的每一款型號(hào)的MCU/MPU的可配置的圖形界面,能夠自動(dòng)提示IO沖突并且對(duì)于復(fù)用IO可自動(dòng)分配。(2)具有動(dòng)態(tài)驗(yàn)證的時(shí)鐘樹。(3)能夠很方便的使用所集成的中間件。(4)能夠估算MCU/MPU在不同主頻運(yùn)行下的功耗。(5)能夠輸出不同編譯器的工程,比如能夠直接生成MDK、EWARM、STM32CubeIDE、MakeFile等工程。6.MDK-ARM主要包含哪四個(gè)核心組成部分?【答案】MDK-ARM主要包含以下四個(gè)核心組成部分:1)μVisionIDE:是一個(gè)集項(xiàng)目管理器、源代碼編輯器、調(diào)試器于一體的強(qiáng)大集成開發(fā)環(huán)境。2)RVCT:ARM公司提供的編譯工具鏈,包含編譯器、匯編器、鏈接器和相關(guān)工具。3)RL-ARM:實(shí)時(shí)庫(kù),可將其作為工程的庫(kù)來(lái)使用。4)ULINK/JLINKUSB-JTAG仿真器:用于連接目標(biāo)系統(tǒng)的調(diào)試接口(JTAG或SWD方式),幫助用戶在目標(biāo)硬件上調(diào)試程序。二、選擇題1.哪些是STM32的ADC系統(tǒng)的特點(diǎn)(ABCD)(多選)。A.12-位分辨率B.自校準(zhǔn)C.可編程數(shù)據(jù)對(duì)齊D.單次和連續(xù)轉(zhuǎn)換模式2.STM32嵌套向量中斷控制器(NVIC)具有(A)個(gè)可編程的優(yōu)先等級(jí)。A.16B.43C.72D.363.STM32的USART根據(jù)(A)寄存器M位的狀態(tài),來(lái)選擇發(fā)送8位或者9位的數(shù)據(jù)字。A.USART_CR1B.USART_CR2C.USART_BRRD.USART_CR34.通用定時(shí)器TIMx的特性(ABCD)。(多選)A.具備16位向上,向下,向上/向下自動(dòng)裝載計(jì)數(shù)器。B.具備16位可編程預(yù)分頻器。C.具備4個(gè)獨(dú)立通道。D.可以通過(guò)事件產(chǎn)生中斷,中斷類型豐富,具備DMA功能。5.STM32的可編程通用定時(shí)器的時(shí)基單元包含(ABC)。(多選)A.計(jì)數(shù)器寄存器(TIMx_CNT)B.預(yù)分頻器寄存器(TIMx_PSC)C.自動(dòng)裝載寄存器(TIMx_ARR)D.以上都不是6.ARMCortex-M3不可以通過(guò)(D)喚醒CPU。A.I/O端口B.RTC鬧鐘C.USB喚醒事件D.PLL三、(20分)【答案】電路圖如下:程序代碼:#include"stm32f10x.h"intTime_Count=0;intRepeat_Count=10;voidRCC_init(void){ RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE,ENABLE);}voidNVIC_init(void){ NVIC_InitTypeDefNVIC_InitStructure; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0); NVIC_InitStructure.NVIC_IRQChannel=TIM2_IRQn; NVIC_InitStructure.NVIC_IRQChannelSubPriority=0; NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE; NVIC_Init(&NVIC_InitStructure);}voidGPIO_init(void){ GPIO_InitTypeDefGPIO_InitStruct; GPIO_InitStruct.GPIO_Pin=GPIO_Pin_6; GPIO_InitStruct.GPIO_Mode=GPIO_Mode_Out_PP; GPIO_InitStruct.GPIO_Speed=GPIO_Speed_50MHz; GPIO_Init(GPIOE,&GPIO_InitStruct);}voidTIM2_init(void){ TIM_TimeBaseInitTypeDefTIM_TimeBaseStructure; TIM_DeInit(TIM2); TIM_TimeBaseStructure.TIM_Period=10000;//0.01s TIM_TimeBaseStructure.TIM_Prescaler=72-1; TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up; TIM_TimeBaseInit(TIM2,&TIM_TimeBaseStructure); TIM_ITConfig(TIM2,TIM_IT_Update,ENABLE); TIM_Cmd(TIM2,ENABLE);}intmain(void){ RCC_init(); NVIC_init(); TIM2_init(); GPIO_init(); while(1) { if(Repeat_Count>5) { if(Time_Count>=90) GPIO_ResetBits(GPIOE,GPIO_Pin_6); else GPIO_SetBits(GPIOE,GPIO_Pin_6); } else { if(Time_Count>=50) GPIO_ResetBits(GPIOE,GPIO_Pin_6); else GPIO_SetBits(GPIOE,GPIO_Pin_6); } }}voidTIM2_IRQHandler(void){ if(TIM_GetITStatus(TIM2,TIM_IT_Update)==SET) { Time_Count++; if(Time_Count==100) { Time_Count=0; Repeat_Count--; if(Repeat_Count==0) Repeat_Count=10; } TIM_ClearITPendingBit(TIM2,TIM_FLAG_Update); }}四、(30分)【答案】程序代碼如下:#include"stm32f10x.h"http://DeviceheaderunsignedcharHost_String[18]="EXTIPA0Interrupt";inti=0;voidUSART1_Config(void){ GPIO_InitTypeDefGPIO_InitStructure; USART_InitTypeDefUSART_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA,ENABLE); GPIO_InitStructure.GPIO_Pin=GPIO_Pin_9; GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP; GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; GPIO_Init(GPIOA,&GPIO_InitStructure); GPIO_InitStructure.GPIO_Pin=GPIO_Pin_10; GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING; GPIO_Init(GPIOA,&GPIO_InitStructure); USART_InitStructure.USART_BaudRate=9600; USART_InitStructure.USART_WordLength=USART_WordLength_8b; USART_InitStructure.USART_StopBits=USART_StopBits_1; USART_InitStructure.USART_Parity=USART_Parity_No;USART_InitStructure.USART_HardwareFlowControl=USART_HardwareFlowControl_None; USART_InitStructure.USART_Mode=USART_Mode_Rx|USART_Mode_Tx; USART_Init(USART1,&USART_InitStructure); USART_Cmd(USART1,ENABLE);}voidNVIC_init(void){ NVIC_InitTypeDefNVIC_InitStructure; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0); NVIC_InitStructure.NVIC_IRQChannel=EXTI0_IRQn; NVIC_InitStructure.NVIC_IRQChannelSubPriority=0; NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE; NVIC_Init(&NVIC_InitStructure);}voidEXTI_init(void){ EXTI_InitTypeDefEXTI_InitStructure; GPIO_EXTILineConfig(GPIO_PortSourceGPIOA,GPIO_PinSource0); EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt; EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Falling; EXTI_InitStructure.EXTI_Line=EXTI_Line0; EXTI_InitStructure.EXTI_LineCmd=ENABLE; EXTI_Init(&EXTI_InitStructure); }intmain(void){ USART1_Config(); NVIC_init(); EXTI_init();while(1);}voidEXTI0_IRQHandler(void){if(EXTI_GetITStatus(EXTI_Line0)!=RESET){ for(i=0;i<18;i++) { USART_SendData(USART1,Host_String[i]);}}}《STM32Cube嵌入式系統(tǒng)應(yīng)用》試卷C-標(biāo)準(zhǔn)庫(kù)版本試卷及答案說(shuō)明KeilMDK5進(jìn)入調(diào)試模式的步驟?!敬鸢浮縆eilMDK5進(jìn)入調(diào)試模式步驟如下:2【答案】【答案】通用定時(shí)器的計(jì)數(shù)器的計(jì)數(shù)方式可以使用向上、向下或中央計(jì)數(shù)模式?!敬鸢浮慨?dāng)使用USART模塊進(jìn)行全雙工異步通信時(shí),需要配置波特率、數(shù)據(jù)位數(shù)、奇偶校驗(yàn)、硬件流控制、停止位數(shù)、工作模式?!敬鸢浮看型庠O(shè)接口(SPI)允許芯片與外部設(shè)備以半/全雙工、同步、串行方式通信。此接口可以被配置成主模式,并為外部從設(shè)備提供通信時(shí)鐘(SCK)。SPI接口還能以多主配置方式工作,它有多種用途,如使用一條雙向數(shù)據(jù)線的雙線單工同步傳輸,還可使用CRC檢驗(yàn)的可靠通信。二、選擇題1.當(dāng)STM32的I/O端口配置為輸入時(shí),輸出緩沖器被禁止,施密特觸發(fā)輸入被激活。根據(jù)輸入配置(上拉,下拉或浮動(dòng))的不同,該引腳的弱上拉和下拉電阻被連接。出現(xiàn)在I/O腳上的數(shù)據(jù)在每個(gè)APB2時(shí)鐘被采樣到輸入數(shù)據(jù)寄存器,對(duì)輸入數(shù)據(jù)寄存器的讀訪問可得到I/O狀態(tài)。2.STM32芯片內(nèi)部集成的12位ADC是一種逐次逼近型模擬數(shù)字轉(zhuǎn)換器,具有18個(gè)通道,可測(cè)量16個(gè)外部和2個(gè)內(nèi)部信號(hào)源。3.STM32的外部中斷/事件控制器(EXTI)由19個(gè)產(chǎn)生事件/中斷要求的邊沿檢測(cè)器組成。每個(gè)輸入線可以獨(dú)立地配置輸入類型(脈沖或掛起)和對(duì)應(yīng)的觸發(fā)事件(上升沿或下降沿或者雙邊沿都觸發(fā))。每個(gè)輸入線都可以被獨(dú)立的屏蔽。掛起寄存器保持著狀態(tài)線的中斷要求。4.STM32的USART為通用同步異步收發(fā)器,其可以與使用工業(yè)標(biāo)準(zhǔn)NRZ異步串行數(shù)據(jù)格式的外部設(shè)備之間進(jìn)行全雙工數(shù)據(jù)交換。5.除了通用定時(shí)器外,STM32還提供了一個(gè)高級(jí)控制定時(shí)器TIM1。TIM1由一個(gè)16位的自動(dòng)裝載計(jì)數(shù)器組成,它由一個(gè)可編程預(yù)分頻器驅(qū)動(dòng)。6.STM32的DMA控制器有7個(gè)通道,每個(gè)通道專門用來(lái)管理來(lái)自于一個(gè)或多個(gè)外設(shè)對(duì)存儲(chǔ)器訪問的請(qǐng)求。還有一個(gè)仲裁器來(lái)協(xié)調(diào)各個(gè)DMA請(qǐng)求的優(yōu)先權(quán)。三、(16分)【答案】代碼如下:#include"stm32f10x.h"http://DeviceheadervoidNVIC_init(void){NVIC_InitTypeDefNVIC_InitStructure;NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);NVIC_InitStruct.NVIC_IRQChannel=EXTI0_IRQn;NVIC_InitStruct.NVIC_IRQChannelCmd=ENABLE;NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority=0;NVIC_InitStruct.NVIC_IRQChannelSubPriority=0;NVIC_Init(&NVIC_InitStruct);}voidGPIO_init(void){GPIO_InitTypeDefGPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE,ENABLE);GPIO_InitStruct.GPIO_Pin=GPIO_Pin_5;GPIO_InitStruct.GPIO_Mode=GPIO_Mode_Out_PP;GPIO_InitStruct.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOE,&GPIO_InitStruct);}voidEXTI_init(void){EXTI_InitTypeDefEXTI_InitStructure;GPIO_InitTypeDefGPIO_InitStructure;RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG,ENABLE);GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN;GPIO_InitStructure.GPIO_PuPd=GPIO_PuPd_NOPULL;GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;GPIO_Init(GPIOA,&GPIO_InitStructure);SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOA,EXTI_PinSource0);EXTI_InitStructure.EXTI_Line=EXTI_Line0;EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Rising;EXTI_InitStructure.EXTI_LineCmd=ENABLE;EXTI_Init(&EXTI_InitStructure);}intmain(void){ GPIO_init(); EXTI_Configuration(); NVIC_Configuration(); while(1);}voidEXTI0_IRQHandler(void){ staticturn=1;if(EXTI_GetITStatus(EXTI_Line0)!=RESET){ turn=1-turn;if(turn) GPIO_ResetBits(GPIOE,GPIO_Pin_5) ; elseGPIO_SetBits(GPIOE,GPIO_Pin_5); }}四、(20分)【答案】電路圖如下:程序代碼:#include"stm32f10x.h"intTime_Count=0;intRepeat_Count=15;voidRCC_init(void){RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE,ENABLE);}voidNVIC_init(void){NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);NVIC_InitStruct.NVIC_IRQChannel=TIM3_IRQn;NVIC_InitStruct.NVIC_IRQChannelCmd=ENABLE;NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority=0;NVIC_InitStruct.NVIC_IRQChannelSubPriority=0;}voidGPIO_init(void){GPIO_InitTypeDefGPIO_InitStruct;GPIO_InitStruct.GPIO_Pin=GPIO_Pin_3;GPIO_InitStruct.GPIO_Mode=GPIO_Mode_Out_PP;GPIO_InitStruct.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOE,&GPIO_InitStruct);}voidTIM3_init(void){TIM_TimeBaseInitTypeDefTIM_TimeBaseStructInit;TIM_TimeBaseStructInit.TIM_Prescaler=71;TIM_TimeBaseStructInit.TIM_CounterMode=TIM_CounterMode_Up;TIM_TimeBaseStructInit.TIM_Period=9999;TIM_TimeBaseStructInit.TIM_ClockDivision=TIM_CKD_DIV1;TIM_TimeBaseInit(TIM3,&TIM_TimeBaseStructInit);TIM_Cmd(TIM3,ENABLE);}intmain(void){ RCC_init(); NVIC_init(); TIM3_init(); GPIO_init(); while(1) { if(Repeat_Count>10) { if(Time_Count>=60) GPIO_ResetBits(GPIOE,GPIO_Pin_3); else GPIO_SetBits(GPIOE,GPIO_Pin_3); } else { if(Time_Count>=80) GPIO_ResetBits(GPIOE,GPIO_Pin_3); else GPIO_SetBits(GPIOE,GPIO_Pin_3); } }}voidTIM3_IRQHandler(void){if(TIM_GetITStatus(TIM3,TIM_IT_Update)==SET) { Time_Count++; if(Time_Count==100) { Time_Count=0; Repeat_Count--; if(Repeat_Count==0) Repeat_Count=15; }TIM_ClearITPendingBit(TIM3,TIM_FLAG_Update); }}五、(16分)【答案】代碼如下:#include"stm32f10x.h"http://DeviceheaderunsignedcharHost_String[11]="WelcomeARM";inti=0;voidUSART1_Config(void){ GPIO_InitTypeDefGPIO_InitStructure;USART_InitTypeDefUSART_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA,ENABLE);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_9;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOA,&GP

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論