一种洗碗机及其LED数码管显示驱动电路和方法
技术领域
本发明属于LED数码管显示驱动技术领域,尤其涉及一种洗碗机及其LED数码管显示驱动电路和方法。
背景技术
目前,在家用电器中,为了显示各种提示信息,都会采用LED数码管作为显示介质,对于LED数码管的驱动方式,通常是采用以下三种:
1、通过采用三级管驱动,并配合控制软件采用动态扫描方式进行数据控制以使LED数码管实现显示功能,这样的驱动方式所采用的电路的连接布线过于复杂,且占用单片机的输入输出口资源较多,主控板与显示板之间连接线过多,无形中增加了成本,且会直接影响系统的稳定性。
2、通过在上述驱动方式1的基础上优化主控处理器的段控口,利用2个输入输出口控制逻辑器件74HC164以驱动LED数码管显示,从而节省了输入输出口资源,但依然存在系统稳定性较差的问题。
3、通过采用显示驱动芯片驱动LED数码管显示,优点是单片机与显示电路的电路连接非常简单,可靠性和稳定性高,但是目前现有的多数显示驱动芯片只能驱动共阴极LED数码管,如果需要驱动共阳极LED数码管,则需要另行设计相应的驱动芯片,而这又会增加成本。
综上所述,现有技术存在无法在保证低成本和高稳定性的情况下对共阳极LED数码管实现显示驱动的问题。
发明内容
本发明的目的在于提供一种LED数码管显示驱动电路,旨在解决现有技术所存在的无法在保证低成本和高稳定性的情况下对共阳极LED数码管实现显示驱动的问题。
本发明是这样实现的,一种LED数码管显示驱动电路,与共阳极LED数码管连接,所述LED数码管显示驱动电路包括主控处理器和显示驱动模块,所述主控处理器的串行数据输入输出口、串行时钟输出口及数据输入控制口分别连接所述显示驱动模块的数据输入输出端、时钟信号端及数据输入控制端,所述显示驱动模块的第一位控端、第二位控端、第三位控端、第四位控端、第五位控端、第六位控端及第七位控端分别连接所述共阳极LED数码管的段控A引脚、段控B引脚、段控C引脚、段控D引脚、段控E引脚、段控F引脚及段控G引脚,所述显示驱动模块具有多个段控端,所述显示驱动模块的一个或多个段控端一一对应地分别与所述共阳极LED数码管的一个或多个位控引脚连接;
所述主控处理器在上电后对所述显示驱动模块的存储空间中所存储的显示数据进行清零处理,并将待显示数据进行段位数据转换处理以获得数码管显示数据,再将所述数码管显示数据存入所述显示驱动模块中的存储空间,最后由所述显示驱动模块根据所述数码管显示数据驱动所述共阳极LED数码管进行显示。
本发明的另一目的还在于提供一种洗碗机,所述洗碗机包括洗涤系统、共阳极LED数码管及上述的LED数码管显示驱动电路。
本发明的又一目的还在于提供一种基于上述LED数码管显示驱动电路的LED数码管显示驱动方法,所述LED数码管显示驱动方法包括以下步骤:
主控处理器在上电后对显示驱动模块的存储空间中所存储的显示数据进行清零处理;
所述主控处理器将待显示数据进行段位数据转换处理以获得数码管显示数据;
所述主控处理器将所述数码管显示数据存入所述显示驱动模块中的存储空间;
所述显示驱动模块根据所述数码管显示数据驱动共阳极LED数码管进行显示。
本发明通过采用包括主控处理器和显示驱动模块的LED数码管显示驱动电路,由主控处理器在上电后对显示驱动模块的存储空间中所存储的显示数据进行清零处理,并将待显示数据进行段位数据转换处理以获得数码管显示数据,再将该数码管显示数据存入显示驱动模块中的存储空间,最后由显示驱动模块根据数码管显示数据驱动共阳极LED数码管进行显示,整个LED数码管显示驱动电路的成本低,且能够稳定可靠地实现对共阳极LED数码管的显示驱动,解决了现有技术所存在的无法在保证低成本和高稳定性的情况下对共阳极LED数码管实现显示驱动的问题。
附图说明
图1是本发明实施例提供的LED数码管显示驱动电路的模块结构图;
图2是本发明实施例提供的LED数码管显示驱动电路的示例电路结构图;
图3是本发明实施例提供的LED数码管显示驱动电路的电路原理示意图;
图4是本发明实施例提供的LED数码管显示驱动电路所涉及的三位共阳极七段LED数码管的内部结构图;
图5是本发明实施例提供的LED数码管显示驱动电路所涉及的三位共阳极七段LED数码管的内部示意结构图;
图6是本发明实施例提供的基于LED数码管显示驱动电路的LED数码管显示驱动方法的实现流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
以下以在洗碗机中的应用为例对本发明实施例提供的LED数码管显示驱动电路进行详细说明:
洗碗机包括洗涤系统、共阳极LED数码管及LED数码管显示驱动电路,LED数码管显示驱动电路对共阳极LED数码管进行显示驱动控制。
图1示出了本发明实施例提供的LED数码管显示驱动电路的模块结构,为了便于说明,仅示出了与本发明相关的部分,详述如下:
LED数码管显示驱动电路100与共阳极LED数码管200连接,LED数码管显示驱动电路100包括主控处理器101和显示驱动模块102,主控处理器101的串行数据输入输出口33、串行时钟输出口32及数据输入控制口31分别连接显示驱动模块102的数据输入输出端、时钟信号端及数据输入控制端,显示驱动模块102的第一位控端、第二位控端、第三位控端、第四位控端、第五位控端、第六位控端及第七位控端分别连接共阳极LED数码管200的段控A引脚A、段控B引脚B、段控C引脚C、段控D引脚D、段控E引脚E、段控F引脚F及段控G引脚G,显示驱动模块102具有多个段控端,显示驱动模块102的一个或多个段控端一一对应地分别与共阳极LED数码管200的一个或多个位控引脚(C1~Cn)连接。
主控处理器101在上电后对显示驱动模块102的存储空间中所存储的显示数据进行清零处理,并将待显示数据进行段位数据转换处理以获得数码管显示数据,再将该数码管显示数据存入显示驱动模块102中的存储空间,最后由显示驱动模块102根据数码管显示数据驱动共阳极LED数码管200进行显示。
进一步地,主控处理器101可以是NEC出品的型号为UPD78F0511的单片机。
进一步地,如图2所示,显示驱动模块102包括:
第一电阻R1、第二电阻R2、第三电阻R3、第四电阻R4、电容C1以及显示驱动芯片U1;
第一电阻R1的第一端与电容C1的第一端及显示驱动芯片U1的电源脚VDD共接于直流电源(如+5V直流电源),第二电阻R2的第一端、第三电阻R3的第一端及第四电阻R4的第一端分别为显示驱动模块102的数据输入输出端、时钟信号端及数据输入控制端,第二电阻R2的第二端与第一电阻R1的第二端共接于显示驱动芯片U1的串行数据输入输出脚DIO,第二电阻R2的第二端和第三电阻R3的第二端分别连接显示驱动芯片U1的时钟输入脚CLK和数据输入控制脚STB,电容C1的第二端与显示驱动芯片U1的接地脚GND共接于地,显示驱动芯片U1的第一位输出脚GR1、第二位输出脚GR2、第三位输出脚GR3、第四位输出脚GR4、第五位输出脚GR5、第六位输出脚GR6及第七位输出脚GR7分别为显示驱动模块102的第一位控端、第二位控端、第三位控端、第四位控端、第五位控端、第六位控端及第七位控端,显示驱动芯片U1的第一段输出脚SG1/KS1、第二段输出脚SG2/KS2、第三段输出脚SG3/KS3、第四段输出脚SG4/KS4、第五段输出脚SG5/KS5、第六段输出脚SG6/KS6、第七段输出脚SG7/KS7、第八段输出脚SG8/KS8、第九段输出脚SG9/KS9以及第十段输出脚SG10/KS10分别为显示驱动模块102的第一段控端、第二段控端、第三段控端、第四段控端、第五段控端、第六段控端、第七段控端、第八段控端、第九段控端及第十段控端。其中,显示驱动芯片U1为型号是MC2102的LED驱动器。由于显示驱动芯片U1中的十个段输出脚(SG1/KS1~SG10/KS10)可用于驱动共阳极LED数码管200的位控引脚,所以共阳极LED数码管200中的LED数码管最多可为10个,即如图2所示,共阳极LED数码管200最多可有10个位控引脚(C1~C10),。
以下结合工作原理对上述的LED数码管显示驱动电路100作进一步说明:
假设共阳极LED数码管200为三位共阳极七段LED数码管,则其具有三个位控引脚(C1~C3),如图3所示,可由显示驱动芯片U1的第一段输出脚SG1/KS1、第二段输出脚SG2/KS2及第三段输出脚SG3/KS3分别连接共阳极LED数码管200的第一位控引脚C1、第二位控引脚C2及第三位控引脚C3。主控处理器101在上电后先将显示驱动芯片U1的存储空间中所存储的显示数据进行清零,然后对待显示数据进行段位数据转换处理,在段位数据转换处理中,具体是按照以下原理实现的:
如图4所示的三位共阳极七段LED数码管的内部结构,由于在本发明实施例中,共阳极LED数码管200的段控A引脚A、段控B引脚B、段控C引脚C、段控D引脚D、段控E引脚E、段控F引脚F及段控G引脚G分别由显示驱动芯片U1的第一位输出脚GR1、第二位输出脚GR2、第三位输出脚GR3、第四位输出脚GR4、第五位输出脚GR5、第六位输出脚GR6及第七位输出脚GR7控制,且共阳极LED数码管200的第一位控引脚C1、第二位控引脚C2及第三位控引脚C3分别由显示驱动芯片U1的第一段输出脚SG1/KS1、第二段输出脚SG2/KS2及第三段输出脚SG3/KS3所控制,所以可将图4所示的三位共阳极LED数码管的内部结构重新编排为如图5所示的示意结构,可见,共阳极LED数码管200的三个七段LED数码管中相同的段同时由显示驱动芯片U1的同一个位输出脚所控制,例如:第一个七段LED数码管中的A段A1、第二个七段LED数码管中的A段A2及第三个七段LED数码管中的A段A3同时由显示驱动芯片U1的第一位输出脚GR1所控制。如果需要使第一个七段LED数码管中的A段A1和B段B1显示,则显示驱动芯片U1对其第一段输出脚SG1/KS1和第二段输出脚SG2/KS2的数据定义为1,其余的段输出脚(SG3/KS3~SG10/KS10)均定义为0,即第1组段控输出数据为0B00000011,则在显示驱动芯片U1的第一位输出脚GR1要置位为低电平输出,此时第一个七段LED数码管的A段A1和第二个七段LED数码管的A段A2均会被点亮,而第二个七段LED数码管的A段A2的显示并不是预期所要达到的目的,所以显示驱动芯片U1需要将其第二位输出脚GR2置位为低电平,并同时根据第2组段控输出数据的第0位数据驱动其第二段输出脚SG2/KS2输出高电平以使第一个七段LED数码管的B段B1被点亮,由此可知,第一个七段LED数码管的C段C1至G段G1需要分别由第3至7组段控输出数据的第0位数据所控制,而第二个七段LED数码管的A段A2至G段G2则需要分别由第1至7组段控输出数据的第1位数据所控制,第三个七段LED数码管的A段A3至G段G3则需要分别由第1至7组段控输出数据的第3位数据所控制,且同时,显示驱动芯片U1的第一位输出脚GR1、第二位输出脚GR2、第三位输出脚GR3、第四位输出脚GR4、第五位输出脚GR5、第六位输出脚GR6及第七位输出脚GR7需要相应地置位为低电平以实现相应的显示目的。从上述可知,在段位数据转换过程中,主控处理器101需要将待显示数据的每一组数据中处于同一数据位的数据从第0位至第7位截取出来分别组成A段控制数据组、B段控制数据组、C段控制数据组、D段控制数据组、E段控制数据组、F段控制数据组、G段控制数据组以及缺省段控制数据组(该组数据在显示驱动芯片U1中不输出),A段控制数据组、B段控制数据组、C段控制数据组、D段控制数据组、E段控制数据组、F段控制数据组及G段控制数据组构成了前述的数码管显示数据。具体地,如下表所示:
如上表,主控处理器101需要将待显示数据中的每一组数据(D0~D7)的第0位数据截取出来作为A段控制数据组CA,将每一组数据(D0~D7)的第1位数据截取出来作为B段控制数据组CB,依此类推,直至将每一组数据中的第7位数据(D0~D7)截取出来作为缺省段控制数据组CH。
在通过上述的段位数据转换后,主控处理器100即可将通过转换所得到的数码管显示数据存入显示驱动芯片U1中的存储空间,则随后显示驱动芯片U1可以根据所存入的数据组相应地驱动共阳极LED数码管200进行显示。
根据上述工作原理,本发明实施例还提供了基于上述LED数码管显示驱动电路100的LED数码管显示驱动方法,如图6所示,该方法包括以下步骤:
S1.主控处理器101在上电后对显示驱动模块102的存储空间中所存储的显示数据进行清零处理;
S2.主控处理器101将待显示数据进行段位数据转换处理以获得数码管显示数据;
S3.主控处理器101将数码管显示数据存入显示驱动模块102中的存储空间;
S4.显示驱动模块102根据数码管显示数据驱动共阳极LED数码管300进行显示。
其中,根据前述LED数码管显示驱动电路100的工作原理,步骤S2具体为:主控处理器100将待显示数据的每一组数据中处于同一数据位的数据从第0位至第7位截取出来分别组成共阳极LED数码管的A段控制数据组、B段控制数据组、C段控制数据组、D段控制数据组、E段控制数据组、F段控制数据组、G段控制数据组以及缺省段控制数据组,再将A段控制数据组、B段控制数据组、C段控制数据组、D段控制数据组、E段控制数据组、F段控制数据组及G段控制数据组构成数码管显示数据。缺省段控制数据组不参与对共阳极LED数码管200的显示驱动控制。
综上所述,本发明实施例通过采用包括主控处理器和显示驱动模块的LED数码管显示驱动电路,由主控处理器在上电后对显示驱动模块的存储空间中所存储的显示数据进行清零处理,并将待显示数据进行段位数据转换处理以获得数码管显示数据,再将该数码管显示数据存入显示驱动模块中的存储空间,最后由显示驱动模块根据数码管显示数据驱动共阳极LED数码管进行显示,整个LED数码管显示驱动电路的成本低,且能够稳定可靠地实现对共阳极LED数码管的显示驱动,解决了现有技术所存在的无法在保证低成本和高稳定性的情况下对共阳极LED数码管实现显示驱动的问题。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。