当前位置:首页 > 电源 > 数字电源
[导读]1 引言显示是单片机应用系统中非常重要的环节,通常用数码管显示器LED作为输出设备显示一些信息和结果。在很多设备中,往往需要显示一系列不断递增的连续数,例如采集数据过程中不仅要显示采集数据的具体数值还要显示

1  引言

显示是单片机应用系统中非常重要的环节,通常用数码管显示器LED作为输出设备显示一些信息和结果。在很多设备中,往往需要显示一系列不断递增的连续数,例如采集数据过程中不仅要显示采集数据的具体数值还要显示已经采集数据的个数,那么采集数据的个数就是一系列连续数,又如很多生产设备要不断显示已加工好的零件或产品的数量等。在线商城

在传统的显示驱动电路中,每一个LED显示器需要一个译码芯片,而每一段又需要一个限流电阻,在显示信息量较大时,电路变得复杂而且也会占用系统很多资源。MAX7219芯片是美国MAXIM公司出品的新型紧凑型、可编程共阴极LED数码管的驱动芯片,它集BCD译码器、多路扫描器、段驱动和位驱动电路于一体, 内含8×8位双口静态SRAM ,可保存8位LED数据。MAX7219芯片的外围接口电路简单,使用方便,仅需三根I/O口线便可驱动多块LED进行动态显示。MAX7219只需一个外部电阻来设置所有LED的段电流,不仅可以克服常规的动态显示亮度不够、闪烁等缺点,而且大大简化硬件电路并减少软件的工作量,因此MAX7219芯片成为单片机应用系统中首选的LED显示接口电路。MAX7219具有BCD译码模式和非译码模式。如果仅显示一些连续数,当然可采用非译码模式,这时可做一个TAB表,依次存放数字的相应编码, 通过使用查表指令即可实现。但生产实际中往往要显示很多种数据,其它数据的显示采用BCD译码显示方式比较方便。虽然一片MAX7219可以在不同的LED同时输出两种显示方式,但这样将大大增加软件编程的负担,为使程序简化,可将连续数和其它数据同时采用BCD译码模式显示。本文以MAX7219串行LED驱动器驱动LED显示连续数1~99999为例,说明其实现显示连续数的方法。

2 硬件接口电路

MAX7219是24脚DIP塑料封装元件,MAX7219芯片与AT89C52单片机及共阴极小电流LED段码显示器的接口电路简单,原理图如图1所示。AT89C52的引脚P1.0、P1.1、P1.2分别与MAX7219的DIN数据输入管脚、LOAD锁定输入管脚、CLK时钟输入管脚相连。

   MAX7219可通过V+ 管脚和ISET管脚之间所接的外部电阻RSET来控制显示的亮度,RSET电阻越大段电流越小,硬件电路中RSET可采用10KΩ。为了减少外界的干扰,应在MAX7219的V+ 管脚和GND管脚之间加上一个0.1μF的涤纶电容和一个10μF的钽电容。

图1 MAX7219与AT89C52单片机硬件接口电路

3  软件编程

MAX7219与AT89C52芯片编程主要分为两部分:初始化子程序、送显子程序以及数据传送。初始化程序主要是对MAX7219的显示模式、显示亮度、显示位数等进行初始化。本例中主要的初始化部分是选择每一显示位相应的显示方式为全译码方式,即给译码方式寄存器X9H 单元送相应的数值0FFH;限制显示扫描显示位数为5位,即给扫描限制寄存器XBH 单元送相应的数值04H。在线商城

数据传送子程序是根据器件的传送时序编写的子程序,其主要功能是串行传送数据。送显程序的功能是将要显示的数值送到MAX7219的数据寄存器里,使其显示出来。这两部分的内容在很多文献中都有说明,本文不多加说明。

本文要重点介绍在数据传送和送显程序前面部分的处理程序,也就是使要显示的一系列连续数1~99999逐步放入各个显示数据暂存单元的程序。当MAX7219采用BCD译码模式时,这个处理程序是往往是不好编程的,因为它要显示数据的位数不固定,要从一位数逐步跳变为多位数。如果采用普通的设计思路,这个程序将会十分复杂。我们采用了一种新的设计思路进行编程,取得了令人满意的结果。

显示器显示数据刷新的时间是根据需要而定的,本例采用单片机内部的定时器来进行定时,在每次定时时间到后先执行该处理程序,然后再调用数据传送和送显程序便可实现在LED数码管上显示连续数。

该处理程序的设计思想是在程序执行前先将各显示暂存单元中数字都清零,即让显示器最初显示“00000”。每当定时时间到时先将个位暂存单元中的数字与9相减,结果不为0时,将个位数字加1后送入个位暂存单元并送出显示(所有数的个位数字1~9的变化都通过该段程序完成);如果结果为0,则将十位暂存单元中的数字与9相减,结果不为0时,则先将个位数字变为0,再将十位数字加1后分别送入个位、十位暂存单元并送出显示(所有数的十位数字1~9的变化都通过该段程序完成);如果十位数字与9相减结果为0,则要再将百位暂存单元中的数字与9相减比较,结果不为0时,则先将个位、十位数字都先变为0,再将百位数字加1后分别送入个位、十位、百位数据暂存单元并送出显示(所有数的百位数字1~9的变化都通过该段程序完成);如果百位数字与9相减比较结果为0,再将千位数字与9相减比较结果…如此下去,便可使显示器显示一系列连续数。例如程序执行第一次时,个位暂存单元中的数字为0,它与9相减的结果不为0,那么将0加上1的结果1放入个位暂存单元送显便显示出数据“00001”,执行第九次显示数据为“00009”,执行第十次时,要先将个位暂存单元中的数字9与9相减,结果为0,这时再将十位暂存单元中的数字0与9相减,0与9相减的结果不为0,这时先将个位数字变为0放入个位暂存单元,再将十位暂存单元中的数字0加上1后的结果1放入十位暂存单元送显,便可显示数据“00010”。要使显示的数最大为99999,只需在每一数位与9比较之前判断它的下一数位是否是十万位,如果下一数位是十万位时退出程序即可。该处理程序十分巧妙地根据要显示的数不同数位上的数字与9比较的结果,来选择执行不同的程序段而达到目的,因此虽然程序设计思想复杂,但程序十分简单。程序如下:

(程序入口为C0)

C1:MOV @R1,#00H

   INC R1在线商城

   MOV A,R1

   SUBB A,#45H      ;判断是否到十万位暂存单元45H

   CLR C

   JZ C2

C0:MOV A,@R1

   SUBB A,#09H   

   JZ C1

   MOV A,@R1

   ADD A,#01H

   MOV @R1,A    

C2:MOV R1,#40H      ;个位暂存单元40H送寄存器

   RET

4  结论

用MAX7219作为显示驱动电路,只需三根端口线,且软件驱动编程简单,控制方式灵活,使显示部分的电路和编程大为简化。本文通过一个实例说明使用MAX7219驱动LED显示器在其 BCD译码模式下显示连续数的方法,该方法已经在数据采集系统和包装设备上得到运用,效果良好。本文创新点是:MAX7219芯片在其BCD译码模式下驱动LED显示器显示连续数的软件部分如果采用普通编程设计思路,程序会十分复杂。本文采用一种新颖独特的编程思想,十分巧妙地根据要显示的一系列连续数不同数位上的数字与9比较的结果,来选择执行不同的程序段而达到目的,使得程序十分简单。本程序可供其它单片机应用系统如既需要显示产品个数又需要显示产品其它参数的场合参考使用。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