主要实现功能台灯照明、日期时间显示、和环境温度检测,如下图:
电源部分由5V充电器供电,也可以用一节充电锂电池供电,充电IC采用的是IP5306可以一边给台灯供电,也可以给电池充电。
台灯通过触摸按键控制台灯的打开或关闭,冷、暖光,自然光的切换,长按触摸按键还可以调节灯光的亮度,采用的是PWM调光。
屏幕显示采用的是查理复用法控制LED灯模拟数码管,显示当前时间,和当前环境的温度。
时钟显示是使用单片机的外部低速定时器来模拟实现RTC时钟,由3个按键设置时间。温度检测采用的是NTC热敏电阻。通过ADC采集IO口的电压变化,经测量后可以计算出温度值,也可以通过一个IO检测多个按键动作。
低功耗管理定义了三个状态:
- 台灯关闭,显示也是关闭时,进入休眠模式(Stop);
- 台灯关闭,显示打开,进入空闲模式(IDLE);
- 当台灯打开,不管显示是否打开都是正常运行模式。
注:本次采用的CMS8S6990芯片有 3 种不同的工作模式:
- 正常工作模式:MCU 处于正常工作状态,外设正常运行。
- 空闲模式 IDLE:MCU 处于空闲模式,CPU 停止工作,外设正常运行。该模式可由任意中断唤醒。
- 休眠模式 STOP:MCU 处于休眠模式,CPU 停止工作,外设停止工作。该模式可由 INT0/1 中断唤醒、外部中断唤醒、 WUT 定时唤醒、LSE 定时唤醒。