APP下载

16*16 LED显示屏控制系统的设计研究

2010-03-20卢方杰

漳州职业技术学院学报 2010年3期
关键词:控件电平显示屏

卢方杰



16*16 LED显示屏控制系统的设计研究

卢方杰

(漳州电视台 技术制作部,福建 漳州 363000)

基于串行通信的16*16 LED显示屏控制系统的设计,利用Visual Basic提供的MSComm控件建立PC机与单片机的串行通信,设计友好的操作界面,实现控制LED显示屏。上位机采用VB编程,通过按键向单片机输送控制信号,控制显示屏的循环次数、显示方式。单片机采用MCS-51单片机指令系统进行编程实现串口数据接收,并控制驱动16*16 LED显示屏做出相应的显示。经测试该系统能实现良好的自动控制,功能满意。

16*16LED显示屏;电平转换;AT89C51单片机;MSComm控件;串行通信

1 引言

LED(发光二极管的英文Light Emitting Diode缩写)凭借其亮度高、工作电压低、功耗小等优点已广泛应用于商场、车站、银行以及各类办事窗口等其它公共场所。随着信息产业的高速发展,LED的显示控制方式也变得多样化。

2 硬件系统

在本设计系统中,上位机采用一台标配的计算机,下位机由AT89C51单片机及其外围电路组成,通过RS-232C串行通信方式交换上位机下发的控制命令,并返回下位机的工作状态。因RS-232信号电平与单片机的串口TTL电平不一样,所以PC机与单片机之间的通信接口电路必须经过电平转换,芯片MAX232正好可以完成这个功能。同时单片机要对接收到的控制信号进行检测,然后再通过驱动电路对点阵的行、列进行驱动,继而控制点阵显示屏做出相应的显示。

2.1 电源的设计

2.2 LED显示屏驱动电路的设计

2.2.1行驱动电路模块

行驱动电路如图1所示,由单片机的输入输出口生成数据信号,而51单片机的灌电流(1.6mA左右)和拉电流(-10mA)很小无法直接驱动二极管,所以必须经过驱动器才能驱动点阵二极管。由于系统是16*16点阵显示屏,因此刚好可以利用P0和P2口共16个输入输出口来生成数据信号,再经过16个驱动器三极管并列分别驱动16*16点阵显示屏的16行线。

2.2.2参数计算选择

一条行线上有16个LED,因采用的是动态扫描方式进行显示,每一个LED以7.5mA电流计算,那么瞬时流经电路的电流为16x7.5mA=120mA,驱动管选用9012可满足要求。由于VCC接+5V,而三极管处于开关状态下其集电极与发射极之间的压降约为0.3V,又发光二极管的压降为0.7V,从而集电极电阻的阻值选用(5V-0.3V-0.7V)/0.12A=33Ω。因51单片机灌电流约为1.6mA,同时为了使三极管工作在开关状态下,所以在此电路中I/O口输出必须接4.7K的限流电阻。

2.2.3列选通电路模块

列选通电路由集成电路74HC154构成,74HC154是4线-16线高性能存储器的译码器。当两个选通输入G1和G2为低时, 它可将4个二进制编码的输入译成16个互相独立的输出之一。本设计的行选通电路用51单片机P1口的P1.1-P1.4位输出的二进制编码经4/16线译码器74LS154译码后生成16条列选通信号线,再经过驱动对应的列线。

2.3 单片机接口电路的设计

2.4 汉字的点阵显示原理

每一个字均由16行16列的点阵组成显示。一般我们把它拆分为上部和下部,上部由8*16点阵组成,下部也由8*16点阵组成。其原理如图3所示,单片机首先显示的是左上角的第一列的上半部分,即第0列的p00-p07口。方向为p00到p07,显示汉字“大”时,p05点亮,由上往下排列,为p0.0灭,p0.1灭,p0.2灭,p0.3灭,p0.4灭,p0.5 亮,p0.6灭,p0.7灭。即二进制00000100,转换为16进制为04h。

上半部第一列完成后,继续扫描下半部的第一列,为了接线的方便,我们仍设计成由上往下扫描,即从p27向p20方向扫描,从图可以看到,这一列全部为不亮,即为00000000,16进制则为00h。然后单片机转向上半部第二列,仍为p05点亮,为00000100,即16进制04h。这一列完成后继续进行下半部分的扫描,p21点亮,为二进制00000010,即16进制02h。由这个原理可以看出,无论显示何种字体或图像,都可以用这个方法来分析出它的扫描代码从而显示在屏幕上。

3 软件系统

3.1 处理系统软件设计思想

