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

[复制链接]
2942|39
 楼主| 小S咯 发表于 2019-3-4 15:33 | 显示全部楼层
小S咯 发表于 2019-3-4 14:28
好的,我试试不要20%以下的

这个跳动太大了。
 楼主| 小S咯 发表于 2019-3-4 15:34 | 显示全部楼层
xiaofei558008 发表于 2019-3-4 15:23
增加PWM频率,呼吸增加sin函数的点数。需要我帮你吗?

我没有用到三角函数
eydj2008 发表于 2019-3-4 16:54 | 显示全部楼层
最基本的频率1KHZ以上,  细分数太少 或者叫分辨率太少
要么就是程序有BUG了
天灵灵地灵灵 发表于 2019-3-4 16:56 | 显示全部楼层
楼上说的对,一般都是频率采用1K或者2K,5k
henangongda123 发表于 2019-3-5 08:41 | 显示全部楼层
你是多大的功率的呼吸灯?多少颗LED,没颗多大功率?
henangongda123 发表于 2019-3-5 09:02 | 显示全部楼层
我上面说的20%那是大功率的调光LED灯出现的问题,一般都是25W、36W室内照明筒灯、面板灯遇到的问题,你要是小制作,推荐你用积聚科技的IC,小功率恒流驱动调光,用在显示屏上,功率小,调光线性度比较好,我以前用过,比如MBI5026。
 楼主| 小S咯 发表于 2019-3-5 10:13 | 显示全部楼层
henangongda123 发表于 2019-3-5 09:02
我上面说的20%那是大功率的调光LED灯出现的问题,一般都是25W、36W室内照明筒灯、面板灯遇到的问题,你要是 ...

4合1的灯珠,没有那么大的功率
henangongda123 发表于 2019-3-5 10:15 | 显示全部楼层
小S咯 发表于 2019-3-5 10:13
4合1的灯珠,没有那么大的功率

4合一的单颗功率1W?1W的话功率不小了,我说的MBI的那芯片是驱动60mA以下的2835啊、3528啊等等0.2W以下的LED灯。
 楼主| 小S咯 发表于 2019-3-5 11:05 | 显示全部楼层
henangongda123 发表于 2019-3-5 10:15
4合一的单颗功率1W?1W的话功率不小了,我说的MBI的那芯片是驱动60mA以下的2835啊、3528啊等等0.2W以下的 ...

那就不是了,
 楼主| 小S咯 发表于 2019-3-5 11:15 | 显示全部楼层
eydj2008 发表于 2019-3-4 16:54
最基本的频率1KHZ以上,  细分数太少 或者叫分辨率太少
要么就是程序有BUG了 ...

我分辨率4095,频率1.5KHZ,低亮度还是抖,下面是我循环呼吸的代码,都这么用,应该不会是BUG吧。void fade(u8 speed)
{
  static u8 sta=1;
  static  u32 r_temp=0,g_temp=0,b_temp=0,w_temp=0;

  if(fade_speed_count>=speed)
  {
    fade_speed_count=0;
    switch(sta)
    {
      case 1:
        g_temp+=1;
        if(g_temp>=4095)
        {
          g_temp=4095;         
          sta=2;
        }
        break;
      case 2:
        g_temp-=1;
        b_temp+=1;
        if(g_temp<=1)
        {
          g_temp=0;
          b_temp=4095;      
          sta=3;
        }
        break;
      case 3:
        b_temp-=1;
        w_temp+=1;
        if(b_temp<=1)
        {
          b_temp=0;
          w_temp=4095;      
          sta=4;
        }
        break;
      case 4:
        w_temp-=1;
        g_temp+=1;
        if(w_temp<=1)
        {
          w_temp=0;
          g_temp=4095;        
          sta=2;
        }
        break;
      }
    }
    r=r_temp;g=g_temp;b=b_temp;w=w_temp;
    PWM_CMR_Set_fade(r,g,b,w);
}


antusheng 发表于 2019-3-5 12:41 | 显示全部楼层
芯片本身肯定是没有BUG的。
eydj2008 发表于 2019-3-5 13:51 | 显示全部楼层
小S咯 发表于 2019-3-5 11:15
我分辨率4095,频率1.5KHZ,低亮度还是抖,下面是我循环呼吸的代码,都这么用,应该不会是BUG吧。void fa ...

你这定时中断  设置的多长时间,  什么优先级别?
eydj2008 发表于 2019-3-5 13:51 | 显示全部楼层
小S咯 发表于 2019-3-5 11:15
我分辨率4095,频率1.5KHZ,低亮度还是抖,下面是我循环呼吸的代码,都这么用,应该不会是BUG吧。void fa ...

----------------------
 楼主| 小S咯 发表于 2019-3-5 14:07 | 显示全部楼层
eydj2008 发表于 2019-3-5 13:51
----------------------

fade函数在while里执行的,只有fade_speed_count是定时器中断自加的,10ms自加一次
jarye 发表于 2019-3-5 15:27 | 显示全部楼层
小S咯 发表于 2019-3-4 14:28
电压是24V的,然后跟你说的一样,恒压用MOS管驱动

贴张电路出来,具体分析下,我做DMX控制用16位控制器驱动做渐变每个档都很平滑 驱动多大功率的灯具
 楼主| 小S咯 发表于 2019-3-5 15:30 | 显示全部楼层
jarye 发表于 2019-3-5 15:27
贴张电路出来,具体分析下,我做DMX控制用16位控制器驱动做渐变每个档都很平滑 驱动多大功率的灯具 ...

我是写软件的,没有电路图唉。。。
 楼主| 小S咯 发表于 2019-5-8 11:50 | 显示全部楼层
xuanhuanzi 发表于 2019-5-8 22:46 | 显示全部楼层
17楼有道理。
xuanhuanzi 发表于 2019-5-8 22:46 | 显示全部楼层
或者找个官方的PWM例子跑个看看。
 楼主| 小S咯 发表于 2019-5-9 08:09 | 显示全部楼层
xuanhuanzi 发表于 2019-5-8 22:46
或者找个官方的PWM例子跑个看看。

好的。。。。。。。。。。。。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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