两种LED驱动模式的功能及使用方法

LEDs

358人已加入

描述

中颖MCU普通LED模块(非恒流)提供了两种LED驱动模式:亮灭模式、调光模式。两种模式的功能及使用方法简介如下:

1、模式1:亮灭LED模式

当LED驱动器工作在亮灭LED模式时,每一个LEDRAM位控制一个LED灯,当LEDRAM位为0时,LED熄灭,当LEDRAM位为1时,LED点亮;在LED一帧或者一个COM扫描结束后,LED驱动器对应的中断标志位LEDIF或者COMIF标志位置1。

下面给出Mode1下,LED配置方法及其RAM的刷新流程。以需要显示的LED帧频200Hz(5ms)为例,当LED为5 COM且系统时钟为RC 24MHz 时,

COM扫描宽度控制寄存器配置值按如下方式计算:

LED帧频200Hz(5ms),5COM à 单COM的扫描时间TB = 1ms

TB = TSYS * 256* DISCOM (系统时钟RC 24MHz) à DISCOM = 94 (5EH)

注:TSYS为系统时钟周期;DISCOM为COM扫描宽度控制寄存器。

LED模块配置及数据刷新流程如下:

a.配置好LED模块各个寄存器参数(工作模式、COM宽度、死区宽度、COM/SEG引脚)。

b. 写入COM周期内的SEG波形数据(即LED RAM数据);

c. 开启LED模块(在开启LED模块前,可根据需求选择是否使能LED 中断);

d. LED扫描过程中,根据实际需求对显示数据(LED RAM)进行刷新。

模块

2、模式2:调光LED模式

当LED驱动器工作在调光LED模式时,每一个LEDRAM byte控制正在扫描的COM周期内SEG的占空比;该占空比总共可以256档可选;当LEDRAM byte为0xff时,SEG输出最大占空比,当LEDRAM byte为0x00时,SEG输出最小占空比;当LEDRAM byte为0x00~0xff中间值时,SEG输出 相对应的占空比;

在Mode2模式下,LED COM中断使能的情况下,LED模块使能后会立刻开始显示第一个COM的数据(亮度),同时产生一个COM中断。因此,在开启LED 功能前,必须设置好第一个COM周期内的SEG数据;在启动LED功能后,会立刻进入LED COM中断,需在LED中断中改写第二个COM周期的SEG数据SEGXduty(X=0~16)。如果不修改,则第二个COM会显示上个COM周期的波形。以此类推,到一帧(LEDIF=1)结束。一帧最后一个COM中断来临时,填写下一帧的第2个COM的SEG 的波形。

下面给出Mode2下,LED配置方法及其RAM的刷新流程。以需要显示的LED帧频200Hz(5ms)为例,当LED为5 COM且系统时钟为RC 24MHz 时,

COM扫描扫描宽度控制寄存器配置值按如下方式计算:

LED帧频200Hz(5ms),5COM à 单COM的扫描时间TB = 1ms

TB = TSYS * 256* DISCOM (系统时钟RC 24MHz) à DISCOM = 94 (5EH)

注:TSYS为系统时钟周期;DISCOM为COM扫描宽度控制寄存器。

LED模块配置及数据刷新流程如下:

a.配置好LED模块各个寄存器参数(工作模式、中断允许位、COM宽度、死区宽度、COM/SEG引脚)。

b. 写入第1个COM周期的SEG波形数据(LED RAM);

c. 使能LED COM、中断允许位及总中断允许位后,开启LED模块;(与a中所配置的中断允许位不是一个)

d. 开启LED模块后会立刻进入COM中断程序,在COM中断中写入COM2周期的SEG波形数据;清除中断标志位。

e. 等待下一个COM中断来临时(COM1中断),写入COM3周期的SEG波形数据;

f. 重复步骤e,在COM n 中断程序中,配置COMn+2周期的SEG波形数据;

g. 在1帧中的倒数第二个COM中断程序中写入下一帧的COM1周期的SEG波形数据。

模块

审核编辑:汤梓红

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分