image

编辑人: 流年絮语

calendar2025-07-30

message9

visits22

2024年12月机器人五级理论答案及解析

一、单选题

1、ESP32 for Arduino,下列选项中,具有根据电容量的变化,获取返回值的函数是?( )

A、touchRead()

B、digitalRead()

C、hallRead()

D、analogRead()

解析:

在ESP32 for Arduino中,用于根据电容量的变化获取返回值的函数是touchRead()。该函数可以读取触摸传感器的电容值并返回相应的数值。因此,正确答案是A。

2、ESP32 for Arduino程序如下,串口监视器显示的结果是?( )

A、6

B、11

C、14

D、36

解析:

根据提供的ESP32 for Arduino程序,程序中使用了Serial.print函数向串口发送数据。从程序中可以看到,发送的数据是“Hello World!”和一些其他字符。当程序运行时,这些数据将通过串口监视器显示。根据程序的输出,最终显示的结果应为“11”。因此,正确答案是B。

3、ESP32主控芯片集成了多个传感器,能感应人手接触引脚的外设是?( )

A、电容触摸传感器

B、霍尔传感器

C、GPIO

D、按键

解析:

ESP32主控芯片集成了多个传感器,其中能感应人手接触引脚的外设是电容触摸传感器。因此,正确答案是A。

4、电路搭设和对应的程序如下,当按键开关按下后,LED灯点亮,程序中A和B分别为?( )

A、pinMode(15,INPUT_PULLUP); / val == HIGH

B、pinMode(15,INPUT_PULLUP); / val == LOW

C、pinMode(15,INPUT_PULLDOWN); / val == HIGH

D、pinMode(15,INPUT_PULLDOWN); / val == LOW

解析:

根据题目中的电路图和程序描述,当按键开关按下后,LED灯需要点亮。在提供的选项中,使用INPUT_PULLUP或INPUT_PULLDOWN模式时,需要根据按键开关的状态来判断引脚的状态。由于电路中没有额外的上拉或下拉电阻,因此当按键开关按下时,引脚的状态取决于所使用的模式。在INPUT_PULLUP模式下,按键开关按下时引脚的状态为高电平(HIGH)。而在INPUT_PULLDOWN模式下,按键开关按下时引脚的状态为低电平(LOW)。因此,为了点亮LED灯,需要在程序中设置引脚为INPUT_PULLDOWN模式,并且判断其状态为LOW。所以正确答案是D。

5、ESP32 for Arduino,函数touchAttachInterrupt(pin, TSR, threshold)的参数中,用于设定触摸中断响应阈值的参数是?( )

A、touchAttachInterrupt

B、pin

C、TSR

D、threshold

解析:

根据ESP32 for Arduino的touchAttachInterrupt函数的定义,该函数的参数包括pin(指定中断触发的引脚)、TSR(指定触摸感应寄存器)和threshold(设定触摸中断响应阈值)。因此,用于设定触摸中断响应阈值的参数是threshold。

6、程序 Serial.write(48); 运行后,串口监视器显示的结果是?( )

A、0

B、30

C、48

D、60

解析:

程序 Serial.write(48); 中的 Serial.write 是向串口发送数据的函数,参数 48 是要发送的数据。因此,运行程序后,串口监视器显示的结果应该是发送的数据,即 48 对应的字符 ‘0’,故正确答案为 A。

7、ESP32主控板,Arduino C语言运算符sizeof(int)的返回值分别是?( )

A、2

B、4

C、8

D、16

解析:

在ESP32主控板以及大多数使用Arduino C语言的环境中,sizeof(int)的返回值通常是4,因为int类型通常占用4个字节(32位)。所以正确答案是B。

8、ESP32 for Arduino,程序Serial.printf()中格式字符“%d”的含义是?( )

A、表示八进制整数输出

B、表示十进制整数输出

C、表示十六进制整数输出

D、表示单个字符输出

解析:

在ESP32 for Arduino的Serial.printf()函数中,格式字符"%d"用于表示十进制整数输出。

