电路为BUCK型,所有LED串电阻后并联。 LED为5730的暖白与白色两种,暖白6只,白色的4只。 电位器调节LED亮度,电位器的ADC值直接赋予PWM的比较值。 逆时针旋到底为关机状态,此时单片机工作于掉电模式,用 掉电唤醒专用定时器唤醒,电流约5uA。 电位器顺时针旋转一定角度后,单片机工作于空闲模式,由T0定时 唤醒,单片机电流约3.7mA。 由于国LED比较刺眼,最后在LED上蒙了两层卫生纸,用封口胶给粘上的。 灯与底座之间采用USB接口连接,这样的好处是灯可以插到USB充电 器上单独使用。 while(1) { POT_L;//使能电位器 delayus(1); v=adc_read8(2); //CCAP1H=v; POT_H;//关闭电位器 if((v<10)&&(CCAP1H<11))//关机 { CCAP1H=0; CCAPM1=0;//关PWM n++; if(n>=5)//每5秒闪一次,便于夜间寻找 { n=0; IOCLR(P1,BIT(0)); IOSET(P1,BIT(0)); } PCON=0X02;//掉电 _nop_(); _nop_(); } else//不关机 { CCAP1H=((U16)CCAP1H*9+v)/10;//亮度渐变 CCAPM1=BIT(6)|BIT(1); PCON=0x01;//空闲 _nop_(); _nop_(); } } ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() -------------------------- 上面是早期做的,下面的图文是最近的更新PCB,因为原PCB中LED模块敷铜距离太近。 程序中原PWM时钟为FOSC/2,PWM频率约22KHz,现已将PWM时钟 改为FOSC,PWM频率约43KHz。 电路中增加AP5056充电芯片,USB输出增加1uf电容,如无此电容,电流会有较大锯齿。 ![]() ![]() ![]() C7=1uf时,输出串1欧取样电阻测得的波形: ![]() C7=10uf时,输出串1欧取样电阻测得的波形: ![]() |
使用STC单片机STC15W408AS制作的一个LED小台灯
![](http://uphotos.eepw.com.cn/1561517479/thumb/avatar.jpg)
关键词: STC15W408AS 台灯 DIY
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |