刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

一、实操考题
主题:模拟摆头风扇
器件:ATmega328控制板1个,电位器模块1个, 按键模块1个, LED灯模块1个,舵机1个,电机1个,结构件若干(也可使用普通电子元器件结合面包板搭建)。
任务要求: 
(1)本项目由电位器、按键、LED灯、舵机及电机组成,模拟摆头风扇效果;
(2)控制板上电,LED灯保持熄灭状态,舵机角度为0度,电机不转动;
(3)按下按键(按下后手从按键上松开),装置执行(4)~(7)条所描述的任务。
(4)舵机角度在30~150度之间反复摆动,模拟风扇摆头装置;
(5)电机开始转动,模拟风扇开始工作;
(6)LED灯保持点亮状态,模拟风扇指示灯;
(7)旋转电位器调节电机的转速,模拟风扇调节器;
(8)再次按下按键,舵机转到0度,LED灯熄灭,电机停止转动;
(9)可使用任意结构件搭建,建议根据以上要求搭建风扇模型(模型结构便于评分时作品的展示,但不作为计分项目);
(10)电机程序不可使用库函数;
(11)未作规定处可自行处理,无明显与事实违背即可。
说明:请考生在考试结束前,按照如下要求提交相关文件:
(1)将程序放在一个文件夹中,并将文件夹命名为:DJKS4_身份证号;
(2)将程序文件夹压缩为1个“rar或zip”格式文件,大小5M以下;
(3)将程序文件通过“上传附件”按钮进行上传。

使用微信搜索喵呜刷题,轻松应对考试!

答案:

解析:

【喵呜刷题小喵解析】本题要求模拟摆头风扇的效果,使用ATmega328控制板、电位器模块、按键模块、LED灯模块、舵机和电机。由于控制板没有特定库函数可用,需要使用裸机编程,代码实现较复杂。代码中首先定义了引脚、变量等。`setup()`函数中进行了引脚模式的设置。在`loop()`函数中,使用`digitalRead()`函数读取按键值,如果按键被按下,则根据风扇是否开启进行不同的操作。风扇开启时,设置舵机角度为0度,开启LED灯,开启风扇,并使用电位器调节风扇转速。风扇关闭时,设置舵机角度为0度,关闭LED灯,关闭风扇。舵机角度的读取和设置使用了`servo.read()`和`servo.write()`函数。电位器值的读取使用了`analogRead()`函数。风扇转速的调节使用了`map()`函数将电位器值映射到风扇转速。在代码中,使用了一个舵机对象`servo`,并在`servoSetup()`函数中将其与数字引脚绑定。在`setup()`函数中调用了`servoSetup()`函数进行舵机对象的初始化。以上代码只是一个示例,由于控制板没有特定库函数可用,实际编程需要根据控制板的寄存器和引脚进行操作,实现较为复杂。因此,本题需要考生具备一定的电子技术和编程基础,理解电路原理,熟悉控制板的寄存器和引脚操作,以及掌握C语言编程技巧。
创作类型:
原创

本文链接:一、实操考题 主题:模拟摆头风扇 器件:ATmega328控制板1个,电位器模块1个, 按键模块1个

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

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share