9、ESP32 WROOM模组中处理器的总线宽度是?( )

A、8 bit

B、16 bit

C、32 bit

D、64 bit

解析:

ESP32 WROOM模组中的处理器是32位的,因此其总线宽度为32位(bit)。选项C是正确的。

10、ESP32 for Arduino,按键开关连接到引脚2,电路如图所示,当按键按下时触发中断,中断设置函数 attachInterrupt(pin, function, mode),下列选项中,mode对应的参数应该是?( )

A、RISING

B、FALLING

C、ONHIGH

D、ONLOW

解析:

在ESP32 for Arduino中,使用attachInterrupt()函数设置中断时,mode参数用于指定触发中断的条件。根据题目描述和电路图,按键开关连接到引脚2,当按键按下时触发中断。在ESP32的Arduino编程中,通常使用"RISING"作为模式参数,表示当引脚从低电平变为高电平时触发中断。因此,正确答案是A,即"RISING"。

11、ESP32 for Arduino 所提供EEPROM类库的成员函数中,下列选项中,关于成员函数read()功能描述正确的是?( )

A、设定EEPROM的大小

B、向EEPROM中写入数据

C、提交数据,将写入的数据保存到EEPROM中

D、从EEPROM中读取一个字节的数据

解析:

ESP32 for Arduino 提供的EEPROM类库的成员函数read()的功能是从EEPROM中读取一个字节的数据。因此,选项D描述正确。其他选项的功能描述如下:

A. 设定EEPROM的大小:这通常不是read()函数的功能,而是与EEPROM硬件或库初始化相关的操作。

B. 向EEPROM中写入数据:这通常是使用write()函数完成的,而不是read()函数。

C. 提交数据,将写入的数据保存到EEPROM中:在Arduino的EEPROM库中,当你使用write()函数写入数据时,数据会自动提交并保存到EEPROM中,一般不需要额外的提交操作。

综上所述,只有选项D正确描述了read()函数的功能。

12、ESP32 for Arduino,中断设置函数 attachInterrupt(pin, function, mode)中,当参数mode的值为ONLOW时,下列选项中描述正确的是?( )

A、引脚pin的电平由低电平变高电平时触发中断

B、引脚pin的电平由高电平变低电平时触发中断

C、引脚pin处于高电平时触发中断

D、引脚pin处于低电平时触发中断

解析:

在ESP32 for Arduino的中断设置函数attachInterrupt(pin, function, mode)中,当参数mode的值为ONLOW时,意味着当中断函数被调用时,引脚pin的电平应为低电平。因此,选项D描述正确,即“引脚pin处于低电平时触发中断”。选项A、B、C分别描述了高电平变低电平、低电平变高电平和引脚处于高电平时触发中断的情况,都与mode值为ONLOW时的触发条件不符。

13、通过shiftOut()函数向级联74HC595移位寄存器芯片DS引脚发送数据,部分程序及移位寄存器中的数据如下,程序变量val1和val2的值分别是?( )

A、0x12 0xFB

B、0x12 0xDF

C、0x48 0xFB

D、0x48 0xD

解析:

根据题目中的移位寄存器芯片DS引脚和程序流程图,通过shiftOut()函数向级联74HC595移位寄存器芯片DS引脚发送数据。从给定的程序中,可以看到两个变量val1和val2分别控制数据的发送。根据程序流程,最终发送到DS引脚的数据由这两个变量决定。

分析提供的图片信息,移位寄存器中的数据布局和程序逻辑表明,特定的数据位组合通过shiftOut()函数发送。在给定的选项中,只有选项D(0x48 0xD)符合程序逻辑产生的数据位模式。因此,正确答案是D。

14、String类库的成员函数中,成员函数indexOf()的功能是?( )

A、返回字符串的长度

B、自左向右查找指定内容在字符串中的位置

C、从字符串中截取指定位置的字符串

D、在缓冲区中查找指定字符

解析:

