基于软件开发的LED显示控制系统

时间:2022-03-17来源:佚名

LED显示控制系统设计是采用单片机AT89C51作为主控制器,采用LED行列阵显示及键盘同步中断请求显示的2种模式,实现串口通信并进行2种模式下的切换控制。系统成功地实现对I/O口通道控制以及键盘的中断请求等功能控制。系统仿真环境的搭建是基于Proteus与Keil μVision 3软件在联合开发平台中调试完成的。在调试的过程中,可以从多个方面直接观察程序运行情况和电路工作分析,简化了理论程序和设计实验等过程,大大减少了代码的开发周期,降低了硬件成本。

1 Keil μVision 3与protues简介

Keil μVision 3是美国Keil SOFtware公司出品的C51系列兼容单片机C语言软件开发系统,其生成目标代码的效率非常高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。

Proteus是英国Labcenter electonICs公司研发的电子设计自动化(EDA)系统,主要由ISIS电路设计与仿真平台、Peospite模/数混合仿真器、VSM单片机/嵌入式系统协同仿真和ARES PCB设计构成。在编译调试方面,支持Keil μVision 3和MPLAB等第三方开发工具。

2 系统设计

2.1 系统开发框架

LED显示控制系统设计由系统原理设计、系统代码开发、硬件电路模拟仿真、软硬件联合调试、实物移植等组成。其中,代码开发仿真模拟通过Proteus软件与Keil μVision 3软件之间相互联合仿真进行设计。系统开发设计框架如图1所示。

2.2 硬件结构设计

系统硬件由单片机AT89C51系统和行列阵LED显示模块、上位机、串行显示键盘模块、晶振电路和存储器模块等构成。系统硬件结构如图2所示。

硬件模块主要完成的功能有:显示屏的驱动,是通过与上位机间的串口通信接收文件信息并保存,通过行列驱动器控制完成LED的驱动。串行显示键盘,为实现键盘输入与显示屏输出实现同步,进行串口输出模式切换,完成对LED的驱动,但由于系统中并行口的I/O资源不够,而串行口又没有其他作用,通过用数据锁存模块74LS164来扩展并行I/O口,节约单片机资源。将AT89C51串行通信口输出的串行数据译码在其并口线上输出,将显示的数据直接送串口发送缓冲器,等待串行中断即可。

2.2.1 LED显示模块

显示部分采用动态扫描方式,实现汉字、图像、数字字符等数据信息的控制以及显示等功能。采用行扫描方式,当选通第1行LED点阵时,对应列数据,由于74HC595器件的特殊性,通过将每个器件的串行数据输入引脚14与下一个器件的串行数据输出引脚9级联,可以把需要显示的数据信息依次存入74HC595器件内,通过其锁存器功能将数据锁存,待40列数据都存入74HC595器件内时,把输出有效引脚13置为低电平,则40列数据一起输出,达到一行显示的效果。依次类推,实现整个显示屏的显示功能。

2.2.2 串行显示键盘

该模块用于与人机交互和显示,行列式键盘即矩阵式键盘,由行和列组成,在每个行列的交叉点上放置一个按键。包括8只控制LED的位驱动晶体管,控制数码显示的数据由控制灯亮灭信号和控制位显示的控制信号两部分组成。

2.2.3 串口通信

串口接口通过RS 232实现上位机与单片机传输信息。当模块进入串行传输方式,上位机通过同步时钟线SCLK和串行数据线完成数据的传输。在AT89C51片选引脚CS为高电平时,主机时钟线上的时钟信号才能被液晶显示模块接受,当引脚CS为低电平时,显示模块内部寄存器将被复位,即终止数据传输。

2.3 软件设计

整个系统软件设计语言采用C语言,进行中断控制,其中代码开发编写测试则通过Keil μVision 3软件与Proteus软件之间完成。

软件实现代码流程如图3所示。


由于软件开发代码复杂,现给出键盘输入程序部分代码如下:

3 Proteus与Keil软件的联调设置

系统采用Keil μVision 3与Proteus联调的方式来实现。首先需要安装Keil驱动软件vDMAgdi.exe,然后Keil目录下的bin中的VDM51. dll拷贝到Proteus下面的bin中,打开Keil UVision 3软件,创建项目,并单击option for targetl,在打开对话框,选择output选项卡,在creat hex file前面打勾,以便产生HEX文件,同时在debug选项卡中选择proteus vsmsimulator,将Keil生成。HEX文件如图4所示。

在Proteus软件中,双击AT89C51单片机,在其属性下面的Program file中加载由Keil μVision 3产生的。HEX文件,然后点击ok退出,同时在debug菜单下面选择use remote debug monitor,这样就完成了Proteus与Keil的联调准备工作如图5所示。

4 结语

由仿真结果表明,在该模式开发环境下,有利于各个环节参数变量的调节设定,使得系统软件开发更加容易实现,大大提高了代码开发周期和进度,简化了开发流程。

    相关阅读

    城市亮化工程如何设计才能具有层次感?

    城市亮化工程 的主要目地是为夜间带来一体化照明,考虑基础的视觉识别规定,自然环境照明的光层级与光线总数的多少相关,假如空间中的自然环境照明比工作照明低许多 ,在工作...
    2022-10-11
    城市亮化工程如何设计才能具有层次感?

    城市道路照明工程主要有哪些?

    在城市建设中,道路照明 是必不可少的基础设施,也是城市夜景的重要组成部分。在某种程度上,它还反映了城市的经济实力,社会进步和现代化的标志。它为夜间在城市中的车辆和行...
    2022-07-12
    城市道路照明工程主要有哪些?

    安全出口指示标志灯为什么是绿色而不是红色?

    对于安全出口指示标志灯相信大家都不陌生,我们在日常生活中在任何公众场所的紧急疏散的安全出口都可以看到这个安全出口指示标志灯,大家有没有想过安全出口的指示标志为什么...
    2022-05-21
    安全出口指示标志灯为什么是绿色而不是红色?

    路灯照明合理的布置方式

    路灯的布置方式主要有单侧布置、双侧交错布置、双侧对称布置、中心对称布置、横向悬索布置五种形式,随着城市道路的不断拓宽,平交路口转弯半径越来越大,根据《城市道路亮化...
    2022-07-15

    泛光照明工程是什么?应用范围有哪些?

    很多人提及 泛光照明工程 会有一些生疏,不理解泛光照明包含哪些,也不知道 泛光照明工程 跟普通照明工程有哪些不一样。 实际上泛光照明工程便是归属于城市景观照明工程或环境...
    2022-10-17
    泛光照明工程是什么?应用范围有哪些?

    消防应急灯的寿命有多长?一般可以使用多长时间?

    对于消防应急灯的使用寿命相信很多人都想了解这个问题,因为消防应急灯安装了就不需要时时刻刻盯着,这需要定时检查就可以了,但是很多人都不知道消防应急灯的寿命有多长,不...
    2022-05-21
    消防应急灯的寿命有多长?一般可以使用多长时间?

    快投派智能无线投屏器,让无线互联更加简单便捷

    没有WiFi的情况下可以进行无线投屏吗? 长期使用投屏功能的人,或多或少都知道自己的手机可以通过【无线投屏】【屏幕镜像】功能,直接连接到智能电视或无线投屏器,下意识地认...
    2022-05-11
    快投派智能无线投屏器,让无线互联更加简单便捷

    广场照明的设计技巧

    广场照明设计 主要包括休闲广场、集会活动广场、商业广场的照明设计。 1)休闲广场。主要是为人们提供休息、社交和举行小型文化娱乐活动的地方,由于人们活动方式不同,有些区...
    2022-07-15

    网站栏目