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

简答题

主题:时间可调自助红绿灯
器件:Atmega328P主控板1块,交通灯模块2个,电位器模块1个,按键模块1个,蜂鸣器模块1个。以上模块也可使用分立器件结合面包板搭建。
任务要求:
1.当自助式红绿灯的按钮没有被按下时,主路显示为绿灯,人行道显示为红灯。
2.当按钮被按下后,主路的绿灯延时2秒后由绿灯经黄灯转换为红灯。
3.当主路为红灯时,人行道的绿灯点亮并闪烁,闪烁时间间隔为500毫秒。
4.人行道的通行时间为8秒~12秒,可以通过电位器调整,并将当前的通行时间显示在串口监视器上。
5.当人行道的绿灯还剩余4秒时,绿灯快速闪烁,闪烁时间间隔为250毫秒,提醒行人快速通过。
6.当人行道的绿灯还剩余4秒,绿灯快速闪烁的同时,声音提醒。声音提醒的方式选用蜂鸣器模块。
7.人行道通行时间结束,人行道红灯点亮,主路绿灯点亮,蜂鸣器静音。
8.根据上述要求,绘制流程图。
9.未作规定处可自行处理,无明显与事实违背即可。
10.编写程序文件命名规则为:DJKS3_身份证号,考试完毕上传备案。
程序编写过程中不得打开库例程和其它程序,如发现,实操成绩按照0分处理。

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

答案:

解析:

【喵呜刷题小喵解析】这个答案使用C语言编程,符合Atmega328P主控板的使用规范。它定义了一些LED和按钮的引脚,并创建了一个`pedestrian_time_remaining`变量来跟踪人行道绿灯的剩余时间。在`setup()`函数中,它设置了所有LED和按钮的引脚为输出模式。在`loop()`函数中,它首先检查按钮是否被按下。如果按钮被按下,则执行一系列LED闪烁,模拟主路绿灯的延时转换。然后,它进入一个循环,根据`pedestrian_time_remaining`的值,控制人行道的绿灯闪烁。当绿灯剩余时间少于或等于4秒时,它会快速闪烁并启动蜂鸣器。当绿灯时间结束后,人行道红灯点亮,主路绿灯点亮,蜂鸣器静音。如果按钮没有被按下,主路显示为绿灯,人行道显示为红灯。注意,此答案只是一个基本实现,并未包含电位器调整人行道通行时间的代码,也未绘制流程图。这些部分可能需要进一步补充和完善。
创作类型:
原创

本文链接:主题:时间可调自助红绿灯 器件:Atmega328P主控板1块,交通灯模块2个,电位器模块1个,

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

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

分享考题
share