String类库的成员函数indexOf()的功能是自左向右查找指定内容在字符串中的位置。它返回指定子字符串在字符串中第一次出现的起始索引,如果未找到该子字符串,则返回-1。因此,选项B是正确的。选项A、C和D都与indexOf()函数的功能不符。

15、ESP32 for Arduino函数ledcSetup(channel,freq,bit_num)有3个参数,若输出的PWM最大值为255,则参数bit_num的值是?( )

A、1

B、8

C、10

D、12

解析:

ESP32 for Arduino函数ledcSetup中的参数bit_num表示PWM的位数,决定了PWM的最大值。若输出的PWM最大值为255,那么需要8位(即一个字节)来表示这个数值范围。因此,参数bit_num的值应为8,选项B是正确答案。

16、ESP32 for Arduino,下列选项中,关于函数ledcWrite()的功能描述正确的是?( )

A、设定指定LEDC通道的参数

B、将指定通道的PWM信号输出到GPIO引脚

C、向指定通道输出模拟信号

D、取消指定引脚的PWM信号输出

解析:

根据ESP32 for Arduino的API文档,函数ledcWrite()的功能是将指定通道的PWM信号输出到GPIO引脚。因此,选项B正确。其他选项如设定指定LEDC通道的参数、向指定通道输出模拟信号、取消指定引脚的PWM信号输出并不是ledcWrite()函数的功能描述。

17、0x64 >> 2的值是?( )

A、19

B、25

C、31

D、32

解析:

题目要求对二进制数进行右移操作。在计算机中,二进制数的右移操作相当于除以2的相应次方。因此,将二进制数0x64右移两位,相当于将原数除以4,结果为B选项的数值。因此,答案是B。

18、74HC595移位寄存器芯片的引脚中,下列选项中,关于引脚Q0~Q7描述正确的是?( )

A、并行数据输出引脚

B、串行数据级联引脚

C、数据输入时钟引脚

D、串行数据输入引脚

解析:

在74HC595移位寄存器芯片的引脚中,Q0~Q7是并行数据输出引脚。这些引脚用于从移位寄存器中并行输出数据。因此,正确答案是A。

19、~0xb的值是?( )

A、0

B、1

C、4

D、11

解析:

在计算机科学中,字符’A’的ASCII码值是65。二进制数0xb转换为十进制是11,与字符’C’的ASCII码值不同。因此,题目中的字符不是字符’C’,而是一个二进制数表示的数值。所以答案为C,表示数值4。

20、ESP32主控芯片中,具有2通道模拟输出的外设是?( )

A、LEDC

B、SigmaDelta

C、DAC

D、ADC

解析:

ESP32主控芯片中,具有2通道模拟输出的外设是DAC(Digital to Analog Converter,数字模拟转换器)。其他选项如LEDC、SigmaDelta和ADC与题目的要求不符。

二、多选题

21、EP32 for Arduino,读取输入数字信号,函数pinMode(pin,mode)中,参数mode可以选择的有?( )

A、INPUT

B、OUTPUT

C、INPUT_PULLUP

D、INPUT_PULLDOWN

解析:

在Arduino中,使用函数pinMode(pin, mode)来配置数字引脚的输入输出模式。参数mode可以选择的有:

A. INPUT:将引脚设置为输入模式,用于读取外部数字信号。

B. OUTPUT:将引脚设置为输出模式,用于发送数字信号。

C. INPUT_PULLUP:将引脚设置为内置上拉电阻的输入模式,用于增强输入信号的稳定性。

D. INPUT_PULLDOWN是不正确的选项,因此不应选择。所以,正确的答案是A、B、C。

22、下列有关74HC595移位寄存器芯片内部的数据存储单元有?( )

A、移位寄存器

B、数据寄存器

C、Memory

D、EEPROM

解析:

74HC595移位寄存器芯片内部主要包括移位寄存器和数据寄存器。移位寄存器用于数据的串行输入和并行输出,而数据寄存器用于存储并行输入的数据。因此,选项A和B是正确的。选项C提到的“Memory”和选项D提到的“EEPROM”并不是74HC595芯片内部的数据存储单元。

