Arduino单片机应用期末考试试题(含详细答案)_第1页
Arduino单片机应用期末考试试题(含详细答案)_第2页
Arduino单片机应用期末考试试题(含详细答案)_第3页
Arduino单片机应用期末考试试题(含详细答案)_第4页
Arduino单片机应用期末考试试题(含详细答案)_第5页
已阅读5页,还剩2页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Arduino单片机应用期末考试试题(含详细答案)考试说明:满分100分,考试时间90分钟,闭卷考试。适用于高职、本科通识选修课、技能摸底考核。适用范围:基础语法、IO口操作、延时函数、按键、LED、PWM调光、简单传感器逻辑、基础编程实操一、单项选择题(共15题,每题2分,共30分)每题只有一个正确答案,请选择最贴合题意的选项。1.下列不属于Arduino主控板常用型号的是()A.UnoR3B.Mega2560C.STM32F103D.Nano2.ArduinoUno板默认工作电压为()A.3.3VB.5VC.12VD.24V3.ArduinoUno中,只能作为模拟输入的引脚范围是()A.D0-D13B.A0-A5C.D0-D7D.all引脚4.用于设置引脚输入/输出模式的函数是()A.digitalWrite()B.pinMode()C.analogRead()D.delay()5.Arduino中读取数字引脚电平的函数是()A.digitalRead()B.analogRead()C.readPin()D.getValue()6.下列函数中,属于PWM模拟输出调光函数的是()A.digitalWrite()B.analogWrite()C.serialWrite()D.pinMode()7.ArduinoUno支持PWM输出的引脚标注符号为()A.无标识B.#C.~D.*8.delay(1000)的延时时间为()A.1毫秒B.100毫秒C.1秒D.10秒9.Arduino程序结构中,负责循环执行的函数是()A.setup()B.loop()C.main()D.run()10.串口初始化、设置波特率的正确函数是()A.Serial.begin()B.Serial.start()C.Serial.open()D.Serial.init()11.读取模拟引脚电压数值的返回值范围是()A.0~500B.0~1023C.0~255D.0~100012.analogWrite函数的有效数值范围是()A.0~1023B.0~255C.1~100D.0~5013.按键控制电路中,为避免按键抖动带来的误触发,常用处理方式是()A.加大电压B.延时消抖C.更换引脚D.关闭串口14.setup()函数的执行特点是()A.循环执行B.上电只执行一次C.随时调用D.串口触发执行15.下列数据类型中,用于存储0或1数字电平变量的是()A.intB.floatC.booleanD.char二、判断题(共10题,每题1分,共10分)正确选√,错误选×1.Arduino所有数字引脚都可以直接输出PWM模拟信号。()2.loop()函数内的代码会不断重复运行。()3.analogRead读取的数值越大,代表检测电压越高。()4.delay延时函数执行期间,程序可以同时执行其他代码。()5.ArduinoA0-A5引脚可以当作普通数字输入输出引脚使用。()6.digitalWrite(pin,LOW)可以让对应引脚输出低电平。()7.变量int类型可以存储小数数值。()8.串口波特率设置不一致,会导致串口打印乱码。()9.按键接INPUT模式时,必须外接电源才能读取电平。()10.PWM调光原理是通过快速高低电平切换实现等效电压变化。()三、填空题(共10空,每空2分,共20分)1.Arduino程序两大核心函数为__________和__________。2.设置引脚为输出模式,语句为pinMode(pin,__________)。3.点亮LED灯,对应引脚需要输出__________电平。4.串口打印字符串的函数是__________,不自动换行的函数是__________。5.模拟输入引脚读取电压的函数是__________。6.实现LED呼吸灯效果,需要使用__________输出功能。7.按键消抖常用的函数配合语句是__________。四、简答题(共3题,每题5分,共15分)1.简述setup()函数和loop()函数的作用与执行区别。2.简述数字输出与PWM模拟输出的区别。3.简述按键抖动产生的原因及软件消抖原理。五、编程实操题(共2题,第1题10分,第2题15分,共25分)1.基础编程:编写完整程序,实现D13引脚LED灯闪烁,亮1秒、灭1秒循环。2.综合编程:编写完整程序,实现按键控制LED状态切换。按键接D2,LED接D13,按下按键一次,LED状态翻转(亮变灭、灭变亮),需加入软件消抖。参考答案及详细解析一、单项选择题答案及解析1.【答案】C解析:STM32F103是STM32系列单片机,不属于Arduino官方主控型号,Uno、Mega2560、Nano均为常用Arduino板型。2.【答案】B解析:ArduinoUno核心工作电压为5V,3.3V为板载辅助电压,不可作为主工作电压。3.【答案】B解析:A0-A5为专用模拟输入引脚,可读取连续电压信号,数字引脚无模拟输入功能。4.【答案】B解析:pinMode()专门用于定义引脚输入、输出模式,是程序初始化必备函数。5.【答案】A解析:digitalRead()读取数字引脚高低电平,返回值为HIGH或LOW。6.【答案】B解析:analogWrite()为PWM模拟输出函数,可实现灯光调光、电机调速等功能。7.【答案】C解析:Arduino板上带“~”标识的引脚支持PWM输出,普通数字引脚不支持。8.【答案】C解析:delay()单位为毫秒,1000毫秒=1秒。9.【答案】B解析:loop()为循环函数,程序初始化完成后,会无限循环执行该函数内代码。10.【答案】A解析:Serial.begin(波特率)用于初始化串口通信,是串口打印数据的前提。11.【答案】B解析:Arduino模拟采样精度为10位,数值范围0~1023,对应0~5V电压。12.【答案】B解析:analogWrite为8位PWM输出,数值范围固定0~255。13.【答案】B解析:机械按键按下和松开瞬间会产生短暂电平抖动,通过短时延时可过滤误信号。14.【答案】B解析:setup()仅在上电或重启后执行一次,用于初始化引脚、串口、变量等参数。15.【答案】C解析:boolean布尔类型仅存储true(1)和false(0),适配电平状态存储。二、判断题答案及解析1.×解析:仅带~标识的引脚支持PWM输出,并非全部数字引脚。2.√解析:loop函数为死循环结构,持续重复执行。3.√解析:模拟输入数值与检测电压成正比,电压越高,读数越大。4.×解析:delay为阻塞函数,延时期间程序暂停,无法执行其他代码。5.√解析:A0-A5引脚兼具数字引脚功能,可配置为输入或输出。6.√解析:digitalWrite(引脚,LOW)输出低电平,对应设备断电熄灭。7.×解析:int为整型变量,只能存储整数,小数会被直接取整。8.√解析:设备与电脑串口波特率不匹配,数据解析错误,出现乱码。9.×解析:可使用INPUT_PULLUP上拉模式,无需外接电源和电阻。10.√解析:PWM通过高频次高低电平切换,利用占空比实现等效模拟电压。三、填空题答案1.setup()、loop()2.OUTPUT3.高(HIGH)4.Serial.println()、Serial.print()5.analogRead()6.PWM模拟7.delay()四、简答题参考答案1.setup()与loop()的作用与区别setup()是初始化函数,设备上电或重启后仅执行一次,主要用于设置引脚模式、初始化串口、定义初始变量等基础配置。loop()是循环函数,初始化完成后会不间断循环执行,所有需要反复运行的功能逻辑,如灯光闪烁、数据检测、按键判断等均写在该函数内。二者核心区别为执行次数不同,一次初始化,全程循环。2.数字输出与PWM模拟输出的区别数字输出只有两种状态,高电平或低电平,对应设备全开或全关,无法调节中间状态,适合普通开关型LED、继电器控制。PWM模拟输出并非真实连续电压,而是通过调整高低电平的占空比,输出等效的渐变电压,数值可在0~255之间调节,能够实现LED呼吸调光、电机调速、音量调节等渐变效果。3.按键抖动原因及软件消抖原理原因:机械按键内部为金属弹片结构,按下和松开瞬间会出现短暂的接触不稳定,电平会快速跳动数次,导致程序误判多次触发。软件消抖原理:检测到按键电平变化后,短暂延时10~20毫秒,等待电平稳定后再次读取按键状态,过滤掉瞬时抖动的无效信号,保证按键动作只触发一次。五、编程实操题参考答案1.LED一秒闪烁程序(满分10分)PlainText

voidsetup(){

pinMode(13,OUTPUT);//设置13号引脚为输出模式

}

voidloop(){

digitalWrite(13,HIGH);//点亮LED

delay(1000);//延时1秒

digitalWrite(13,LOW);//熄灭LED

delay(1000);//延时1秒

}2.按键消抖控制LED翻转程序(满分15分)PlainText

intledPin=13;

intkeyPin=2;

intledState=LOW;//定义LED初始状态

intkeyState;//存储按键读取状态

voidsetup(){

pinMode(ledPin,OUTPUT);

pinMode(keyPin,INPUT_PULLUP);//开启上拉输入,简化电路

}

voidloop(){

keyState=digitalRead(keyPin);

//检测按键按下(上拉模式,按下为低电平)

if(keyState==LOW){

delay(15);//软件消抖延时

keyState=digitalRead(keyPin);//再次确认状态

if(keyState==LOW){

//翻转LED状态

if(ledState==LOW){

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论