#申请原创# @21小跑堂
年纪大了容易健忘,经常将锅子烧干,于是想买一个定时器,但一直找不到合适的,由此萌发念头自己动手做一个。可是光做一个定时器也不合适,于是便添加了计时、语音报时、闹铃及温湿度检测等功能,构成了一个多功能的语音时钟。 本时钟采用LCD19264点阵屏幕,解决了普通时钟的数码管无法显示中文的缺点,同时中文提示使用起来会有更好的体验,尤其方便操作。另外由于使用了单片机作主控,就可以采用普通的DS1307日历芯片和晶振,通过单片机定时来修正走时误差,达到高精度计时的目的。通过使用JQ8400语音模块实现了语音报时的功能,加上DHT11温湿度采集模块,实现了显示和播报当前温湿度的功能。本制作使用了100*60*25的塑料盒做外壳,如下图:
时钟使用的单片机型号为PIC18F16Q60,选用LCD192*64显示屏和JQ8400语音模块,内部使用了DS1307日历芯片、AT24C32EEPROM芯片、TP4506锂电池管理芯片,以及DHT11温湿度传感器、VS838红外接收管等元件,电路图如下:
本时钟的主要特点如下: 1、以大字体轮流显示年份、月日周、时分秒以及当前湿度和温度,每秒切换一次; 2、在正常模式下点按任意键,会轮流语音播放当前的时间(时分)、当前的温度和湿度数据、当前的日期(年月日及星期),即点按一下播放一项内容,再点按一下就播放下一项内容,依此类推; 3、可以自行设定语音报时的开始时间和结束时间,以免休息时被语音报时惊扰; 4、可以随意设定休息日、工作日或每日报时,同时报时频率还可设定成每刻钟报时、半小时报时或者每小时报时,以适应各自的喜好; 5、采用东方红乐曲作为报时的引导乐,每小时报时时奏全曲,半小时和每刻报时时仅奏前两句乐谱; 6、可以自行设定语音播报的音量,在自动报时的时间段内为正常音量,在此时间段之外为低音量,以防语音播报影响休息; 7、智能根据季节变化调节报时的起止时间,2、3、4、9、10月份按用户设定的时间段内报时。6、7、8三个月为夏季,开始时间提前半个小时,结束时间推迟半个小时。11、12、1、2四个月为冬季,开始时间推迟半个小时,结束时间提前半个小时。人性化的设计让语音报时更具实用性; 8、具有按秒定时或按分定时的功能,最大定时时间为65535秒,折合18.2小时,可以满足实际使用的需要,若需要更长时间的定时可换用闹铃解决。定时可以中途暂停或恢复,定时时间到(倒计时为零)之后会有语音和音乐提示,并继续正计时。同时每隔3分钟左右会语音提示一次,直到用户退出定时模式; 9、具有计时功能,进入计时模式后便开始自动计时,计时最长可达18个多小时,计时过程中也可暂停计时,还可以继续计时; 10、可以自行设定三个单独的闹铃,闹铃可设置为一次性闹铃、每天闹铃、工作日闹铃或休息日闹铃。闹铃时间到会有语音和音乐提示,还可以设置成单次提示或重复提示,重复提示可设置为不超过三次,每隔约3分钟左右会重复闹铃; 11、具有调整快慢功能,每天1时10分单片机会自动纠正时钟模块的走时误差,这个误差是根据所使用的DS1307芯片及晶掁实测的数据在程序中自动调整。同时每周一的1时10分还会进行一次用户设置的走时误差调整,这个需要用户自行计算调整时间并进行设置,设置的数据保存在AT24C32芯片中; 12、线路设置有VS383红外接收管,可以通过普通的红外遥控器来中断播放中的乐曲; 13、时钟使用一颗18650锂电池作为电源,通过AT4506芯片管理锂电池的充电,当锂电池电压低于3.7v时会发出语音提示,要求用户及时充电。当充满电之后又会语音提示拔出充电线。本时钟没有设计锂电池放电保护线路,不会在低电压时切断锂电池电源,长期不用时需要取出锂电池,防止过放电损坏锂电池。 下图为实物照片,右上角是红外接收管和双色LED,工作时绿色LED每秒钟闪烁一次,语音播放时红色LED会亮起。
面板上有两个按键,分别是功能键和调整键,每个按键有点按、正常按键和长按键三种操作模式:点按是按下后立即松开;正常按键是按到底之后稍等才松开,可以通过数数的方式确定,按下时数1,数2时立即松开;长按键是按下时数1,数到3时才松开。 功能键是选择工作模式用的,点按时在本模式的细分项目中循环,正常按键则在各个模式中循环,长按键则返回基本模式。 调整键是修改数值用的,点按为微调(加1或减1),正常按键为粗调(加5或减5),长按键则改变调整方向(加或减)。 下图为面板及屏幕显示介绍:
下图为内部结构,LCD显示屏以及JQ8400语音模块是通过排针连接在PCB板上,其他元件则直接焊接在PCB板上,整体结构紧凑。
这是机芯的照片:
机内使用了直径约28.5mm的小喇叭,在机壳背面有出音孔(参见下图),在机盒的共鸣下声音清晰明亮,有不错的体验效果。
下面是部分显示界面:
这是项目的源码: |
@21小跑堂 :受芯片引脚限制,锂电池低电压保护线路没有设置,下一步打算进一步优化线路,看能不能加上电池低电压自动切断电源。优化软件,进一步减低能耗,让锂电池的工作时间更长久些。
小小的PIC18F16Q40单片机竟可以实现如此多的功能,让人大开眼界。设计虽然看起来简单,但是软件实现的功能却很丰富。将MCU的功能完全释放,很优秀的设计。该文仅有源码和硬件设计电路,若相应增加代码解读,可获得更高打赏。