[技术问答] M0516 PWM驱动LED问题!抖动微亮~

[复制链接]
2942|39
 楼主| 小S咯 发表于 2019-3-2 11:56 | 显示全部楼层 |阅读模式
本帖最后由 小S咯 于 2019-5-8 11:50 编辑

我用M0516的IC,4路PWM,用SQ9910驱动MOS管,控制LED等,在交错呼吸的时候,特别说低亮度,会抖动,请问这是什么原因呢???PWM占空比为0时,LED微亮,示波器看,有很细的高电平,并不完全为低电平,下面是PWM初始化代码
void PWM_Init(void)
{
  GPIO_SetMode(P2,BIT4,GPIO_PMD_OUTPUT);//PWM4
  GPIO_SetMode(P2,BIT5,GPIO_PMD_OUTPUT);//PWM5
  GPIO_SetMode(P2,BIT6,GPIO_PMD_OUTPUT);//PWM6
  GPIO_SetMode(P2,BIT7,GPIO_PMD_OUTPUT);//PWM7

  PWMB->PPR = 0x00000101;
  PWMB->CSR = 0x00004444;
  PWMB->PCR = 0x08080808;
  PWMB->CNR0 = PWMB->CNR1 = PWMB->CNR2 = PWMB->CNR3 = 25500;
  PWMB->CMR0 = PWMB->CMR1 = PWMB->CMR2 = PWMB->CMR3 = 0;                               //??PWM0~3??
  PWMB->POE  = 0XF;
  PWM_Start(PWMB,0XF);
}

用的是P24_PWM4,P25_PWM5,P26_PWM6,P27_PWM7;
二九结狐六体 发表于 2019-3-2 12:42 | 显示全部楼层
帮你顶住啊!
zhuomuniao110 发表于 2019-3-2 13:22 | 显示全部楼层
PWM的频率如何?
antusheng 发表于 2019-3-2 22:17 | 显示全部楼层
设置的频率多少
antusheng 发表于 2019-3-3 10:27 | 显示全部楼层
是抖动还是黑了?
tianxj01 发表于 2019-3-3 10:51 | 显示全部楼层
采用SQ9910,很明显,你这里,单片机的PWM只是9910的控制端,其实就是根据PWM占空比,输出成组的高频调制LED驱动信号,而低亮度,抖动,一般来说,就是你的PWM控制信号频率太低,造成低亮度人眼有明显闪烁感,建议在允许范围,尽可能提高单片机控制的PWM频率,比如1KHz。而不是100Hz
 楼主| 小S咯 发表于 2019-3-4 08:17 | 显示全部楼层

频率从低到高都有试过,从几百到几K
 楼主| 小S咯 发表于 2019-3-4 08:17 | 显示全部楼层

频率从低到高都有试过,从几百到几K
 楼主| 小S咯 发表于 2019-3-4 08:18 | 显示全部楼层
antusheng 发表于 2019-3-3 10:27
是抖动还是黑了?

抖动,就是感觉没那么平滑。
 楼主| 小S咯 发表于 2019-3-4 08:19 | 显示全部楼层
antusheng 发表于 2019-3-3 10:27
是抖动还是黑了?

抖动,就是感觉没那么平滑。
 楼主| 小S咯 发表于 2019-3-4 08:21 | 显示全部楼层
tianxj01 发表于 2019-3-3 10:51
采用SQ9910,很明显,你这里,单片机的PWM只是9910的控制端,其实就是根据PWM占空比,输出成组的高频调制LE ...

刚开始我也是这么想的,我提高挺多的,还是有和频率低一样有抖动,而且SQ9910的数据手册说输入50HZ到1KHZ的PWM信号,我试过200HZ,300HZ,也试过几K,都是一样的
yiyigirl2014 发表于 2019-3-4 08:27 | 显示全部楼层
看到上面的百度云连接,想起来我的好多资料没了。
jarye 发表于 2019-3-4 11:07 来自手机 | 显示全部楼层
用16位PWM占空比
 楼主| 小S咯 发表于 2019-3-4 11:09 | 显示全部楼层
jarye 发表于 2019-3-4 11:07
用16位PWM占空比

是16位的PWM
jarye 发表于 2019-3-4 11:20 来自手机 | 显示全部楼层
小S咯 发表于 2019-3-4 11:09
是16位的PWM

看了下驱动IC的规格书,估计是硬件原因,要在这方面着手调试,很多IC在低占空的时候会抖动,低压驱动建议用明微的一款支持16位PWM驱动Ic,具体型号忘记了,或者做恒压后用mos管线性驱动,这样电压要拿的准,不然容易损坏灯珠
Luka123 发表于 2019-3-4 12:05 | 显示全部楼层
加个三极管驱动电路就OK了
henangongda123 发表于 2019-3-4 12:37 | 显示全部楼层
LED不是线性元件,是恒压降模型,低占空比的时候LED驱动电压不够,LED亮度不稳定,这是PWM驱动LED的弊端,基本无解,除非你用复杂的模拟驱动电路去做,稍微好些。
行业里面一般是直接去掉10-20%以下的调光部分,就是说,调光部分只有20-100%,低于20%直接关断!
 楼主| 小S咯 发表于 2019-3-4 14:28 | 显示全部楼层
jarye 发表于 2019-3-4 11:20
看了下驱动IC的规格书,估计是硬件原因,要在这方面着手调试,很多IC在低占空的时候会抖动,低压驱动建议 ...

电压是24V的,然后跟你说的一样,恒压用MOS管驱动
 楼主| 小S咯 发表于 2019-3-4 14:28 | 显示全部楼层
henangongda123 发表于 2019-3-4 12:37
LED不是线性元件,是恒压降模型,低占空比的时候LED驱动电压不够,LED亮度不稳定,这是PWM驱动LED的弊端, ...

好的,我试试不要20%以下的
xiaofei558008 发表于 2019-3-4 15:23 | 显示全部楼层
本帖最后由 xiaofei558008 于 2019-3-4 15:25 编辑

增加PWM频率,呼吸增加sin函数的点数。需要我帮你吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

178

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部