悍5D 发表于 2011-8-7 10:57

建议在“实践与DIY讨论区”增加“手电驱动电路DIY”

把电路开源,把程序开源,会很火爆的。

kgje 发表于 2011-8-7 13:00

估计没人愿意。

kgje 发表于 2011-8-7 13:02

目前市面上流行的驱动电路,我一个都没找到过。
倒是自己闲时无聊,把手上的电筒区动电路描过1个。
但是没有MCU的程序,光有电路图也没用。

朱可夫斯基 发表于 2011-8-7 13:58

多少人支持呢

悍5D 发表于 2011-8-7 14:22

我就纳闷了,研究充电器的人比研究LED驱动的人少,研究手电驱动的人就更少,导致LED出来,驱动还没有。。。。。
市场需求也不小啊,咋就这样呢?

kgje 发表于 2011-8-7 15:23

好像研究充电器的人不少吧。特别是各种锂电充电器DIY、改造的人很多。

senml 发表于 2011-8-7 17:40

led驱动就是一恒流电源,电路设计本身并不是很难,难在成本控制,MCU编程还有就是排版上。而且即使开源,对于个人来说没什么帮助,因为你照着提供的电路搞出来板子成本太高,还不如商家的便宜。倒是便宜了抄板的了,直接拿来就用。到那时,优秀的电路设计者根本就没有回报,除非他有极高的热情,否则根本不利于led驱动的发展。

senml 发表于 2011-8-7 17:46

我就纳闷了,研究充电器的人比研究LED驱动的人少,研究手电驱动的人就更少,导致LED出来,驱动还没有。。。。。
市场需求也不小啊,咋就这样呢?
悍5D 发表于 2011-8-7 14:22 http://www.shoudian.org/images/common/back.gif另外,你所说的led出来了,对应手电驱动没出来,怕是说的sst系列吧。这也不能怪研发,想想看,就手电那点体积,手电驱动板那点尺寸,很难设计出大电流的驱动板的。打个比方说,3*XML=30W的驱动只是在LD-29的基础上略作修改就出来了。但是SST50 的5A驱动由于输出电流太大,就要更大的元件,就很难在20?mm的电路板上设计出来,跟别说90高达9A的变态要求了。如果不用在手电上,这些大电流led的驱动很好找,一个大电流恒流源就满足了。

悍5D 发表于 2011-8-7 18:07

我是想说,为什么没有条件DIY驱动?因为根本找不到这方面的技术资料

senml 发表于 2011-8-7 19:17

我是想说,为什么没有条件DIY驱动?因为根本找不到这方面的技术资料
悍5D 发表于 2011-8-7 18:07 http://www.shoudian.org/images/common/back.gif知道为什吗?你去找恒流源设计电路就行了,没必要限定led驱动,led恒流驱动只是恒流电源的一种罢了。手电led恒流驱动难在成本控制和排版上,对于MCU个人设计,完全没必要上的。

悍5D 发表于 2011-8-7 19:21

找到了N年前东城的资料,原来是通过占空比来实现的。
无极调光试验程序
    单片机采用PIC12F683,这个单片机内部有硬件CCP单元,可以配置成PWM模式。为什么要用这个单片机,而不用别的型号,一来对PIC比较熟悉,二来买的到且不算贵。
    12F683跟12F628一样,有SO-8封装的帖片,体积一样。设计IC的2、3脚分别对地接一个开关,2脚开关按下后,占空比增加,3脚开关按下后占空比减小。开机后初始值大概50%,PWM频率大概15.6KHz。PWM脉冲从IC的5脚输出。12F683的资料也是不多,仅有Datasheet可以参考,经过反复测试,终于用下面代码调试成功:
