A20112. 主题:角度指示器器件:Atmega328P主控板1块,LED模块2个(分别为LED_A和LED_B),电位器模块1个,舵机1个。(以上模块也可使用分立器件结合面包板搭建。)任务要求:通过旋转电位器控制舵机的转动角度,通过LED灯指示不同的位置。具体要求如下:(1) 当电位器的返回值小于128时,舵机旋转至零度位置,此时LED_A点亮,LED_B熄灭;(2) 当电位器的返回值大于等于128且小于3…
题目描述
主题:角度指示器
器件:
Atmega328P主控板1块,LED模块2个(分别为LED_A和LED_B),电位器模块1个,舵机1个。(以上模块也可使用分立器件结合面包板搭建。)
任务要求:
通过旋转电位器控制舵机的转动角度,通过LED灯指示不同的位置。具体要求如下:
(1) 当电位器的返回值小于128时,舵机旋转至零度位置,此时LED_A点亮,LED_B熄灭;
(2) 当电位器的返回值大于等于128且小于384时,舵机旋转至45度位置,此时LED_A闪烁,LED_B熄灭;
(3) 当电位器的返回值大于等于384且小于640时,舵机旋转至90度位置,此时LED_A和LED_B均闪烁;
(4) 当电位器的返回值大于等于640且小于896时,舵机旋转至135度位置,此时LED_B闪烁,LED_A熄灭;
(5) 当电位器的返回值大于等于896时,舵机旋转至180度位置,此时LED_B点亮,LED_A熄灭;
(6) 根据上述要求,绘制流程图;
(7) 未作规定处可自行处理,无明显与事实违背即可。
说明:
程序编写过程中不得打开其它示例程序,如发现,实操成绩按照0分处理。
请考生在考试结束前,按照如下要求提交相关文件。
(1) 将程序放在一个文件夹中,压缩为1个“rar或zip”格式文件,并命名为:DJKS3_身份证号,大小5M以下;
(2) 将程序文件通过“上传附件”按钮进行上传。
参考答案
评分项:
1.器件及器件连接(20分)
说明:如考生采用的是集成开发板,实操项目所需元器件均预先集成在PCB上,无实际电路搭设操作,电路搭设部分得分为0分。
2.流程图绘制及功能(20分)
3.功能实现(60分)
(1)实现当电位器的返回值小于128时,舵机旋转至零度位置:(6分)
(2)实现当舵机位于零度位置时,LED_A点亮,LED_B熄灭;(6分)
(3)实现当电位器的返回值大于等于128且小于384时,舵机旋转至45度位置;(6分)
(4)实现当舵机位于45度位置时,LED_A闪烁,LED_B熄灭;(6分)
(5)实现当电位器的返回值大于等于384且小于640时,舵机旋转至90度位置;(6分)
(6)实现当舵机位于90度位置时,LED_A和LED_B均闪烁;(6分)
(7)实现当电位器的返回值大于等于640且小于896时,舵机旋转至135度位置:(6分)
(8)实现当舵机位于135度位置时,LED_B闪烁,LED_A熄灭;(6分)
(9)实现当电位器的返回值大于等于896时,舵机旋转至180度位置:(6分)
(10)实现当舵机位于180度位置时,LED_B点亮,LED_A熄灭。(6分)答案解析
先设定好电位器的控制。可以先设定好变量,然后再给变量赋值。程序如下:

题目中只有电位器和LED _A和LED_B。这里就按照对应的要求去设定即可。然后要注意的就是电位器是属于模拟输入。所以在A0~A5之间随机的选择其一即可。
后续中的五个任务。这里就需要使用多重条件分支,所以这里就需要使用到如果..否则如果。界定好每个电位器的区间。重点就是舵机,两个LED灯的状态不要写错了即可。
其中唯一可能有点问题的就是LED灯的闪烁,程序演示如下:
其余就没有需要说

明的地方了。完整程序如下:


