实操任务:可调红绿灯倒计时牌仿真
主题
可调红绿灯倒计时牌仿真
器件
ESP32主控板、按键模块、四位数码管、电位器模块、74HC595移位寄存器芯片(或模块)及相关器件。以上模块也可以采用分立器件结合面包板进行搭设。
任务要求
通过四位数码管模拟交通路口红绿灯的倒计时牌,路口的通行时长通过旋转电位器设定,通行时长根据路况在15~20秒之间变化。具体要求如下:
-
装置通电启动后,在
四位数码管显示今天的日期:0615; -
第一次点击按键后,装置进入工作状态,
四位数码管显示当前的通行时长; -
再次点击按键后,
四位数码管开始倒计时显示通行时长,倒计时时间间隔为1秒; -
当通行时长还剩下
5秒时,四位数码管开始闪烁显示,闪烁时间间隔为250毫秒; -
倒计时结束,数码管黑屏,保持
2秒。然后四位数码管恢复显示当前的通行时长; -
通过旋转电位器设置新的通行时长,设定完毕,在
四位数码管上显示新的通行时长; -
重复任务3~任务6,当按键按下后,
四位数码管开始倒计时显示; -
四位数码管必须使用74HC595移位寄存器芯片驱动显示。如采用其他方式,本实操成绩得0分; -
程序采用
Arduino C/C++代码编写,不得使用外部库调用; -
未作规定处可自行处理,无明显与事实违背即可。
提交说明
请考生在考试结束前,按照如下要求提交相关文件。
-
将程序放在一个文件夹中,压缩为1个“rar或zip”格式文件,并命名为:
DJKS5_身份证号,大小5M以下; -
将程序文件通过“上传附件”按钮进行上传;
-
程序编写过程中不得打开其它示例程序,如发现,实操成绩按照0分处理。
参考资料
数组NUM[] 保存的是0~9和'.'十六进制形式的数码管显示的段位信息。编程时可参考使用。
// 保存0~9
byte NUM[] = {0xFC, 0x60, 0xDA, 0xF2, 0x66, 0xB6, 0xBE, 0xE0, 0xFE, 0xF6};
评分标准
-
器件及器件连接(20分)
-
功能实现(80分)
(1) 实现装置通电启动后,在四位数码管显示今天的日期:0615;(10分)
(2) 第一次点击按键后,装置进入工作状态,四位数码管显示当前的通行时长;(10分)
(3) 实现再次点击按键后,四位数码管开始倒计时显示通行时长,倒计时时间间隔为1秒;(15分)
(4) 实现当通行时长还剩下5秒时,四位数码管开始闪烁显示,闪烁时间间隔为250毫秒;(15分)
(5) 倒计时结束后,实现数码管黑屏时长2秒后,恢复显示当前的通行时长;(10分)
(6) 实现通过旋转电位器设置新的通行时长,设定完毕,在四位数码管上显示新的通行时长;(10分)
(7) 实现设置新的通行时长后,能完成任务3~任务6的倒计时显示(测评老师通过语音通知考生旋转电位修改通行时长,重复实现上述步骤)。(10分)
子题 填空题
请按上述要求完成电路搭设
评分标准
元器件:
(1) 装置中包含74HC595移位寄存器模块(或元器件);(2分)
(2) 装置中包含按键模块(或元器件);(2分)
(3) 装置中包含四位数码管;(2分)
(4) 装置中包含电位器模块;(2分)
电路搭设:
(5) 四位数码管与74HC595移位寄存器模块(或元器件)正确连接;(3分)
(6) 74HC595移位寄存器模块(或元器件)与主控板正确连接;(3分)
(7) 按键模块(或元器件)与主控板正确连接;(3分)
(8) 电位器模块与主控板正确连接。(3分)
子题 填空题
请按上述要求完成功能实现
评分标准
(1) 实现装置通电启动后,在四位数码管显示今天的日期:0615;(10分)
(2) 第一次点击按键后,装置进入工作状态,四位数码管显示当前的通行时长;(10分)
(3) 实现再次点击按键后,四位数码管开始倒计时显示通行时长,倒计时时间间隔为1秒;(15分)
(4) 实现当通行时长还剩下5秒时,四位数码管开始闪烁显示,闪烁时间间隔为250毫秒;(15分)
(5) 倒计时结束后,实现数码管黑屏时长2秒后,恢复显示当前的通行时长;(10分)
(6) 实现通过旋转电位器设置新的通行时长,设定完毕,在四位数码管上显示新的通行时长;(10分)
(7) 实现设置新的通行时长后,能完成任务3~任务6的倒计时显示(测评老师通过语音通知考生旋转电位修改通行时长,重复实现上述步骤)。(10分)