STM32测试试题

Wesley13
• 阅读 853

STM32测试试题

本试题默认以STM32F407ZE作为考试内容


一、选择题(50分,每题1分)

1.Cortex-M4处理器采用的架构是( D )

A.v4T
B.v5TE
C.v6
D.v7

2.Cortex-M4的提供的流水线是( B )

A.2级
B.3级
C.5级
D.8级

3.Cortex-M4使用的存储器格式是( A )

A.小端格式
B.大端格式
C.小端或大端格式
D.没有正确答案

4.所有的GPIO引脚为( D )模式

A.输入
B.输出
C.模拟
D.以上都对

5.每个I/O端口位可以自由的编程,尽管I/O端口寄存器必须以( D )的方式访问。

A.16位字
B.16位字节
C.32位字节
D.32位字

6.固件库中的功能状态(FunctionalState)类型被赋予以下两个值( A )

A.ENABLE或者DISABLE
B.SET或者RESET
C.YES或者NO
D.SUCCESS或者ERROR

7.固件库中的标志状态(FlagStatus)类型被赋予以下两个值( C )

A.ENABLE或者DISABLE
B.SUCCESS或者ERROR
C.SET或者RESET
D.YES或者NO

8.STM32F407有( D )可屏蔽中断通道

A.43
B.51
C.74
D.82

9.STM32F407采用( A )位来编辑中断的优先级

A.4
B.8
C.16
D.32

10.向量中断控制器最多可支持( C )个IRQ中断

A.127
B.128
C.240
D.255

注:在Cortex-M3与M4权威指南.pdf 39页能够找到 240 interrupt request!

11.系统控制寄存器 NVIC 和处理器内核接口紧密耦合,主要目的是( C )。

A.结构更紧凑,减小芯片的尺寸

B.连接更可靠,减小出错的概率

C.减小延时,高效处理最近发生的中断

D.无所谓,没有特别的意思,远一点也没有关系

12.关于中断嵌套说法正确的是( B )。

A.只要响应优先级不一样就有可能发生中断嵌套

B.只要抢占式优先级不一样就有可能发生中断嵌套

C.只有抢占式优先级和响应优先级都不一才有可能发生中断嵌套

D.以上说法都不对

13.在STM32F407向量中断控制器管理下,可将中断分为( B )组。

A.4
B.5
C.6
D.7

14.中断屏蔽器不能屏蔽( A )

A.NMI中断
B.串口中断

C.窗口看门狗中断
D.外部中断

15. PWM是( A )

A.脉冲宽度调制
B.脉冲频率调制

C.脉冲幅度调制
D.脉冲位置调制

16.当使用定时器14输出频率为1000Hz的脉冲,且代码如下,,对应的空白区值应为( D ):

TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM14, ENABLE); TIM_TimeBaseStructure.TIM_Period = ___________; TIM_TimeBaseStructure.TIM_Prescaler = 8400-1; TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit(TIM14, &TIM_TimeBaseStructure);

A.1000
B.10
C.999
D.9

17.当使用定时器1输出频率为100Hz的脉冲,且代码如下,对应的空白区值应为( C ):

TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1, ENABLE); TIM_TimeBaseStructure.TIM_Period = ___________; TIM_TimeBaseStructure.TIM_Prescaler = 16800-1; TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit(TIM1, &TIM_TimeBaseStructure);

A.100
B.200
C.99
D.199

18.以下对于STM32 ADC描述正确的是( A )

A.STM32F407ADC是一个12位连续近似模拟到数字的转换器

B.STM32F407ADC是一个8位连续近似模拟到数字的转换器

C.STM32F407ADC是一个12位连续近似数字到模拟的转换器

D.STM32F407ADC是一个8位连续近似数字到模拟的转换器

19.ADC转换过程不含哪项( D )

A.采样
B.量化
C.编码
D.逆采样

20.ADC转换过程正确的是( A )

A.采样—量化—编码
B.量化—采样—编码
C.采样—编码—量化
D.编码—采样—量化

21.下列哪项不是ADC转换器的主要技术指标( B )

A.分辨率
B.频率
C.转换速率
D.量化误差

22.以下对STM32F407集成A/D的特性描述不正确的是( B )

A.12位精度
B.单一转换模式
C.按通道配置采样时间D.数据对齐方式与内建数据一致

23.以下对STM32F407集成A/D的特性描述正确的是( B )

A.供电需求: 2.6V到3.8V

B.输入范围:VREF-≤VIN≤VREF+

C.所有输入通道能够同时进行工作

D.ADC转换过程是:采样—编码—量化

24.SysTick定时器是多少位的定时器( D )

A.8
B.16
C.32
D.24

25.当前SysTick使用到的时钟源频率为168MHz,则最大的定时时间约为( D )

A.168ms
B.168us
C.84ms
D.99ms

26.当前SysTick使用到的时钟源频率为168MHz,然后接着进行8分频,则最大的定时时间约为( C )

A.1680ms
B.99ms
C.798ms
D.990ms

27.若按键连接了STM32F407的PC6GPIO,PC6通用IO端口映射到外部中断事件线上是( C )

A.EXTI线4
B.EXTI线5
C.EXTI线6
D.EXTI线7

28.上图中WKUP连接了STM32F407的PA0 GPIO,PA0通用IO端口映射到外部中断事件线上是( A )

STM32测试试题

A.EXTI线0
B.EXTI线1
C.EXTI线2
D.EXTI线3

