
#第八届立创电赛#电子时钟
简介
2023立创暑假训练营项目,制作一款电子时钟
简介:2023立创暑假训练营项目,制作一款电子时钟开源协议
:Public Domain
描述
* 1、项目功能介绍
制作一个外观完整的DIY电子时钟。功能包括显示当前时间、修改时间、闹钟提醒、显示当前温度湿度等。
*2、项目属性
首次公开、暑期训练营项目、无获奖无答辩
* 3、开源协议
完全开源
*4、硬件部分
根据训练营视频教程在立创EDA专业版中设计原理图、PCB及外壳和面板。
电源电路:电源采用typec供电,设置一个电源指示灯。
电池充电及外部电源切换电路。包含2个充电提示灯。本来设计了18650的电池盒,但是装上电池后超过外壳深度了,所以实际还没有用电池供电。
程序下载电路:由于手上没有调试器,只有盲写程序build hex文件后,通过串口烧录。
程序烧录电路,为了操作简便,实际把BOOT焊短接了(可以优化成跳线),上电时默认会进入单芯片模式,复位后会自动进入烧录模式。
采用无源蜂鸣器,BEEP驱动信号是P302脚,对应芯片的7号通道。由于训练营教程中没有实现无源蜂鸣器,软件部分详细说明。
数码管,用于显示时间、温度、湿度等。
另外时4个按键,用于用户交互,实现调时间等功能,芯片引脚分配详见原理图。
PCB渲染图
实物图
*5、软件部分
根据训练营肖工教程,一步一步完成。
有几个调整点:
1. 由于没有调试器,触摸按钮难以完成,将第四个按钮实现成同样的功能,长按切换显示时间、温度、湿度。并增加了长按交互蜂鸣器提示
2.由于采用了无源蜂鸣器,训练营未提供无源蜂鸣器教程。细说如下,供参考:
设置引脚功能。
配置PWM
主程序开始时,启动GPT timer7,我这里时采用了启用和禁用输出PWM来实现蜂鸣器的响和停。对应函数未R_GPT_OutputEnable和R_GPT_OutputDisable
同样,在buzzer函数中的代码如下,闹钟响时,buzzer_num设置成100,就可以实现连续Beep几声。
时间设置按钮我时SW3,短Beep一声即可
显示内容切换时,也短Beep一声
*6、BOM清单
请参考附件
*7、大赛LOGO验证
* 8、演示您的项目并录制成视频上传
详见附件
设计图

BOM


评论