跳过主要内容

AN-CM-282 4xN LED驱动器

内容

术语和定义

领导发光二极管
ASM异步状态机
DFFD触发器
I2C集成电路串行通信

参考文献

有关文件及软件,请浏览:

//www.xmece.com/configurable-mixed-signal

下载我们的免费GreenPAK™Designer软件[1],打开。gp文件[2]并查看建议的电路设计。使用GreenPAK开发工具[3]在几分钟内将设计冻结到您自己的定制IC中。yabo国际娱乐Dialog Semiconductor提供了一个完整的应用笔记[4]库,包括设计示例以及Dialog IC内的功能和模块的说明。

  1. GreenPAK设计软件,软件下载和用户指南,Dialog半导体yabo国际娱乐
  2. AN-CM-282 4xN LED驱动器。gp,绿派克设计文件,Dialog半导体yabo国际娱乐
  3. GreenPAK开发工具,对话半导体GreenPAK开发工具网页yabo国际娱乐
  4. GreenPAK应用笔记,绿派克应用笔记网页,对话半导体yabo国际娱乐
  5. SLG46537,数据表,对话框半导体。yabo国际娱乐
  6. - 1092,I2C受控状态机,应用笔记,Dialog半导体。yabo国际娱乐

作者:Krupa Bhavsar

介绍

LED显示器广泛应用于数字时钟、计数器、计时器、电子表、基本计算器和其他能够显示数字信息的电子设备。图1描述了一个7段LED显示器的例子,它可以显示十进制数字和字符。由于LED显示屏上的每一段都可以单独控制,所以这种控制需要很多信号,尤其是对多位数的控制。本应用笔记描述了一个基于GreenPAK的实现,以驱动多个数字与2线I2C接口从一个MCU。

图1:7段LED显示屏

背景

LED显示屏分为两类:共阳极和共阴极。在一个共同的阳极配置,阳极端子内部短路在一起,如图2所示。要打开LED,共阳极端连接到系统供电电压VDD,阴极端通过限流电阻接地。

图2:普通阳极配置

共同的阴极配置类似于共同的阳极配置,除了阴极端子短路在一起,如图3所示。开启共阴极LED显示屏时,共阴极端子接地,阳极端子通过限流电阻连接到系统供电电压VDD。

图3:共阴极配置

一个N位多路LED显示器可以通过连接N个独立的7段LED显示器得到。图4描绘了一个4 × 7 LED显示器的实例,通过在一个共同的阳极配置中组合4个独立的7段显示器获得。

图4:4 x 7段LED显示屏

如图4所示,每个数字都有一个共同的阳极引脚/背板,可以用来单独启用每个数字。每个分段(A, B,…G, DP)的阴极管脚应该从外部短路在一起。要配置这个4x7 LED显示屏,用户只需要12个引脚(每个数字的4个普通引脚和8段引脚)来控制多路4x7显示屏的所有32段。

GreenPAK的设计,详细如下,显示了如何生成这个LED显示器的控制信号。这种设计可以扩展到控制多达4位和16段。请参阅参考资料部分,以获得Dialog网站上提供的GreenPAK设计文件的链接。

GreenPAK设计

图5:GreenPAK设计

图5中显示的GreenPAK设计在一个设计中同时包含段和数字信号生成。段信号由ASM产生,数字选择信号由DFF链产生。分段信号通过限流电阻连接到分段引脚,但数字选择信号连接到显示器的公共引脚。

数字信号的一代

如第4节所述,多路复用显示器上的每个数字都有一个独立的背板。在GreenPAK中,每个数字的信号都是由内部振荡器驱动的DFF链产生的。

这些信号驱动显示器的普通引脚。图6显示了数字选择信号。

通道1(黄色)-引脚6(数字1)

通道2(绿色)-引脚3(数字2)

通道3(蓝色)-引脚4(数字3)

通道4(洋红)-引脚5(数字4)

图6:数字选择信号

段信号生成

GreenPAK ASM生成不同的模式来驱动段信号。7.5ms计数器循环遍历ASM状态。由于ASM是电平敏感的,本设计采用了一个控制系统,以避免在7.5ms时钟的高周期内快速切换多个状态的可能性。这个特定的实现依赖于由倒时钟极性控制的连续ASM状态。段和数字信号都是由相同的25kHz内部振荡器产生的。

ASM配置

图7描述了ASM的状态图。状态0自动切换到状态1。类似的切换发生在状态2到状态3,状态4到状态5,状态6到状态7。在ASM转换到下一个状态之前,使用DFF 1、DFF 2和DFF 7立即锁存状态0、状态2、状态4和状态6的数据,如图5所示。这些dff锁定来自ASM的均匀状态的数据,这使用户能够使用GreenPAK的ASM控制扩展的4x11/4xN (N多达16段)显示。

在4xN显示上的每个数字由ASM的两种状态控制。状态0/1、状态2/3、状态4/5和状态6/7分别控制数字1、数字2、数字3和数字4。表1描述了ASM状态以及它们各自的RAM地址来控制每个数字。

