发新帖我要提问
12
返回列表
打印
[技术问答]

M0516 PWM驱动LED问题!抖动微亮~

[复制链接]
楼主: 小S咯
手机看帖
扫描二维码
随时随地手机跟帖
21
小S咯|  楼主 | 2019-3-4 15:33 | 只看该作者 回帖奖励 |倒序浏览
小S咯 发表于 2019-3-4 14:28
好的,我试试不要20%以下的

这个跳动太大了。

使用特权

评论回复
22
小S咯|  楼主 | 2019-3-4 15:34 | 只看该作者
xiaofei558008 发表于 2019-3-4 15:23
增加PWM频率,呼吸增加sin函数的点数。需要我帮你吗?

我没有用到三角函数

使用特权

评论回复
23
eydj2008| | 2019-3-4 16:54 | 只看该作者
最基本的频率1KHZ以上,  细分数太少 或者叫分辨率太少
要么就是程序有BUG了

使用特权

评论回复
24
天灵灵地灵灵| | 2019-3-4 16:56 | 只看该作者
楼上说的对,一般都是频率采用1K或者2K,5k

使用特权

评论回复
25
henangongda123| | 2019-3-5 08:41 | 只看该作者
你是多大的功率的呼吸灯?多少颗LED,没颗多大功率?

使用特权

评论回复
26
henangongda123| | 2019-3-5 09:02 | 只看该作者
我上面说的20%那是大功率的调光LED灯出现的问题,一般都是25W、36W室内照明筒灯、面板灯遇到的问题,你要是小制作,推荐你用积聚科技的IC,小功率恒流驱动调光,用在显示屏上,功率小,调光线性度比较好,我以前用过,比如MBI5026。

使用特权

评论回复
27
小S咯|  楼主 | 2019-3-5 10:13 | 只看该作者
henangongda123 发表于 2019-3-5 09:02
我上面说的20%那是大功率的调光LED灯出现的问题,一般都是25W、36W室内照明筒灯、面板灯遇到的问题,你要是 ...

4合1的灯珠,没有那么大的功率

使用特权

评论回复
28
henangongda123| | 2019-3-5 10:15 | 只看该作者
小S咯 发表于 2019-3-5 10:13
4合1的灯珠,没有那么大的功率

4合一的单颗功率1W?1W的话功率不小了,我说的MBI的那芯片是驱动60mA以下的2835啊、3528啊等等0.2W以下的LED灯。

使用特权

评论回复
29
小S咯|  楼主 | 2019-3-5 11:05 | 只看该作者
henangongda123 发表于 2019-3-5 10:15
4合一的单颗功率1W?1W的话功率不小了,我说的MBI的那芯片是驱动60mA以下的2835啊、3528啊等等0.2W以下的 ...

那就不是了,

使用特权

评论回复
30
小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);
}


使用特权

评论回复
31
antusheng| | 2019-3-5 12:41 | 只看该作者
芯片本身肯定是没有BUG的。

使用特权

评论回复
32
eydj2008| | 2019-3-5 13:51 | 只看该作者
小S咯 发表于 2019-3-5 11:15
我分辨率4095,频率1.5KHZ,低亮度还是抖,下面是我循环呼吸的代码,都这么用,应该不会是BUG吧。void fa ...

你这定时中断  设置的多长时间,  什么优先级别?

使用特权

评论回复
33
eydj2008| | 2019-3-5 13:51 | 只看该作者
小S咯 发表于 2019-3-5 11:15
我分辨率4095,频率1.5KHZ,低亮度还是抖,下面是我循环呼吸的代码,都这么用,应该不会是BUG吧。void fa ...

----------------------

使用特权

评论回复
34
小S咯|  楼主 | 2019-3-5 14:07 | 只看该作者
eydj2008 发表于 2019-3-5 13:51
----------------------

fade函数在while里执行的,只有fade_speed_count是定时器中断自加的,10ms自加一次

使用特权

评论回复
35
jarye| | 2019-3-5 15:27 | 只看该作者
小S咯 发表于 2019-3-4 14:28
电压是24V的,然后跟你说的一样,恒压用MOS管驱动

贴张电路出来,具体分析下,我做DMX控制用16位控制器驱动做渐变每个档都很平滑 驱动多大功率的灯具

使用特权

评论回复
36
小S咯|  楼主 | 2019-3-5 15:30 | 只看该作者
jarye 发表于 2019-3-5 15:27
贴张电路出来,具体分析下,我做DMX控制用16位控制器驱动做渐变每个档都很平滑 驱动多大功率的灯具 ...

我是写软件的,没有电路图唉。。。

使用特权

评论回复
37
小S咯|  楼主 | 2019-5-8 11:50 | 只看该作者

使用特权

评论回复
38
xuanhuanzi| | 2019-5-8 22:46 | 只看该作者
17楼有道理。

使用特权

评论回复
39
xuanhuanzi| | 2019-5-8 22:46 | 只看该作者
或者找个官方的PWM例子跑个看看。

使用特权

评论回复
40
小S咯|  楼主 | 2019-5-9 08:09 | 只看该作者
xuanhuanzi 发表于 2019-5-8 22:46
或者找个官方的PWM例子跑个看看。

好的。。。。。。。。。。。。。。。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则