主题:自动SOS警示灯
器件:Atmega328P主控板1块,LED模块1个,超声波传感器1个,电位器模块1个,蜂鸣器模块1个及相应辅件。以上模块也可使用分立器件结合面包板搭建。
任务要求:
摩尔斯电码是一种早期的数字化通信形式,它依靠一系列的点和划来传递编码信息。它的代码包含5种,分别为:点( · )、划(-)、每个字符内部短的停顿(在点和划之间的停顿)、每个字符之间中等的停顿以及单词之间长的停顿所组成。
摩尔斯电码代码时间是以点为基准,具体规则如下:
点( · ):一个时间长度单位
划( - ):三个点的长度;
每个字符内部短停顿(在点和划之间的停顿):一个点的长度;
每个字符之间中等停顿:三个点的长度;
每个单词之间长停顿:七个点的长度。
求救信号SOS对应的摩尔斯电码为:···---···。其中S的摩尔斯电码为···,O的摩尔斯电码为:---。
本主题通过控制LED灯的亮灭时长来模拟发送SOS求救信号。具体要求如下:
1、当超声波检测的距离大于10厘米时,LED灯处于呼吸灯的状态(逐渐变亮,逐渐熄灭,依次反复),蜂鸣器静音。
2、当超声波检测的距离不大于10厘米时,LED灯发出SOS信号,同时蜂鸣器发出声音;
3、摩尔斯电码中点( · )的时间长度(即基准时长)由电位器控制,在200~500毫秒之间可调。
4、将超声波传感器检测的距离以及当前的基准时长发送到串口监视器。
5、呼吸灯的呼吸频率自行确定,需要能呈现出呼吸灯效果。
6、控制程序采用C/C++代码编写,不得使用图形化软件编写。
7、未作规定处可自行处理,无明显与事实违背即可。
8、考试结束,考生将代码压缩上传,程序文件命名规则为:DJKS4_身份证号。
9、程序编写过程中不得打开库例程和其它程序,如发现,实操成绩按照0分处理。