实操任务:串口交互可调红绿灯倒计时牌仿真

vz290661 组合题 共 个子题

一、实操考题主题:串口交互可调红绿灯倒计时牌仿真器件:ESP32主控板、按键模块、四位数码管、74HC595移位寄存器芯片(或模块)及相关器件。以上模块也可以采用分立器件结合面包板进行搭设。任务要求:使用四位数码管模拟交通路口红绿灯的倒计时牌,倒计时牌的显示内容通过串口输入报文实现控制。报文的格式为:XX-YY-ZZ,其中XX表示总的通行时长,范围10~20;YY表示闪烁显示的时间,范围0~9;ZZ表示闪烁显示的时间间隔。系统默认的报文为:15-5-100,表示路口总的通行时长为15秒,当倒计时时间还剩下5秒时,四位数码管开始闪烁显示,闪烁显示的时间间隔为100毫秒。具体要求如下:(1) 装置通电启动后,在四位数码管显示今天的日期:1214;(2) 点击按键,装置进入工作状态,四位数码管按照默认的报文数据开始倒计时显示;(3) 在串口监视器窗口输入框输入上述格式的新报文后,在串口监视器窗口输出解析后的相应报文内容。以报文“15-5-100”为例,串口监视器窗口输出的内容为:总时长:15 倒计时:5 间隔:100;(4) 在串口监视器中,输入新的报文数据后,四位数码管按照新输入的报文数据倒计时显示;(5) 四位数码管须使用74HC595移位寄存器芯片驱动显示。如采用其他方式,本实操成绩得0分;(6) 程序采用Arduino C/C++代码编写,不得使用外部库调用;(7) 未作规定处可自行处理,无明显与事实违背即可。说明:程序编写过程中不得打开其它示例程序,如发现,实操成绩按照0分处理。请考生在考试结束前,按照如下要求提交相关文件。(1) 将程序放在一个文件夹中,压缩为1个“rar或zip”格式文件,并命名为:DJKS5_身份证号,大小5M以下;(2) 将程序文件通过“上传附件”按钮进行上传。参考资料:(1) 数组NUM[] 保存的是0~9和'.'十六进制形式的数码管显示的段位信息。编程时可参考使用。// 保存0~9byte NUM[] = {0xFC, 0x60, 0xDA, 0xF2, 0x66, 0xB6, 0xBE, 0xE0, 0xFE, 0xF6};(2) String类库的成员函数及其功能描述如下:indexOf(val); // 自左向右查找字符val在字符串对象实例中的位置。substring(from,to) // 从字符串对象实例中截取指定位置的字符串。toInt(); // 将字符串转换为整数。(3) Serial类库的成员函数及其功能描述如下:avaiable(); // 返回UART接收缓冲区中的字节数。read(); // 从UART接收缓冲区读取数据。readString(); // 从UART接收缓冲区中读取字符串。1. 电路搭设(20分)元器件:(1) 装置中包含74HC595移位寄存器模块(或元器件);(2分)(2) 装置中包含按键模块(或元器件);(2分)(3) 装置中包含四位数码管;(2分)电路搭设:(4) 四位数码管与74HC595移位寄存器模块(或元器件)正确连接;(5分)(5) 74HC595移位寄存器模块(或元器件)与主控板正确连接;(5分)(6) 按键模块(或元器件)与主控板正确连接。(4分)2. 功能实现(80分)(1) 实现装置通电启动后,在四位数码管显示今天的日期:1214;(10分)(2) 点击按键后,装置进入工作状态,实现四位数码管从15开始倒计时显示,时间间隔为1秒;(15分)(3) 实现当通行时长还剩下5秒时,四位数码管开始闪烁显示,闪烁时间间隔为100毫秒;(15分)(4) 听从测评师老师的指令输入新的报文数据后,实现在串口监视器中按任务要求的照格式输出解析后的数据;(10分)(5) 四位数码管实现按新输入的报文数据开始倒计时显示,时间间隔为1秒;(15分)(6) 四位数码管实现按新输入的报文数据的时间和间隔闪烁显示。(15分)

正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