;----------------------------------------------------------
BSF STATUS,RP0
MOVLW 07H
MOVWF OPTION_REG ;允许上拉
MOVLW 30H
MOVWF WPU;设置GP4、GP5弱上拉
MOVWF IOC;设置GP4、GP5允许端口电平变化中断
BSF INTCON,GPIE
;----------------------------------------------------------
BCF STATUS,RP0
MOVLW 07H
MOVWF CMCON0;关闭比较器
;**********************************************************************
BSF STATUS,RP0
CLRF ANSEL;清除模拟选择寄存器
MOVLW 3FH
MOVWF PR2;设置PR2,PWM周期,默认4M振荡输出PWM频率约15.6KHz
;----------------------------------------------------------
BCF STATUS,RP0
MOVLW 1FH
MOVWF CCPR1L;设置占空比初值
;----------------------------------------------------------
BSF STATUS,RP0
MOVLW 0F8H
MOVWF TRISIO;设置GP2输出
;----------------------------------------------------------
BCF STATUS,RP0
CLRF T2CON
BSF T2CON,TMR2ON ;设置T2CON使能,预分频比1
;----------------------------------------------------------
MOVLW 0FH
MOVWF CCP1CON;设置CCP模块为PWM模式
;----------------------------------------------------------
BSF INTCON,GIE;开启全局中断
LOOP GOTO LOOP
;**********************************************************************
GPINT BCF STATUS,RP0
BCF INTCON,GPIF;清中断标志
BCF INTCON,GPIE;关闭端口电平变化中断
BTFSC GPIO,04H
GOTO PR5
CALL DELAY30MS
BTFSC GPIO,04H
GOTO PR5
INCCCP MOVF CCPR1L,W
XORLW 3FH
BTFSC STATUS,Z
GOTO RETGPINT
INCF CCPR1L,F
BTFSC GPIO,04H
GOTO RETGPINT
CALL DELAY166MS
GOTO INCCCP ;GP4上的开关按下后占空比减小,如果持续按住不放,则占空比连续减小
;----------------------------------------------------------
PR5
BTFSC GPIO,05H
GOTO RETGPINT
CALL DELAY30MS
BTFSC GPIO,05H
GOTO RETGPINT
DECCCP MOVF CCPR1L,F
BTFSC STATUS,Z
GOTO RETGPINT
DECF CCPR1L,F
BTFSC GPIO,05H
GOTO RETGPINT
CALL DELAY166MS
GOTO DECCCP ;GP5上的开关按下后占空比增加,如果持续按住不放,则占空比连续增加
;----------------------------------------------------------
RETGPINT
BSF INTCON,GPIE;打开端口电平变化中断
RETFIE   ;中断返回
;**********************************************************************
    其中红色的部分是必须加的,开始不知道,程序总是调不出来。反复读Datasheet后才知道,必须关闭AD模块和比较器模块,否则GP4、GP5就不能正常使用。
    这个程序占空比变化只有63级,不过实际感觉也就是无极了。当然,程序再修改修改可以做到256级,这个试验程序只是改变CCPR1L寄存器的值,占空比低2位保存在CCP1CON的4、5位,程序没有处理这两位,都置零了。
    下一步就要把CCPR1L保存到EEPROM中,实现记忆功能,再把更多功能做进去,就可以达到实用了。无极调光不是什么高技术,通过这个例程可以揭示出来了。:lol :lol :lol

悍5D 发表于 2011-8-7 19:24

振荡频率20M时,PR2取3FH,预分频比为1时,PWM频率大概是78.12K,那么如果频率采用内部RC的4M时,就是15.624K了,我实测是15.6K,误差不大。这个频率也不存在频闪,音频噪音也很轻微了。当然,12F683还能通过指令设置内部RC频率为8M,那么PWM频率就可以达到30K了。频率再高的话,我看可以取消DC-DC部分的PWM IC了,呵呵。当然,精度不怎么高。不过对付一般用途应该也能凑合吧,近期有进展会继续发消息。

----------------------------------------------------------
BSF STATUS,RP0
BSF OSCCON,IRCF0 ;设置频率为8MHz
MOVLW 07H
MOVWF OPTION_REG ;允许上拉
MOVLW 30H
MOVWF WPU;设置GP4、GP5弱上拉
MOVWF IOC;设置GP4、GP5允许端口电平变化中断
BSF INTCON,GPIE
;----------------------------------------------------------
PWM频率15.6K耳朵还是多少可以听到点嘶叫声,改成31.2K就一点动静没有了。看看资料,只需加上BSF OSCCON,IRCF0就OK了。

senml 发表于 2011-8-7 20:06

开关电源的特性,利用占空比调节。

senml 发表于 2011-8-7 20:07

极光论坛(置顶商家 东成里面找网址)有一些设计思路,不过我没有认真研究。

senml 发表于 2011-8-7 20:08

一不小心中尉了{:1_244:}
页: [1]
查看完整版本: 建议在“实践与DIY讨论区”增加“手电驱动电路DIY”