广告
广告
基于Proteus和Keil μVision 3 LED显示控制系统设计
您的位置 资讯中心 > 技术与应用 > 正文

基于Proteus和Keil μVision 3 LED显示控制系统设计

2012-07-18 14:48:48 来源:现代电子技术 点击:1302

【哔哥哔特导读】为了实现基于Proteus和Keil μVision3软件联调环境下利用单片机AT89C51芯片采用串口通信模式及键盘输入同步中断控制方式,设计了一种LED显示控制系统。由仿真结果表明,在该模式开发环境下,有利于各个环节参数变量的调节设定,使得系统软件开发更加容易实现,大大提高了代码开发周期和进度,简化了开发流程。

摘要:  为了实现基于Proteus和Keil μVision3软件联调环境下利用单片机AT89C51芯片采用串口通信模式及键盘输入同步中断控制方式,设计了一种LED显示控制系统。由仿真结果表明,在该模式开发环境下,有利于各个环节参数变量的调节设定,使得系统软件开发更加容易实现,大大提高了代码开发周期和进度,简化了开发流程。

关键字:  LED显示控制系统,  代码开发周期

为了实现基于Proteus和Keil μVision3软件联调环境下利用单片机AT89C51芯片采用串口通信模式及键盘输入同步中断控制方式,设计了一种LED显示控制系统。由仿真结果表明,在该模式开发环境下,有利于各个环节参数变量的调节设定,使得系统软件开发更加容易实现,大大提高了代码开发周期和进度,简化了开发流程。

关键词:Proteus;Keil;LED;AT89C51

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 结语

LED显示系统以AT89C51单片机为基础,利用RS 232和单片机的接口转换模块,实现与PC机的数据传输,可以随时更新显示内容。同时,采用键盘输入串口中断模式与驱功LED同步显示,并实现了两者的模式切换,同时采用C语言和汇编语言混合编程,和基于Keil与Proteus联调仿真的开发模式,使系统的功能更容易实现且具有较好的移植性。

本文为哔哥哔特资讯原创文章,未经允许和授权,不得转载,否则将严格追究法律责任;

阅读延展
LED显示控制系统
  • 基于软件开发的LED显示控制系统

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

    为了实现基于Proteus和Keil μVision3软件联调环境下利用单片机AT89C51芯片采用串口通信模式及键盘输入同步中断控制方式,设计了一种LED显示控制系统。LED显示系统以AT89C51单片机为基础,利用RS 232和单片机的接口转换模块,实现与PC机的数据传输,可以随时更新显示内容。

  • 基于多端口串行Flash的条形LED显示屏控制

    基于多端口串行Flash的条形LED显示屏控制

    本文在分析现有各种条形LED 显示屏单元板电路的基础上,提出了一种基于多端口串行Flash存储器的LED 显示控制系统。 利用单片机的SPI接口产生可控时钟,将多端口串行Flash 存储器中的显示数据以“DMA”方式直接输出至超长条形LED 显示屏。

微信

第一时间获取电子制造行业新鲜资讯和深度商业分析,请在微信公众账号中搜索“哔哥哔特商务网”或者“big-bit”,或用手机扫描左方二维码,即可获得哔哥哔特每日精华内容推送和最优搜索体验,并参与活动!

发表评论

  • 最新评论
  • 广告
  • 广告
  • 广告
广告
粤B2-20030274号   Copyright Big-Bit © 2019-2029 All Right Reserved 大比特资讯 版权所有     未经本网站书面特别授权,请勿转载或建立影像,违者依法追究相关法律责任