当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]运用Proteus及汇编语言的汉字点阵动态显示

英国Labcenter公司开发的Proteus ISIS是一个非常不错的电路分析与实物仿真软件。Proteus软件由ISIS和ARES两部分构成,其中ISIS是一款便捷的电子系统原理设计和仿真平台软件,ARES是一款高级的PCB布线编辑软件。它不仅具有具有和其他EDA工具一样的原理图编辑、印刷电路板(PCB)设计及电路仿真功能,最大的特色是其电路仿真的交互化和可视化。通过Proteus软件的VSM(虚拟仿真模式),用户可以对模拟电路、数字电路、模数混合电路、单片机及外围元器件等电子线路进行系统仿真。Proteus一种操作简便而又功能强大的原理图编辑工具。Proteus ISIS运行于Windows 98/2000/XP环境,对PC的配置要求不高,一般的配置就能满足要求。运行Proteus ISIS的执行程序后,即进入Proteus ISIS编辑环境。该软件有着以下几个特点:

1 提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVisiON2等软件。

2 具有强大的原理图绘制功能。

3 实现了单片机仿真和 SPICE电路仿真相结合。具有模拟电路、数字电路仿真、单片机及其外围电路的仿真、各种虚拟仪器,如示波器等功能。

4 实现了单片机仿真和 SPICE电路仿真相结合。具有模拟电路、数字电路仿真、单片机及其外围电路的仿真、各种虚拟仪器,如示波器等功能。

5 支持主流单片机系统的仿真。目前支持的单片机类型有68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。

总的涞说Proteus是一款集单片机和SPICE分析于一身的电路设计和仿真软件,功能极其强大。该软件的使用彻底改变了传统单片机学习和开发方式,初学者可以在没有实验硬件条件下进行仿真实验,开发者可以直接用Proteus进行电路设计和仿真运行程序,运行成功后再制作产品,缩短开发周期,节约开发成本。汉字点阵显示电路设计时,显示部分应用16×16点阵字模提取软件,这里我们以提取“广东工贸”显示汉字的字模数据,通过查表取出字模数据送输出动态显示。   

1 汉字显示电路设计

我们采用AT89C51单片机来做汉字点阵的控制电路,硬件电路由单片机接口电路、LED显示屏行列驱动电路、LED点阵显示屏三部分组成,如图1所示,电路用Proteus软件画出,具体画法这里就不给出了,相信很多地方都有详细的过程介绍。如果真的一点都不了解最好去看看相关画法介绍,看了对Proteus软件就会有更深入的了解了。

在一般情况下要完全显示出常用汉字至少需要16×16点阵,但由于Proteus元件库中没有16×16LED模块,为了达到显示要求,每个汉字是由四块8×8 LED模块组成。效果不会比16×16点阵的差。组合方式为先对每个8×8模块行列引脚连接好总线,然后四个单色模块组合紧密。

驱动电路采用动态扫描驱动方式,设计中行驱动信号采用了16个同向驱动器7407,并在每根信号线上接上拉电阻;列驱动信号先接-4-16译码器74HCl54,然后十六个列驱动信号接16个反向驱动器7406,并每根信号线接上拉电阻。

单片机上电复位后,当按列扫描时,四个汉字的第一个字由Pl口输出列信号,首先第l列输出“1”,第l列字模数据由16行输出(P0、P2口);然后延时一定时间后,第2列输出“l”,第2列字模数据再由16行输出;……;如此循环,直至第16列;16列扫描完成后,再进行下一次循环扫描。所以在某一时刻,只有一行或一列LED被对应的字模数据驱动点亮。只要扫描间隔时间合适,利用人眼的视觉暂留特性,看上去整个字符就显示在LED点阵显示器上。

2 汉字显示程序设计

根据以上硬件电路和单片机控制原理,编程思路可以如图2所示。

完整的程序代码如下:

MOV DPTR,#WORDTAB;初始化

MOV Rl,#0

MOV R2,#0

MOV R3,#16

MOV R4,#100

MOV R5,#4

LOOP:SETB P1.4

MOV A,R1 :查表取出字模数据经P0口输出

MOVC A,@A+DPTR

CPLA

MOVP0,A

INC R1 ;字模数据索引值加1

MOVA,R1 ;查表取出字模数据经P2口输出

MOVC A,@A+DPTR

CPLA

MOVP2,A

INC R1 ;字模数据索引值加1

MOV P1,R2 ;列控制信号输出

INC R2 ;列控制寄存器加1

LCALL DELAY;显示延时

DJNZ R3,LOOP;判断16列显示完否

DJNZ R4,K1 ;判断是否已显示100次

MOV R4,#100 ;显示次数寄存器重赋初值

SJMPK2

K1:CLRC ;字模数据索引值减32,列控制寄存器和列数寄存器重赋初值

3 仿真及结果

让我们看下Proteus的仿真方法:

(1)在Keil C51仿真软件下创建项目,并把上述源程序添加到项目中,通过编译产生一个“.hex”为后缀的文件,此文件就是用于烧写到Proteus软件中AT89C51芯片的文件。

(2)把生成的“.hex”为后缀的文件添加到Proteus软件中绘制的AT89C51芯片中作为控制程序。

(3)在Proteus软件仿真电路图中点击左下角的运行按钮,则可在LED显示点阵中看到“广东工贸”四个汉字轮流显示的结果。

从仿真图中可以看到“东”字在LED显示点阵中显示出来,设定每个字显示1秒,下秒将显示“工”字,“广东工贸”四个字循环显示。四个字显示出来如图3所示。

结论

通过以上的,Proteus是单片机应用产品灵活、高效、正确的设计与仿真平台,为单片机应用产品研发提供了完整的虚拟实验室,改革了单片机应用产品的研发过程,为广大单片机初学者及工程技术人员提供了单片机开发辅助手段。同时,Proteus也给汉字显示电路的设计、平板显示的驱动电路设计等提供了一种新的方法。

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

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