本设计的处理系统采用AT89C51单片机汇编语言编写。采用12M晶振,串行口定义为8 位异步串行通信口,波特率由定时器T1所确定,为9600。主程序部分主要进行T1定时器初值设置,还有串口中断控制字的设置和各个存储器的初始化等。子程序部分实现的功能是:接收计算机串口发送过来的数据;单片机对接收到的按键标志位进行扫描;单片机根据相应的按键情况转向相应的分支进行处理。各个功能模块分别为串口中断、停止状态、移动显示模块、逐字显示模块。

3.2 控制系统软件设计思想

3.3 Visual Basic控制界面

VB控制界面如图4所示。其界面主要是依据本系统的具体控制要求,本着控制简单、快捷,一目了然等特点来设计的。VB界面设计由一些按钮、菜单、标签和文本框经过合理的布局构成。同时附加文字说明,这样有利于提高系统的交互性。

3.4 MSComm控件主要属性

CommPort属性:该属性设置并返回通信连接的串行端口号,Windows将会利用该串口和外界通信,默认值为1。但是如果用PortOpen属性打开一个并不存在的端口时,MSComm控件会产生错误。

Settings属性:该属性用于设置并返回数据传输速率、奇偶校验、数据比特、停止比特参数。

RThreshold属性:该属性为一阈值,它确定当接收缓冲区内的字节个数达到或超过该值后就产生代码为ComEvReceive的OnComm事件。若RThreshold属性设置为0,则不会产生OnComm事件。

SThreshold属性:该属性为一阈值,当发送缓冲区内字节个数达到或超过该值后就产生代码为ComEvSend的OnComm事件。若SThreshold属性设置为0,则不会产生OnComm事件。

PortOpen属性:PortOpen属性用于打开或者关闭端口。一般情况下在程序开始时打开端口,在程序结束时关闭端口。当应用程序终止时,MSComm控件将自动关闭串口。

CommEvent属性:这是一个非常重要的属性。一旦串口发生通信事件或产生错误,依据产生的事件和错误,MSComm控件为CommEvent属性赋不同的代码,同时产生OnComm事件。用户程序就可在OnComm事件处理程序中针对不同的代码,进行相应的处理。

4 结论

本设计操作简单便捷、交互性强,在利用开发的控制平台上输入控制数据,使用事先约定好的握手协议实现LED点阵显示屏按设定的循环次数和显示方式进行显示。此外,VB还设计有滚动字幕、实时时钟、菜单等功能进一步充实美化界面。

[1]鬲淑芳.模拟电子技术基础[M].西安:陕西师范大学出版社,1997,第2版.

[2]张俊谟.单片机中级教程[M].北京:北京航空航天大学出版社,2002,第2版.

[3]胡辉.单片机原理及应用设计[M].北京:中国水利水电出版社,2005.

[4]《电脑编程技巧与维护》杂志社.Visual Basic编程技巧典型案例解析[M].北京:中国电力出版社,2005.

[5]范逸之.陈文元.Visual Basic与RS-232串行通信控制[M].北京:清华大学出版社,2002.

[6]崔武子.界面设计与Visual Basic实训百例[M].北京:清华大学出版社,2006.

图1 行驱动电路模块

图2 单片机接口电路

图3 汉字的点阵显示原理

图4 VB控制界面

Research on the Design of 16*16 LED Display Control System

LU Fang-jie

(Technology Department of Zhangzhou Television Station, Zhangzhou 363000,China)

The design of 16*16 LED display control system makes use of the MSComm control widget provided by Visual Basic to establish the serial communication between PC and MCU, and to create friendly interface, in order to realize the control of the LED display. Serial procedures programmed by Visual Basic control the cycle and the mode of the LED display by pressing the key on the interface to send control signals to MCU. The MCS-51 code system is adopted to program to receive the serial data.The driver circuit is used for controlling and driving the dispaly of the LED display by the assembler codes. After being tested, the system can carry out automatic control satisfiably.

16*16 LED Display; Electrical level transform; AT89C51MCU; MSComm control widget; serial communication

2010-05-15

卢方杰(1982-),男,福建南靖人,助理工程师,学士,研究方向:电子图形图像多媒体。

TN141

A

1673-1417(2010)03-0004-04

猜你喜欢

控件电平显示屏
一块布就是一个显示屏?
三电平PWM整流器下的地铁牵引供电系统探讨
基于.net的用户定义验证控件的应用分析
苍蝇迷恋显示屏
三相三电平PFC(VIENNA)控制策略研究
关于.net控件数组的探讨
LG申请欧盟商标 或布局MicroLED显示屏
三电平H桥逆变器差模干扰源研究
未来五年LED显示屏出货将保持16%增长
基于嵌入式MINIGUI控件子类化技术的深入研究与应用