ASM RAM的每个状态存储一个字节的数据。因此,要配置4x7显示,数字1的3段由ASM的State 0控制,数字1的5段由ASM的State 1控制。这样,LED显示屏上每一位数字的所有片段都是通过连接得到的

图7:ASM状态图

这些片段来自于它们对应的两个状态。表2描述了数字1的每个片段在ASM RAM中的位置。以类似的方式,ASM的状态2到状态7分别包含数字2到数字4的段位置。

表1:ASM RAM与4x7 LED显示器的对应关系
ASM状态#
ASM内存地址
位领导位置
状态0
0 xd0
数字1
状态1
0 xd1
数字1
状态2
0 xd2
数字2
状态3
0 xd3
数字2
状态4
0 xd4
数字3
国家5
0 xd5
数字3
国家6
0 xd6
数字4
州7
0 xd7
数字4

由表2可知,状态0的OUT 3 ~ OUT 7段和状态1的OUT 0 ~ OUT 2段未使用。图5中的GreenPAK设计可以通过配置ASM的所有奇态的OUT 0到OUT 2段来控制4x11显示。该设计可以进一步扩展,通过使用更多的DFF逻辑单元和gpio来控制扩展4xN (N至16段)显示。

表2:与ASM RAM的数字1段连接
ASM RAM
出7
出6
出5
出4
出3
出2
出1
从0
状态0
x
x
x
x
x
赛格C
赛格B
赛格一
状态1
赛格DP
赛格G
赛格F
赛格电子
赛格D
x
x
x

测试

图8显示了用于在4x7段LED显示屏上显示十进制数字的测试原理图。Arduino Uno用于与GreenPAK的ASM RAM寄存器进行I2C通信。更多关于I2C通信的信息,请参考[6]。显示器的普通阳极引脚连接到数字选择gpio。分段引脚通过限流电阻连接到ASM。限流电阻的大小与LED显示屏的亮度成反比。用户可以根据GreenPAK gpio的最大平均电流和LED显示屏的最大直流电流来选择限流电阻的强度。

图8:电路原理图

表3描述了将在4x7显示器上显示的二进制和十六进制格式的十进制数字0到9。0表示开启,1表示关闭。如表3所示,需要两个字节才能在显示器上显示一个数字。通过关联表1、表2和表3,用户可以修改ASM的RAM寄存器,以便在屏幕上显示不同的数字。

表3:ASM RAM配置
十进制数
领导部门
数据字节(十六进制)
DP
G
F
E
D
C
B
一个
0
1
1
1
1
1
0
0
0
0 xf8
1
1
0
0
0
1
1
1
0 xc7
1
1
1
1
1
1
0
0
1
0 xf9
1
1
1
1
1
1
1
1
0 xff
2
1
1
1
1
1
1
0
0
0 xfc
1
0
1
0
0
1
1
1
0 xa7
3.
1
1
1
1
1
0
0
0
0 xf8
1
0
1
1
0
1
1
1
0 xb7
4
1
1
1
1
1
0
0
1
0 xf9
1
0
0
1
1
1
1
1
0 x9f
5
1
1
1
1
1
0
1
0
0 xfa
1
0
0
1
0
1
1
1
0 x97
6
1
1
1
1
1
0
1
0
0 xfa
1
0
0
0
0
1
1
1
0 x87
7
1
1
1
1
1
0
0
0
0 xf8
1
1
1
1
1
1
1
1
0 xff
8
1
1
1
1
1
0
0
0
0 xf8
1
0
0
0
0
1
1
1
0 x87
9
1
1
1
1
1
0
0
0
0 xf8
1
0
0
1
0
1
1
1
0 x97

表4描述了4 × 7 LED显示屏上数字1的I2C命令结构。I2C命令需要一个起始位、控制位、字地址、数据位和停止位。可以为数字2、数字3和数字4编写类似的I2C命令。

表4:I2C结构
信息
数据(十六进制)
起始位
开始
控制字节/奴隶地址
0×50
字地址/ RAM 8输出的asm状态0
0 xd0
ASM-State 0的数据
数字1
ASM-State 1的数据
数字1
停止位
停止

例如,要在4x7 LED显示屏上写入1234,需要写入以下I2C命令。

[0x50 0xD0 0xF9 0xFF]

[0x50 0xD2 0xFC 0xA7]

[0x50 0xD4 0xF8 0xB7]

[0x50 0xD6 0xF9 0x9F]

通过重复写入ASM的所有8个字节,用户可以修改显示的模式。例如,Dialog网站上的这个应用程序注释的ZIP文件中包含一个计数器代码。

结论

本应用说明中描述的GreenPAK解决方案使用户能够最小化成本、组件数量、板空间和功耗。

大多数情况下,mcu的gpio数量有限,所以将驱动gpio的LED卸载到一个小而便宜的GreenPAK IC,用户可以节省IOs以获得额外的功能。

此外,GreenPAK ICs很容易测试。ASM RAM可以通过点击GreenPAK设计软件中的几个按钮进行修改,这表明了灵活的设计修改。通过配置本应用说明中描述的ASM,用户可以控制4个n段LED显示器,每个显示器最多16段。