前言:
一直想做一个万年历,手头也剩余不少电子元件搁置着,两片LCD5510裸屏、28脚的STC12C5410AD……这次正好趁着大赛开工清仓。
为了提高实用性,将遥控插座也加上,附带:温控开关、时间预约开关、倒计时开、倒计时关、循环开关功能。
做的过程中问题不少:
没足够的原料热转印PCB了,只好用洞洞板,换说洞洞板元件的排布真不好玩,手段用尽还是跳线多多;
LCD5510裸屏也是用洞洞板接的,太挑战人了;
最关键的是STC12C5410AD竟然不支持 预先/同步 烧写EEPROM,麻烦啊!无奈只好加个程序在初始化时通过与另一单片机串口通信将数据导入EEPROM……
作品:多功能万年历遥控插座(集合:温控、预约、倒计时、循环开关)
尺寸:长:10cm,宽:6cm,高:2.3cm
静态功耗:约 6.4V 20mA 【6.4V×20mA = 0.128W 】
静态耗电:1度电 / 325天 【1000Wh ÷ (0.128W×24h) ≈ 325天 】
简介:使用NEC编码型红外遥控器,双插座(继电器(10A)、可控硅(4A)),主要功能有:
①【万年历】
包含:年、月、日、星期、时、分、秒、节日、农历、节气、甲子年、生肖、温度、闹铃。
闹铃3组,每组闹铃:有6首音乐可选,可设置 单次/每天。
②【倒计时开、倒计时关】
继电器、可控硅 均支持 倒计时开 与 倒计时关,范围:
00小时00分 ~ 99小时59分
③【循环开关】
可控硅循环开关,循环范围:
开:01秒 ~ 99秒
关:01秒 ~ 99秒
④【温控开关】
继电器1级温控,可控硅有2级温控:
b℃ <= 温度 :一直打开
a℃ <= 温度 < b℃ :循环开关
⑤【预约开关】
继电器、可控硅 均有A、B组预约开关,
每组预约开关包含: xx:xx 开、 xx:xx 关
( “--:--” 表示不设置 )
⑥【温度曲线图】
今天、昨天、前天的温度变化情况,包含:
最低 / 最高温度;
24小时温度变化曲线图;
⑦【小夜灯】
⑧【红外线遥控器NEC解码】
》》》》》》》》 界面介绍 《《《《《《《《
主层0:子层0:时间(年、月、日、星期、时、分、秒、农历、节气、节日、温度)
子层1:闹铃1组
子层2:闹铃2组
子层3:闹铃3组
子层4:红外线遥控器NEC解码
子层5:甲子年生肖节气
主层1:子层0:继电器、可控硅倒计时开/关
子层1:可控硅循环开关(开:1~100秒,关:1~100秒)
子层2:继电器1级温控,可控硅2级温控
主层2:子层0:继电器预约开/关 A、B组
子层1:可控硅预约开/关 A、B组
主层3:子层0:最低/高温度(今天、昨天、前天)
子层1:24小时温度曲线(今天)
子层2:24小时温度曲线(昨天)
子层3:24小时温度曲线(前天)
》》》》》》》》 按键说明 《《《《《《《《
【 非设置状态 】
A键: 单击:子层切换
双击:主层切换
长按:设置/保存
B键: 单击:打开/关闭 小夜灯
双击:打开/关闭 继电器
长按:打开/关闭 可控硅
【 设置状态 】
A键: 单击:设置项前移
双击:设置项后移
长按:设置/保存
B键: 单击:个位 加
双击:十位 加
长按:清除
》》》》》》》》 遥控说明 《《《《《《《《
【 非设置状态 】
IRK0键: 短按:子层切换
长按:设置/保存
IRK1键: 短按:主层切换
长按:返回首页
IRK2键: 短按:可控硅循环开时间+1秒
长按:打开/关闭可控硅循环
IRK3键: 短按:可控硅循环关时间+1秒
长按:打开/关闭 小夜灯
IRK4键: 短按:打开继电器,倒计时关+30分钟
长按:打开/关闭 继电器
IRK5键: 短按:打开可控硅,倒计时关+30分钟
长按:打开/关闭 可控硅
【 设置状态 】
IRK0键: 短按:设置项前移
长按:设置/保存
IRK1键: 短按:设置项后移
长按:
IRK2键: 短按:个位 加
长按:清除
IRK3键: 短按:十位 加
长按:清除
》》》》》》》 IO口占用情况 《《《《《《《
A、B按键+ A、B指示灯: 2
显示LCD3310: 4
时钟DS1302: 3
温度DS18B20: 1
红外线接收: 1
喇叭(140Ω): 2
可控硅Z0409(600V4A):1
继电器(12V10A): 2
起先是想用开关电源做电源的,方便,而且整个作品的电路会简单很多,但考虑到 静态功耗 和 体积 的因素放弃了,最终选择阻容降压方式供电方式,以下是多功能万年历遥控插座分别用 开关电源、阻容降压 供电时的静态功耗对比。
使用开关电源供电时的静态功耗:
使用阻容降压供电时的静态功耗:
用小电钻开槽塑料壳
LCD5510裸屏+洞洞板,导电胶的那几根线真不好接
主电路
因为用的是洞洞板,火线、零线的主要部分要开槽、挂焊盘提高绝缘效果
弄了一个开机图片,开机音乐《两只蝴蝶》
主界面
其它界面