29.在STM32F407上的I/O脚的翻转速度可以为( B )。

A.18MHz
B.50MHz
C.36MHz
D.72MHz

30.ARM Cortex-M4不可以通过( D )唤醒CPU。

A.I/O端口
B.RTC 闹钟
C.USB唤醒事件
D.PLL

31.STM32嵌套向量中断控制器(NVIC) 具有( A ) 个可编程的优先等级。

A.16
B.43
C.72
D.36

32.STM32的外部中断/事件控制器(EXTI)支持( B )个中断/事件请求。

A.16
B.23
C.19
D.36

33.当使用定时器8的通道1输出频率为50Hz,占空比为20%的脉冲,且PWM工作在模式1,且代码如下,对应的空白区值应为( D ):

TIM_TimeBaseStructure.TIM_Period =_____________; TIM_TimeBaseStructure.TIM_Prescaler = ; TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit(TIM8, &TIM_TimeBaseStructure); TIM_SetCompare1(TIM8,);

A.500,8400,20
B.50,16800,20
C.199,16799,20
D.199,16799,40

34.当使用定时器8的通道1输出频率为50Hz,占空比为20的脉冲,且PWM工作在模式2,且代码如下,对应的空白区值应为( D ):

TIM_TimeBaseStructure.TIM_Period =_____________; TIM_TimeBaseStructure.TIM_Prescaler = ; TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit(TIM8, &TIM_TimeBaseStructure); TIM_SetCompare1(TIM8,);

A.500,8400,20
B.50,16800,20
C.199,16799,20
D.199,16799,160

35.AT24C02的A0、A1、A2引脚给予高电平,则读访问地址为( D )。

A.0xA0
B.0xA3
C.0xAA
D.以上都不是

36.AT24C02一次最多进行编程( C )字节。

A.256
B.128
C.8
D.以上都不是

37.STM32F407ZE内部FLASH容量是( B )。

A.1MB
B.512KB
C.2MB
D.192KB

38.STM32F407ZE内部FLASH被全部擦除后,尝试读取其存储某地址字数据会是( C )。

A.0x00000000
B.0xFF
C.0xFFFFFFFF
D.0x00

39.独立看门狗使用的时钟源可以是( B)。

A.LSE
B.LSI
C.HSI
D.PLL

40.窗口看门狗计数初值为100,窗口上限值为80,窗口下限值为64,窗口看门狗使能后,在计数值等于( B )时刻喂狗不会导致CPU复位。

A.90
B70
C.63
D.以上都不是

41.STM32F407的VREF引脚连接到1.8V,读取到A/D转换后的数值为4095,则测量出的电压值(B)。

A.3300mv
B.1800mv
C.0mv
D.以上都不是

42.STM32F407的VREF引脚连接到3.3V,读取到A/D转换后的数值为0,则测量出的电压值为(C)。

A.3300mv
B. 1800mv
C.0mv
D.以上都不是

43.默认使用中断优先级分组2,配置串口中断的抢占优先级为2,响应优先级为3;配置定时器1中断的抢占优先级为(C),响应优先级为3,就能抢占串口中断。

A.3 B.2

C.1 D.以上都不是

44.默认使用中断优先级分组2,配置串口中断的抢占优先级为2,响应优先级为2;配置定时器1中断的抢占优先级为2,响应优先级为( C),则当两个中断同时发生,定时器1中断优先执行。

A.3
B.2

C.1
D.以上都不是

45.在SPI通信中有以下4跟信号引脚,(B)引脚用于读取从机的数据。

A.MOSI
B.MISO
C./SS
D.SCLK

46.在SPI通信中有以下4跟信号引脚,(D)引脚用于输出时钟信号。

A.MOSI
B.MISO

C./SS
D.SCLK

47.当串口1中断的抢占优先级为2,响应优先级为1;定时器1中断的抢占优先级2,响应优先级为1,以下描述正确的是:( C

A.当串口1中断在运行,定时器1能够抢占其优先执行。

B.当定时器1中断在运行,串口1中断能够抢占其优先执行。

C.当两个中断同时发生, 定时器1优先执行。

D.以上都不对。

48.独立看门狗使用的时钟源为内部低速RC振荡电路,频率为32KHz,部分初始化代码如下:

IWDG_SetPrescaler(IWDG_Prescaler_256); IWDG_SetReload(125);

则看门狗的喂狗超时时间为( C

A.125ms

B.256ms

C.1000ms

D.以上都不对。

49.窗口看门狗在初始化的时候设置窗口的上限值为80,则在其计数值在递减的过程中,执行喂狗会导致CPU复位为(A

A.63

B.64

C.65

D.66

50.在UCOSIII创建了两个任务,而且该两个任务同时都是最高的优先级,printf函数通过串口1打印输出,且波特率为9600bps,这两个任务执行代码如下:

void task1(void *parg) { while(1) { printf(“task1 is running …\r\n”); OSTimeDlyHMSM(0,0,0,300,OS_OPT_TIME_HMSM_STRICT,&err); } } void task2(void *parg) { while(1) { printf(“task2 is running …\r\n”); OSTimeDlyHMSM(0,0,0,100,OS_OPT_TIME_HMSM_STRICT,&err); } }

以下描述正确的是( D )

A.任务1一直执行,任务2不能执行

B.任务1与任务2都不能执行

C.任务1打印信息完整,任务2打印信息不完整

D.以上都不对

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这