DM634学习小结

本文禁止转载!

1、DM634是一款恒流驱动芯片,也就是说,可以通过这款芯片,恒定的输出电流。

这在某些应用中非常有用。比如LED电子显示屏。比如交通灯。比如室内播放视频的LED大屏幕。

DM634 芯片的管脚可以大致分为如下几类:

输入管脚: DAI   DCK  LAT       SOMODE/GCK

输出管脚 : DAO    SOMODE/GCK

输出管脚: OUT0~OUT15

电流控制管脚: REXT

具体的这几个管脚为什么这么分类,下面会介绍

2、DM634芯片内部数据流通图

 

 首先,数据从DAI管脚进入,这个数据按照bit一位一位的移入到DM634的寄存器中(16bit的 shift register ,也就是移位寄存器)。也就是说,在DCK的上升沿时,DAI的串行数据会被移入到移位寄存器中。

DM634一共有16个16bit的移位寄存器,也就是说,一共有256bit的。

具体的数据流动方向是从下往上流动的。

也就是说,数据从DAI进入---> 进入到移位寄存器---> 根据LAT管脚把数据从移位寄存器向上移动到Latch寄存器(锁存寄存器)---> 锁存寄存器的数据在向上移动到PWM产生单元---->数据经由PWM调制后向上送入到恒流驱动单元--->恒流驱动单元的数据再向上交由LED开路短路检测单元--->最终从OUT0~OUT15输出

3、解释:

3.1 数据从DAI进入移位寄存器,移动的过程中遵循下面的时序,即MSB先进:

 3.2 数据从DAO输出的时候,也遵循下面的实训:

 

其中,输出的标志位中,THF标志位用于标明DM634芯片是否正常工作(如是否温度过高)

E[0]~E[15]标志位用于标明接在OUT0~OUT15的16个LED是否正常工作(如判断LED是否开路,是否短路)

3.3 DAO输出和OUT0~OUT15输出有什么区别

DAO输出,编程的时候可以不用管。这个管脚的输出数据,主要用来根据输出数据中的THF标志位和E[0]~E[15]标志位用于判断芯片和LED是否正常工作的。如果默认芯片是正常工作的,如果默认周围的温度也不是过高或者过低,如果默认LED不会开路,也不会短路,那么DAO的输出可以不用判断。

OUT0~OUT15是用于输出恒定的电流值的。该恒定的电流值用于驱动LED。不同的数值代表不同的电流值,也就是LED的光强不一样。

3.4 DAI 输入的数据到底表示的是啥?

DAI输入的数据表示为PWM的占空比。这个PWM的占空比,直接会影响输出电流的大小,也就影响LED的亮度。0xFFFF表示占空比为100%,LED最亮。0x0000,表示占空比是0,LED会熄灭。

4、恒流驱动输出的电流受几方面的影响?

这个问题也可以转换为:DM634芯片输出的恒流电流的大小受几方面的控制?

4.1 受DAI 输入数据的占空比影响

如上面3.4所述,DAI是表示PWM的占空比,占空比越高,输出电流越高,占空比月底,输出电流越低。

4.2 受REXT影响

REXT管脚需要挂接一个电阻。该电阻值会影响输出电流的大小。这是硬件可调的输出电流的影响因素,其他的是软件可调的因素。

这是外接电阻和Iout输出电流的关系。M是个系数,这个系数如下

VRext的值是1.23V, 也就是说,如果外接一个2.2K欧的电阻,根据上面的公式,差不多算出来的电流是20mA。

这个20mA是在PWM占空比是100%的情况下,且GBC的值是95的情况下测量出来的经验值。

4.3 电流输出受GBC的值的影响

在上面4.2节中,提到,20mA的输出电流,是在PWM是100%的情况下,GBC=95的情况下,外接电阻为2.2K欧的时候测量出来的。

GBC是啥玩意?

GBC全程 :Global Brightness Control 。即全局明亮度控制

在本文的第二张图,DM634的芯片架构图里,标注了第4模块,就是GBC。

这个GBC的值是有7个bit来控制的,也就是说,GBC的值最高可以到达127,最低是0

软件商设置GBC的值需要遵循下面的时序

如果不会设置GBC的值,可以按照文末的方式联系我。

5、SOMODE/GCK 为啥即是输入管脚又是输出管脚

在本文前面,介绍了SOMODE/GCK 管脚,把它放在了输入管脚和输出管脚里面。

确切的说,SOMODE/GCK只能作为输入管脚。

默认情况下,DM634芯片一上电是工作在正常模式下,也叫做Free-Runing 模式,自由运行模式。

在这个自由运行模式下,SOMODE/GCK 管脚只作为SOMODE来用。

也就是说,当SOMODE为高电平的时候,DAO输出会在DCK下降沿输出

当SOMODE为低电平的时候,DAO在DCK的上升沿输出

也就是说,SOMODE其实是控制了DAO管脚的数据输出方式。

 软件上面也提供了一种方式,让Free_runing自由运行模式切换到GCK模式。

也就是说,当软件按照下面的时序进行设置后,SOMODE/GCK就切换到GCK模式,SOMODE就不再控制DAO的管脚输出方式了。

从GCK模式可以反向在切换回SOMODE(Free-Runing)模式,这时候软件需要遵循下面的时序

 

 如果不会在两种模式之间进行切换,可以使用文末的联系方式联系我

5.1 GCK是干嘛的?

GCK是提供外部的PWM信号的。

DM634芯片内部有个22MHz的内部晶振时钟。

22MHz的时钟源会提供一个18MHz的PWM信号,这个信号是内部的。

这个18MHz的PWM信号会提供一个最高275Hz刷新率的输出。也就是说,LED亮灭可以达到275HZ。也就是说,两秒内,LED可以熄灭275次,亮275次。

如果想提高LED的闪烁刷新率,就可以采用外部的PWM信号作为时钟源

这时候,就需要使用GCK管脚作为外部PWM时钟源的输入。

这就是GCK的目的。

不过官方不建议采用外部PWM作为信号输入,建议采用内部的PWM产生器

5.2外部的PWM 最高可以达到多少?

最高可以达到25MHZ,最高的刷新率可以达到380HZ。

可以遵循下面的刷新率计算公式进行计算:

 6、总结:

有几方面可以影响DM634恒流驱动芯片的输出电流值大小呢?

有以下四个方面:

6.1 Rext外接电阻的大小(硬件控制)

6.2 GBC的大小(软件设置,0~127)

6.3 PWM占空比(软件控制,DAI输入的数值)

6.4 PWM提供的时钟(采用外部的PWM还是内部的PWM,软件GCK管脚控制)

 7、PWM的调制方式:

内部PWM对信号的调制方式采用了时序分组调制(SSM)和传统的PWM灰阶调制技术

 具体的采用了bit12~bit15 作为SSM调制,其他的作为PWM调制,

PWM具体的调制原理如下,不做过多解释。有兴趣了解PWM的调制过程的,可以用文末的联系方式联系我:

 其他的细节,我个人认为是不太重要的,没有补充到这个文档里面,就不写了。

有其他细节方面想要咨询我的,联系我。

最后,有需要参考程序的,可以联系我。参考程序收费。

 

 

 

有问题可以联系

QQ:895029070

email:sgmcy@126.com

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sgmcy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值