单片机利用pwm对大功率led灯调光是出现闪烁是什么原因

1、使用pwm频率绝对大于100Hz。(下图附上pwm程序)
2、单片机输出管脚通过uln2003控制恒流源通断。
3、使用300mA恒流源驱动3×1W的led。

希望高手解答!

第1个回答  推荐于2020-01-20
1、软件问题,用示波器看看频率是否足够高。
2、硬件问题,用示波器看看是否LED功率太大引起的电源电压波动导致的MCU工作不稳定。
第2个回答  2014-04-17
你让两个循环的值只和等于100再试试.
比如一个80,另一个20.追问

你好,num++等于100才清零,以上程序的两个循环的值之和本来就等于100

追答

哦,不好意思,你中间没清零...看走眼了,hoho~~
你恒流源的反应速度是否够快?
建议你用PWM驱动个MOS管或者三极管,然后直接用个开关电源来经过这个MOS管控制LED试试先.

追问

嗯,好的,我正想这样试试看呢。

追答

祝你成功!

本回答被提问者采纳
第3个回答  2014-04-17
看上去,闪烁是由于你的高低电平跳转频率过快。你把第二个for的100改成500应该会好很多
相似回答