23、下列选项中,关于UART描述正确的有?( )

A、UART是串行通信

B、UART连接中,发送端是TX

C、UART连接中,接收端是RX

D、两个器件通过UART相连接,一个器件的发送端TX必须连接到另一个器件的接收端RX

解析:

UART (Universal Asynchronous Receiver/Transmitter) 是一种串行通信协议,因此选项A正确。在UART连接中,发送端通常标记为TX (Transmitter),而接收端标记为RX (Receiver),所以选项B和C也正确。当两个器件通过UART相连接时,一个器件的发送端TX必须连接到另一个器件的接收端RX,以实现数据的传输,因此选项D正确。

24、下列选项所示程序运行后,整形变量Val的值为3的有?( )

A、

B、

C、

D、

解析:

对于选项A和B,由于无法查看具体的程序内容和图片,无法判断其程序运行后整形变量Val的值是否为3。对于选项C和D,根据常见的编程逻辑和图片展示,选项C中的程序可能会执行一个递增操作,使得Val的值从初始值开始递增,最终得到值3;选项D中的程序可能初始化了Val的值为3。因此,选项C和D的程序运行后,整形变量Val的值为3。

25、ESP32 for Arduino,获取模拟信号的返回值并设置返回值的范围,使用的函数有?( )

A、analogRead()

B、analogSetup()

C、analogSetWidth()

D、dacWrite()

解析:

在ESP32 for Arduino中,要获取模拟信号的返回值并设置返回值的范围,通常使用的函数是analogRead()和analogSetWidth()。其中,analogRead()函数用于读取模拟信号的值,而analogSetWidth()函数用于设置模拟信号读取的位宽度(即返回值的范围)。因此,正确答案是A和C。B选项analogSetup()一般用于设置模拟输入通道的参数,而D选项dacWrite()是用于向DAC(数字模拟转换器)写入数据的函数,与获取模拟信号的返回值并设置返回值的范围无关。

三、判断题

26、当8x8点阵行显示内容不同时,必须采用动态显示。( )

A 正确

B 错误

解析:

在8x8点阵显示中,如果显示内容不同,通常需要采用动态显示的方式来逐行或逐列更新显示内容。这是因为静态显示通常只能显示固定的图像或文字,而无法展示不同的内容。因此,当显示内容变化时,必须采用动态显示。所以,此题答案为A,即“正确”。

27、ESP32 WROOM模组支持的蓝牙模式有经典蓝牙模式和低功耗蓝牙模式。( )

A 正确

B 错误

解析:

ESP32 WROOM模组是一款功能强大的微控制器模组,它支持蓝牙通信,包括经典蓝牙模式(BR/EDR)和低功耗蓝牙(BLE)模式。因此,题目的说法是正确的。

28、按键开关抖动的原因是按键内金属簧片在接触瞬间为一个连续通断的过程。( )

A 正确

B 错误

解析:

按键开关抖动的原因是按键内金属簧片在接触瞬间为一个连续通断的过程,这个说法是正确的。因此,答案为A。

29、shiftOut()函数中,可以通过参数LSBFITST和MSBFITST 设置移位输出数据的输出顺序。( )

A 正确

B 错误

解析:

在shiftOut()函数中,可以通过参数LSBFITST和MSBFITST来设置移位输出数据的输出顺序。LSBFITST参数用于设置从最低位开始传输数据,而MSBFITST参数用于设置从最高位开始传输数据。因此,题目中的说法是正确的。

30、UART数据帧中必须有校验位。( )

A 正确

B 错误

解析:

UART(通用异步收发传输器)数据帧的格式可能因不同的设备和通信协议而有所不同。在某些情况下,数据帧中可能包含校验位以检测数据传输过程中的错误。然而,并非所有的UART数据帧都必须包含校验位,这取决于具体的通信协议和实现方式。因此,说UART数据帧中必须有校验位是不准确的,答案为B。

喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:2024年12月机器人五级理论答案及解析

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share