点阵显示原理简述

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本文提出了一种以单片机SPCE061A为控制核心的点阵电子显示屏设计思想,该显示屏能够实现图形和字符混合动态显示、键盘显示模式设置、计算机操作、快速刷新等功能,同时具有语音播报、语音控制和屏幕亮度调节功能,介绍了系统的软、硬件设计方案。

关键词: SPEC061A;电子显示屏;点阵;驱动

1 引言

在车站、商场、证券交易所、厂矿企业等一些公共场所,经常需要由LED(发光二极管)电子显示屏发布实时多变的信息或进行广告宣传,要求LED电子显示屏具有修改方便、实时图形和字符混合动态显示、亮度可调等功能。应用计算机对其进行操作和键盘进行设置就显得十分重要。

为了解决以往以8位单片机为核心的LED点阵驱动器速度慢,结构复杂,程序设计困难,功能单一等问题,本系统采用高速SPCE061A单片机,既提高了扫描速度,又保证了动态屏幕字符显示、图形显示、语音播报和语音控制等功能的实现。尤其是本系统增添了屏幕亮度可调功能后,限制了LED中通过的平均电流;又因为SPCE061A的供电电源为3.3~5.0V,这样既可降低功耗、保护LED,又可延长点阵电子显示屏的使用寿命。

2 电子显示屏功能

本文设计的基于SPCE061A的点阵电子显示屏实现了汉字、字符、数字、实时时间

等信息的动态显示,能够做到屏幕信息左右、上下滚屏显示,并可设置显示速度。手动或光敏自动调节LED 显示亮度。

通过计算机人机界面和控制屏键盘可以随时设置系统的显示模式。

本系统具有掉电信息保存功能。掉电后主控制器可将显示内容和显示模式等信息保存在Flash中,再次上电后可以继续显示。

此外系统具有语音功能,可以定时播报时间,显示即时内容;使用语音识别技术可以进行简单的语音控制。

3 显示屏硬件电路设计

LED点阵显示由8*8共64个发光二极管组成。控制时,分别控制阳极8个行控制口和阴极8个列控制口。显示时,向阳极送字模,向阴极送选通信号。送出一行的字模,再送选通信号,再送第二行的字模和选通信号,循环扫描8次,就可以在一块点阵上显示一个字符。显示汉字用16*16 LED,所以一个显示单元由4块8*8点阵组成。一次送两个字节的字模,16列选通信号。

该点阵显示系统以凌阳16位单片机SPCE061A为控制核心,由LED点阵电子显示器,电源,电流驱动电路,地址译码电路,串行接口电路,键盘,时钟模块和计算机控制界面组成,系统框图如图1所示。

图1 点阵电子显示屏系统框图

3.1 主控制器功能

本设计采用16位SPCE061A单片机。该单片机主频最高可达49MHz,处理速度很快,且主频可通过软件调整,能有效解决闪屏问题。硬件资源丰富,内部拥有32KB flash闪存和2KB RAM,在不外扩存储器的情况下就能完成较大的数据存储,大大简化了外围接口电路;32个通用I/O口,专为低功耗设计,在省电模式下,时钟停止,耗电仅为2uA/3.6V。另外,该芯片支持在线仿真,编程接口,可方便实现在线调试。

SPCE061A有丰富的语音功能。1个10位的DAC(数模转换器),麦克输入通道内置麦克风放大器和自动增益(AGC)功能[1];其集成开发环境还配有丰富的语音接口函数API。为本系统扩展语音功能提供了丰富的软硬件环境。

3.2 驱动电路

驱动电路分为行驱动电路和列驱动电路,行驱动电路如图2所示。

图2 行驱动电路

行驱动即LED的阳极,原理是送出电流使二极管发亮,由74HC595和驱动芯片ULN2803组成。主控制器将字模通过串行方式送给控制阳极的串转并器件74HC595。74HC595是CMOS型TTL器件,功耗低,且速度可达到100MHz,适合作LED的显示驱动[2]。每个显示单元,由两片74HC595级联控制,一个显示单元需两片74HC595,字模数据信号由主控制器分别送出,时钟等控制信号则通过同一个I/O口同时送出。这样既能避免互相干扰,又能灵活控制。TTL电平的驱动能力有限,只能驱动8个TTL器件,当显示单元配置较多时,驱动能力不够,信号可能误传,解决的方法是加一级74HC245,将一路信号变成8路输出,提高了驱动能力,保证信号的准确性。由于动态扫描的扫描速度心须达到60HZ以上,否则会产生闪烁现象,因此提高扫描速度至关重要。在程序中将缓冲区内各个单元的字模整合成为一个数并行送出,可以提高扫描速度。74HC595将字模送给ULN2803驱动LED的阳极。ULN2803是8路达林顿管,驱动能力较强,单路最大输入电流可达500mA;由于ULN2803不能输出高电平,驱动时须加上合适的上拉电阻以获得合适的驱动电流。

列驱动即控制LED的阴极,原理是输入电流也采用ULN2803做列驱动器。点阵显示必须用动态显示,任何时刻只能有一列选通,特别设计将各个显示单元的对应列接在一起,这样扫描一个显示单元的周期就完成了整个显示屏扫描,提高了扫描速度。一个显示单元的16路选通信号首先由4-16译码器74154送出,再送给列驱动器,由于ULN2803为反向驱动,故在74154和ULN2803之间加7406作为反向。

3.3 亮度调节电路

显示屏的亮度调节是通过改变VCC的电压,从而调整流经LED的电流来实现的。亮度自动调节是利用光敏电阻或光电三极管来检测外部的光强,根据光强来自动调节LED亮度。亮度可调电路如图3所示。

图3 亮度可调电路

第一部分是亮度自动调节电路。RW1/ RW2控制自动调节的最高/最低输出电压。RW3控制对外界感光的灵敏度。R2,C2组成一阶低通滤波器,滤除外界干扰光线(如日光灯)对系统的高频干扰。第二部分是手动亮度调节电路。RW5为后面的LM317调整段提供一个可调的电压。第三部分是最高输出电压保护电路调节RW4设定最高的输出电压。用一个三态开关SW1做两种工作方式的切换。选择工作方式1时,可以对亮度进行手动调节;选择工作方式2时,钳位电路起作用,LM317输出最大电压,此时亮度最亮;选择工作方式3时,进行亮度自动调节。

3.4 时钟模块

时钟模块采用DS1302。这是一种高性能、低功耗、带RAM的实时时钟芯片,它提供秒、分、小时、日、星期、月、年(带闰年)等信息。能够以24小时或12小时模式工作,并且提供AM/PM指示。与单片机间通过简单串行接口通信,只需3根线便可以和单片机以同步串行方式通信。该芯片同时提供了对后备电源进行涓流充电的能力[3],可以掉电保存时间。

4 程序设计

整个软件分为三部分,即显示部分、控制部分和通信部分。通信部分采用Visual C++编程语言。VC在标准串口通信方面提供功能强大的通信控件MSCOMM,该控件可设置串行通信的数据发送和接收,对串口状态及串口通信的信息格式和协议进行设置,直接利用PC机的RS-232串口发送数据。为实现单片机与PC机的可靠通信,须保证双方具有相同的数据格式和波特率,这里波特率设为115200bps。

相关文档
最新文档