毕业论文之点阵式LED汉字广告屏的设计与制作_第1页
毕业论文之点阵式LED汉字广告屏的设计与制作_第2页
毕业论文之点阵式LED汉字广告屏的设计与制作_第3页
毕业论文之点阵式LED汉字广告屏的设计与制作_第4页
毕业论文之点阵式LED汉字广告屏的设计与制作_第5页
已阅读5页,还剩167页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 HYPERLINK 本科毕业论文(设计)论文(设计)题目:点阵式汉字广告屏的设计与制作学 院:计算机科学与技术专 业:电子科学与技术班 级:电子科学与技术学 号:20学生姓名:魏广寅指导教师:杨鲁平2008年 6 月 2日贵州大学本科毕业论文(设计)诚信责任书本人郑重声明:本人所呈交的毕业论文(设计),是在导师的指导下独立进行研究所完成。毕业论文(设计)中凡引用他人已经发表或未发表的成果、数据、观点等,均已明确注明出处。特此声明。论文(设计)作者签名:日 期:目录中文摘要及关键词. = 5 * ROMAN VAbstract & Keywords. = 6 * ROMAN VI前言.111

2、LED电子显示屏概述112 LED电子显示屏的分类113 LED显示屏的应用示例214 设计任务.2显示原理及控制方式分析.321 LED点阵模块结构322 LED 动态显示原理 .323 LED常见的控制方式5总体方案设计与分析.731 显示单元的考虑.732 滚屏的实现.733 关于可扩展性.734 微控制器的考虑.735 关于点阵数据的存储方式.836 关于显示内容的更新.837 总体电路结构及工作原理.9371 硬件电路框图.9372 工作原理.10硬件电路设计.1241 显示单元电路设计.12411 点阵LED模块的选择.13412 列驱动电路设计.13413 行驱动电路设计.154

3、14 行驱动电路元件参数计算.1642 单片机控制系统电路设计.17421 单片机的选型. 17422 STC单片机在条屏运用中的优越性.17423 单片机系统电路设计.1943 字库与单片机的接口设计.20431 字库芯片选型.20432 字库芯片的使用方法.20433 字库芯片的电气特性.21434 字库芯片与单片机的接口设计.23435 字库芯片3.3V电源设计23436 5V-3.3V的电平转换电路设计.2444 与上位机的通信电路设计.25441 通信协议的选择25442 MAX232电平转换芯片特点26443 单片机与PC间通信接口电路设计.2745 对于系统电源及通信电缆的选择.

4、27451 对于LED显示屏的电源要求.27452 开关电源在条屏应用中的优势.28单片机软件设计.2951 开发工具及语言.2952 单片机软件流程.2953 单片机软件中几个重要算法的实现.30531 显示缓存技术与映射关系.30532 LED点阵与显示缓冲区建立连续编址映射的算法30533 实现动态显示的算法.31534 实现滚屏的算法3154 下位机软件有关的计算.32541 UART异步串行口波特率计算32542 SPI同步串行口波特率计算.33543 汉字内码与点阵地址的换算.3355 片上E2PROM的空间分配3356 单片机与PC机间的通信协议.34上位机软件设计.3561 上

5、位机软件开发环境.3562 上位机软件流程.3563 上位机软件界面设计.36631 控件布局.36632 MSCOMM控件属性.3664 上位机软件关键算法实现.37641 PC机串口操作.37642字符转为GB2312内码的算法.3865 上位机软件使用方法及运行环境.39651 控件功能及使用方法.39652 运行环境.40PCB结构设计.4171 PCB设计平台.4172 元件布局及PCB整体结构工艺.4173 布线工艺与准则.4174 PCB实物照片.43使用说明与测试结果.4481 LED汉字显示屏使用说明.44811 使用环境.44812 安装上位机软件44813 更改显示内容.

6、44814 更换显示模式.4582 测试结果.45821 软件测试.45822 实际刷新率测试46823 实际移动速度测试.46824 电气指标测试4783 设计任务完成情况.48总结.49参考文献.50致谢50附录51附图1 并行驱动方式电路图.51附图2 本设计完整电路图(串行传输方式).52附图3 PCB元件布局.53附图4 PCB顶层布线.54附图5 PCB底层布线.55附图6 元件清单.56附图7 本设计作品照片.57附图8 本设计显示效果照片.58清单1单片机程序清单.59清单2上位机软件VB程序清单 .。79点阵式LED汉字广告屏的设计与制作摘要本设计使用STC12C系列高速单片

7、机作为主控制模块,利用简单的外围电路来驱动9616的点阵LED显示屏。利用STC12C系列高速单片机本身强大的功能和内部E2PROM,可以很方便的实现单片机与PC机间的数据传输及存储,并能利用软件方便的进行显示内容的多样变化,另一方面点阵显示屏广泛的应用于医院、机场、银行等公共场所,所以本设计具有很强的现实应用性。本LED显示屏能够以动态扫描的方式同时显示六个1616点阵汉字,并能通过上位机软件修改显示内容和显示效果等等。采用IAP在应用可编程技术,把字符内码存储在空闲的单片机程序存储器空间,使本LED显示系统能掉电存储1024个字符。设计中采用了SPI接口的GB2312标准字库,支持所有的国

8、标字符和ASC = 2 * ROMAN II标准字符的显示。因为采用串行传输方式,使本系统的可扩展性得到提升,便于多个显示单元的级联。本文从LED的显示原理入手,详细阐述了LED动态显示的过程,以及硬件电路的设计、计算和软件的算法。关键词 动态显示Ddynamic Display单片机MCU 串行传输Serial Data Transfer点阵字库Llattice LlibraryThe Design and Making ofChinese Characters Lattice LED DisplayAbstractThis design uses STC12C series MCU as

9、a main controller, and depends on a simple external circuit to drive 9616 the lattice LED display. By using its own powerful functions and capacity of internal E2PROM, it is easy to accomplish the MCU and PC and E2PROM for internal storage, data transmission equipment ,and it also can be used conven

10、iently to show a variety of content changes. The other dot matrix display is widely used in hospitals, airports, banks and other public places. Therefore, the design has a strong practical application. The LED Display dynamic scan can show the way at the same time six 16 16 dot matrix Chinese charac

11、ters, and PC software can modify the content and effect shows, and so on. IAP used in the application of programmable technology, the characters within the code stored in the SCM free program memory space, so that the LED display system can store 1,024 brown-out characters. SPI used in the design of

12、 the interface standard GB2312 character, to support all the GB2312 standard ASCII characters and characters of the show. Because serial transmission used, so that the system can be enhanced scalability, for a number of display units of the cascade. This article from the start LED display principle,

13、 elaborated on the LED display dynamic process, as well as hardware circuit design, computing and software algorithms.KeywordsDdynamic Display动态显示MCU单片机Serial Data Transfer串行传输Llattice Llibrary点阵字库前言11 LED电子显示屏概述LED电子显示屏(Light Emitting Diode Panel)是由几百-几十万个半导体发光二极管构成的像素点,按矩阵均匀排列组成。利用不同的半导体材料可以制造不同色彩

14、的LED像素点。目前应用最广的是红色、绿色、黄色。而蓝色和纯绿色LED的开发已经达到了实用阶段。LED显示屏是一种通过控制半导体发光二极管的亮度的方式,来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。 LED显示屏分为图文显示屏和条幅显示屏,均由LED矩阵块组成。图文显示屏可与计算机同步显示汉字、英文文本和图形;而条幅显示屏则适用于小容量的字符信息显示。LED显示屏因为其像素单元是主动发光的,具有亮度高,视角广、工作电压低、功耗小、寿命长、耐冲击和性能稳定等优点。因而被广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共

15、场所。 LED显示屏的发展前景极为广阔,目前正朝着更高亮度、更高气候耐受性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。 12 LED电子显示屏的分类按颜色分类单基色显示屏:单一颜色(红色或绿色)。 双基色显示屏:红和绿双基色,256级灰度、可以显示65536种颜色。 全彩色显示屏:红、绿、蓝三基色,256级灰度的全彩色显示屏可以显示一千六百多万种颜色。 按显示器件分类LED数码显示屏:显示器件为7段码数码管,适于制作时钟屏、利率屏等,显示数字的电子显示屏。LED点阵图文显示屏:显示器件是由许多均匀排列的发光二极管组成的点阵显示模块,适于播放文字、图像信息。 按使用场合分类室内显

16、示屏:发光点较小,一般3mm-8mm,显示面积一般零点几至十几平方米。 室外显示屏:面积一般几十平方米至几百平方米,亮度高,可在阳光下工作,具有防风、防雨、防水功能。 按发光点直径分类室内屏:3mm、3.75mm、5mm、 室外屏:10mm、12mm、16mm、19mm、21mm、26mm 室外屏发光的基本单元为发光筒,发光筒的原理是将一组红、绿、蓝发光二极管封在一个塑料筒内共同发光增强亮度。13LED显示屏的应用示例见图1.1 左:图文屏 右:条幅屏图1.1 LED电子显示屏应用示例其中的LED点阵单色图文动态条幅屏(下文中简称条屏),因为成本低廉、可靠性高、显示效果优良,所以成为点阵式LE

17、D汉字广告屏中的主流产品。14 设计任务本设计的任务就是完成一个可以随意扩展显示单元数目的单色动态条幅屏。任务要求:能同时显示六个简体汉字能实现汉字在屏幕上的移动第2章 显示原理及控制方式分析21 LED点阵模块结构八十年代以来出现了组合型模块,以发光二极管为像素,它用高亮度发光二极管芯阵列组合后,环氧树脂和塑模封装而成。这种一体化封装的点阵LED模块,具有高亮度、引脚少、视角大、寿命长、耐湿、耐冷热、耐腐蚀等特点。LED点阵规模常见的有44、48、57、58、88、1616等等。根据像素颜色的数目可分为单色、双基色、三基色等。像素颜色不同,所显示的文字、图象等内容的颜色也不同。单色点阵只能显

18、示固定色彩如红、绿、黄等单色,双基色和三基色点阵显示内容的颜色由像素内不同颜色发光二极管点亮组合方式决定,如红绿都亮时可显示黄色,如果按照脉冲方式控制二极管的点亮时间,则可实现256或更高级灰度显示,即可实现真彩色显示。图2.1示出最常见的88单色LED点阵显示器的内部电路结构和外型规格,其它型号点阵的结构与引脚可试验获得。图2.1 88单色LED模块内部电路单块使用时,既可代替数码管显示数字,也可显示各种中西文字及符号如5x7点阵显示器用于显示西文字母58点阵显示器用于显示中西文,8x8点阵可以用于显示简单的中文文字,也可用于简单图形显示。用多块点阵显示器组合则可构成大屏幕显示器,但这类实用

19、装置常通过PC机或单片机控制驱动。22LED 动态显示原理 LED点阵显示系统中各模块的显示方式: 有静态和动态显示两种。静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲电压驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的列数据信号,反复循环以上操作,就可显示各种图形或文字信息。点阵式LED汉字广告屏绝大部分是采用动态扫描显示方式,这种显示方式巧妙地利用了人眼的视觉暂留特性。将连续的几帧画面高速的循环显示,只要帧速率高于24帧/秒,人眼看起来就是一个完整的,相对静止的画面。最典型的例

20、子就是电影放映机。在电子领域中,因为这种动态扫描显示方式极大的缩减了发光单元的信号线数量,因此在LED显示技术中被广泛使用。以88点阵模块为例,说明一下其使用方法及控制过程。图2.1中,红色水平线Y0、Y1Y7叫做行线,接内部发光二极管的阳极,每一行8个LED的阳极都接在本行的行线上。相邻两行线间绝缘。同样,蓝色竖直线X0、X1X7叫做列线,接内部每列8个LED的阴极,相邻两列线间绝缘。在这种形式的LED点阵模块中,若在某行线上施加高电平(用“1”表示),在某列线上施加低电平(用“0”表示)。则行线和列线的交叉点处的LED就会有电流流过而发光。比如,Y7为1,X0为0,则右下角的LED点亮。再

21、如Y0为1,X0到X7均为0,则最上面一行8个LED全点亮。现描述一下用动态扫描显示的方式,显示字符“B”的过程。其过程如图2.2图2.2 用动态扫描显示字符“B”的过程假设X,Y为两个8位宽的字节型数据,X的每位对应LED模块的8根列线X7-X0,同样Y的每位对应LED模块的8根行线Y7-Y0。在这个示例中,Y叫行扫描线,行扫描线在每个时刻只有一根线为“1”即有效行选通电平,X叫列数据线,其内容就是点阵化的字模数据的体现。下面用伪代码描述动态显示的过程。(1)Y=0 x01,X=0 xFF,如图 2.2第一帧;(2)Y=0 x02,X=0 x87,如图 2.2第二帧;(3)Y=0 x04,X

22、=0 xBB,如图 2.2第三帧;(4)Y=0 x08,X=0 xBB,如图 2.2第四帧;(5)Y=0 x10,X=0 x87,如图 2.2第五帧;(6)Y=0 x20,X=0 xBB,如图 2.2第六帧;(7)Y=0 x40,X=0 xBB,如图 2.2第七帧;(8)Y=0 x80,X=0 x87,如图 2.2第八帧;(9)跳到第(1)步循环。如果高速地进行(1)到(9)的循环,且两个步骤间的间隔时间小于1/24秒,由于视觉暂留。LED显示屏上将呈现出一个完整的“B”字符。这就是动态扫描的原理。只不过实际运用的时候,列线和行线通常不止8位,还要根据列线和行线的数量来决定是用行线或列线来做扫

23、描线。例如0601条屏(每行6个汉字,共1行),行线有16根,列线有96根。如果用列线来做扫描线,则每列LED在每96次循环扫描中只可能亮一次,则其发光视觉平均亮度为直流亮度的1/96。如果用行线来做扫描线,则每16次循环,每行LED就能亮一次,其发光视觉平均亮度为直流情况下的1/16。可见,用行线做扫描线,因为其发光周期的占空比较大,其视觉亮度是用列线做扫描线的6倍。因而发光效率比前者高。在实际运用的时候,还要在每两帧之间加上合适的延时,以使人眼能清晰的看见发光。在帧切换的时候还要加入余辉消除处理。比如先将扫描线全部设置为无效电平,送下一行的列数据后再选通扫描线,避免出现尾影。23 LED常

24、见的控制方式目前常见的是并行传输方式(见附录1.1),通过8位锁存器将8位总线上的列数据进行锁存显示,各8位锁存器的片选信号由译码器提供。此种方式的优点是传输速度快,对微控制器(MCU)的通信速度要求较低。但是这种方案最大的缺点是不便于随意扩展显示单元的数目。每增加一个1616点阵的全角汉字显示单元,就需要在之前的电路上多增加两根地址线,这就要求在PCB布线的时候要留有充足的地址线冗余量。再一个缺点是,每个单元的PCB随着安放位置的不同,布线结构也不相同,不利于厂家批量生产。并行传输需要的芯片较多,因此市场上已经出现用FPGA,CPLD等高密度可编程逻辑器件(PLD)来取代传统锁存器IC的方案

25、。成本有所下降,但可扩展性仍旧较差。因此,并行传输方式适用于显示单元数目确定的条屏。随着广告屏显示内容的多媒体化,对控制器传输速度,运算能力的要求越来越高。因此控制器的种类也在不断发展以适应要求,从最初的8051单片机,到PIC单片机,又到FPGA,直到现在的ARM处理器。不同功能档次的广告屏对应着不同的处理器。一以传统8051单片机为控制器的LED显示屏。因受到单片机运算速度及通信速率的限制,LED动态显示的刷新率不可能做得太高。对显示效果和移动算法的处理也比较吃力,在实际显示效果上有比较明显的闪烁感。除此之外,传统8051单片机的内部资源贫乏,仅128字节的数据存储器,几K字节的程序存储器

26、,无E2PROM,SPI。这就需要对单片机扩展外设,无疑增加了硬件成本。因此,8051控制的条屏只能用于显示内容及其简单,不需要经常更改显示内容的场合。二以PIC单片机为控制器的LED显示屏。因PIC单片机是RISC架构的工业专用单片机,处理指令的速度有所增加,抗干扰能力优秀,型号种类繁多。作为条屏的控制器,可以明显的改善显示效果,同时PIC单片机内部的资源较丰富,可节省外部电路设计难度,同时降低了硬件成本。因此,以PIC单片机为控制器的条屏目前仍是单色条屏市场的主流。三以FPGA(复杂可编程逻辑门阵列)为控制器的LED显示屏。FPGA以高速、并行著称。是近年来新兴的可编程逻辑器件。用他作为L

27、ED显示屏的控制器,能够高速的处理色阶PWM信号、高速的完成动态扫描逻辑、高速的完成字符移动算法。因此被运用于双基色、三基色的显示系统。但是其成本较高,开发难度较大。四以ARM(32位RISC架构高性能微处理器)为控制器的LED显示屏。ARM有着极高的指令效率,极高的时钟频率。因此其运算能力非常强大,内部资源也十分丰富,极大的简化了硬件设计的难度,缩短了开发周期。在条屏的运用中,能用ARM来实现花样繁多的显示方式,以及高色阶,多像素的全彩屏驱动。ARM与FPGA的组合更是功能强大,除了海量存储技术,无线更新技术外,还能实时地显示视频信号。因此,以ARM为控制器的显示屏常为视频全彩屏。第3章总体

28、方案设计与分析31 显示单元的考虑显示一个简体汉字,至少需要1616点阵来描述。为了在较远距离处获得清晰的视觉效果,本设计采用4个88点阵,像素直径5mm的LED模块拼接成1616点阵的LED阵列。这样每个1616汉字能够获得1212cm的显示尺寸,因此在50米处仍能清晰阅读。本设计要求整个屏幕能同时显示六个汉字,则至少需要用24个88的LED模块拼接成9616的矩阵。3. 2滚屏的实现字符的位置在屏幕上实现移动,即术语“滚屏”。可以用硬件实现,但无疑增加了额外的硬件成本及设计难度。因此本设计采用软件算法实现左滚屏、左暂停、定格显示等常见滚屏方式。用软件来完成滚屏算法,其最大的优点在于成本低廉

29、,而且可维护性、可升级性大大增强。3. 3 关于可扩展性除了基本要求外,本设计还要实现显示单元数目的随意扩展。在传统的并行传输方式中,因受到列数据锁存器地址线数目的制约,不能随意的增添显示单元,且每个显示单元的电路结构不同,PCB结构也不同,完全不符合模块化设计的要求。因此摒弃了传统的并行传输方式,而采用独特的串行锁存技术,通过控制五根总线就能实现各显示单元之间的列数据锁存。不仅板间连接简单,更是降低了PCB布局及布线的难度。每个显示单元的PCB都是完全一样的,便于量产。34微控制器的考虑因本设计采用软件来实现滚屏,且传输方式为串行方式。所以对微控制器单元的处理速度要求较高,可供选择的有ARM

30、7和高速8位单片机。ARM的处理速度极快,但对于条屏的应用,ARM内部的资源浪费严重,且成本较高。因此选择高速8位单片机作为控制器,常见的高速8位单片机有AVR系列单片机,C8051F系列单片机,STC12C系列单片机。这几种单片机的处理速度均能达到1MIPS/MHz(在时钟频率为1MHz时处理能力为每秒100万条指令),但AVR系列单片机的极限时钟频率只能到16MHz,而C8051F系列SOC类似于ARM7,时钟速度可到100MHz,但会浪费其内部丰富的资源,而且价格昂贵,用在单色条屏的控制中颇感浪费。于是最佳选择为STC12C系列单片机,其最高时钟能到48MHz,且有较丰富的接口及存储器资

31、源,价格极其低廉,零售价仅为9元/片。大幅降低了产品成本。35关于点阵数据的存储方式目前使用最广泛的技术是,通过上位机软件将待显示的字符串转换为对应的点阵字模数据,通过烧写的方式将这些字模数据按一定的顺序编址后存储在E2PROM中。在条屏显示的过程中按规定的方式取出E2PROM中的字模数据进行处理。对于一个1616点阵的汉字字模数据,需要连续32字节的E2PROM空间来存储。照此计算,若有256个需要显示的字符,则至少需要32B256=8192字节(8KB)的E2PROM存储空间。通常的单片机内部没有集成这么大容量的E2PROM。因此这种方案,需要在单片机外部扩展大容量的E2PROM,增加硬件

32、成本。上位机程序设计由于涉及到汉字取模,取模算法的难度较大。在多字下载的时候传输时间也较长。诸多弊端使本设计放弃了传统方案。而本设计创新使用了专用的点阵字库芯片,成本仅为8元,内含各种点阵规格的GB2312、ASCII等标准字库。专用字库芯片采用微型SO-8封装,使用高速同步串行SPI接口进行读写操作,节省了控制器的I/O。在本设计中,单片机内部的小容量E2PROM,用于存储待显示汉字的GB2312标准机内码,每个全角字符的内码占2字节,则在同样需要显示256个汉字的情况下,这种方案仅占用512字节的E2PROM空间。36关于显示内容的更新目前常用的下载方式有串口下载、USB下载、无线下载等。

33、考虑到本设计的上、下位机进行一次通信时的数据量不大(2KB以内),而且对通信的速度及可靠性要求并不严格。因此本设计采用PC机串口来作为下载接口,PC机串口为RS-232C标准,其特点是共模传输,因此通信电缆可以是成本低廉的普通双绞线,同轴屏蔽线等。PC机串口的驱动程序编写较为简单,不需要掌握复杂的通信协议。汉字点阵数据采用现成的字库芯片,需要通过汉字的机内码作地址来取出相应汉字的点阵字模数据。因此上位机软件的任务就是:将待显示的字符转换成对应的标准机内码,并把操作者对下位机显示方式、速度等进行设置的常数,通过RS232总线按一定的通信协议一起发送到下位机。总体电路结构及工作原理371 硬件电路

34、框图通过前面对各种方案的比较与分析,初步构建硬件系统框图如图3.1图3.1 LED显示屏硬件框图在图3.1中,X0、X1Xn为显示单元。每个显示单元由一个1616点阵的LED模块和一个16位宽的移位锁存器(串行并行转换器)构成。所有显示单元的16根行线均连接到公共的行扫描驱动电路。而每个显示单元的列数据则由16位移位锁存器并行输出口提供。中央微处理器MCU负责与所有外围设备的协调通信,以及各种算法的处理。MCU用通用I/O口来驱动行扫描驱动电路。用通用I/O口模拟同步串行接口以实现和列数据锁存器(移位锁存器)之间的单向通信。MCU通过内部集成的SPI接口和字库芯片进行双向通信。PC机(上位机)

35、的RS-232C电平经过转换后,通过UART接口与MCU进行双向通信。电源则为各个模块提供稳定的电压以及足够的电流。372 工作原理单片机上电后就检测单片机P3.2脚(DownLoad)的电平,如果按住LED显示屏上的“DownLoad”键开机,则单片机P3.2脚被强制拉为低电平,显示屏被引导进入下载模式。这时单片机把UART异步串行口初始化为“方式一”工作,波特率为115200bps。之后不断检测从UART传入的数据,如果连续接收到的两字节数据与程序中约定的两字节数据帧同步码(0 xA0,0 xFA)相同。则判定下载命令合法,真正进入下载流程。设置两字节同步码是为了降低误码干扰的概率。进入下

36、载流程后,擦除连续从0 x2600地址开始的5个E2PROM扇区,每个扇区512字节。然后连续接收上位机发出的7字节设置数据,并从E2PROM第一个扇区首地址0 x2600开始依次存放。这样,第一个扇区就保存了上位机对下位机的所有设置数据,包括刷新率,移动速度,显示模式以及总共需要显示的字符数等等。保存好以上7字节的设置数据后,紧接着连续地接收上位机发出的不大于2048个内码数据,并依次保存在第二个E2PROM扇区中。因为第二到第五扇区是连续编址的,所以第二扇区存满后会自动存放在第三扇区,以次类推。汉字内码的数据量由上位机确定。当单片机接收到下载结束符0 x8F时,执行软件复位,强迫程序在AP

37、区从头运行。这时若仍然按住“DownLoad”键,则再一次进入下载模式。如果开机的时候不按下“DownLoad”键,则单片机程序被引导进入显示模式。进入显示模式后,首先把单片机的SPI接口初始化为“空闲低电平/上升沿驱动”模式,为读写字库芯片作准备。在单片机内部的扩展数据存储器(xdata区)中开辟192字节(1536位)动态显示缓冲区Display_Buffer和32字节的字模数据缓存区Temp_Buffer,两个缓存区编址连续。Display_Buffer中的一位与LED的一个点阵一一对应。(详细对应关系见章节531显示缓存技术与映射关系)经过这样的映射处理,使字符在显示中的移动算法变得简

38、单灵活,不论进行何种显示效果处理,只需要对Display_Buffer进行操作。遵循结构化的程序设计思路。把单片机的在显示模式的所有工作量分为以下三个任务:一扫描显示任务:扫描显示任务负责把Display_Buffer中的数据依次发送到列驱动器74HC595,并按严格的时序高电平选通十六根行扫描线(Y0Y15),使每一列数据对应着一个行线状态。二移动处理任务:移动处理任务负责完成显示字符逐点阵向左移动的算法处理,这是最基本的显示效果。其它大部分显示效果如左移六字暂停,全屏定格显示等都是以逐位左移为基础。对显示字符的移动,实质上是对显示缓冲区Display_Buffer内数据的移动。该算法是将D

39、isplay_Buffer和Temp_Buffer中的数据首尾相接地左移一位,并不断把Temp_Buffer移入Display_Buffe。三字符更新任务:在单片机的xdata区开辟了32字节的字模数据缓存区Temp_Buffer。该缓存区与Display_Buffer编址连续。当调用字符更新任务时,程序从E2PROM内码区指定位置读取相邻两字节的汉字内码数据。并通过一定的算法,把内码数据变换为该内码对应汉字的字模数据在字库芯片中的地址。单片机通过SPI接口,向字库芯片发送读命令和地址,字库芯片返回连续32字节的全角汉字字模数据或16字节的ASCII半角字模数据。这些字模数据就存储在32字节的

40、字模数据缓存区中。字模数据缓存区Temp_Buffer中的数据可通过调用移动处理任务而逐位转移至动态显示缓冲区Display_Buffer中。三个任务彼此独立,又相互联系。下面用实际的C51程序来说明一下如何实现简单的左移显示效果。void Dis_Mode_1(void)/左移显示效果unsigned char i,j,k;unsigned int n;unsigned int strings;while(1)/所有显示效果都是无限循环for(n=0;nCNT;n+=2)/ CNT是字符总数,每字符内码2字节,所以以2步进strings =EEPROM_read (ADDR_GB2312+n

41、); /从EEPROM中读取内码高字节strings=8; /左移8位以合成16位数据strings +=EEPROM_read (ADDR_GB2312+n+1); /从EEPROM中读取内码低字节k=Load_Next_Charctor(strings);/调用更新字符任务,半角返回8全角返回16for(i=0;ik;i+)/按照字符类型确定多少次移动可把Temp_Buffer全部移入Display_Buffefor(j=0;jMove_L_Speed;j+) / Move_L_Speed决定移动速度LED_Scan(Refesh_Speed,Back_Ground);/调用扫描任务Shi

42、ft_Left_One_bit(); /调用移动处理任务 第4章硬件电路设计41显示单元电路设计为了提高点阵LED的视觉亮度,本设计用行线做扫描线,列线做数据线。每行的显示占空比为直流情况下的1/16。为了再进一步的提高视觉亮度,选用了红绿双色LED点阵模块YLM2388ASRG,每个点阵内部有红色,绿色两个发光体。两组发光管公用8根行线,列线独立。本设计将两组LED合成一组使用。由于红光和绿光的光子能量不同,红色LED的发光门限电压要比绿光稍低,因此红绿LED不能简单并联使用。如果这样,绿色LED的端电压就会受红色LED的钳制而不发光。为此,在红绿色LED各自的阴极回路(列线回路)中串联了一

43、个分压电阻,以削弱红色LED的电压钳制作用,使两组LED均能正常发光,根据色光的合成原理,红绿色加光混合后呈现黄色。本设计显示单元以及行列驱动电路如图4.1图4.1 1616LED点阵 显示单元以及行列驱动电路411 LED点阵模块的选择本设计采用四个88点阵红绿双色的LED模块拼接成一个1616的单色模块使用。这样能获得较大的显示单元尺寸和发光亮度。412 列驱动电路设计如图4.1下面虚线框内,本设计中,每个1616点阵的列驱动电路由两个串联的8位移位锁存器74HC595构成。74HC595,是为Motorola的SPI总线开发的一款串并转换芯片。由于74HC595的输入输出电平兼容LSTT

44、L,NMOS,CMOS电平,且具有较强的输出负载能力,而被广泛地运用于MCU(微控制器)、MPU(微处理器)的I/O口扩展。74HC595在5V供电的时候能够达到30MHz的时钟速度,每个并行输出端口均能承受20mA的灌电流和拉电流。这个特点保证了不用增加额外的扩流电路即可轻松的驱动LED。它输入端允许500nS的上升(下降)时间,对严重畸形的时钟脉冲仍能检测。这样就可以容纳较大的传输线对地电容,使本设计的抗干扰能力增强。74HC595并行输出端与LED模块列线之间通过20的电阻连接,这里电阻起到分压,去除红色LED的并联嵌位作用。使红绿两组LED均能正常发光。由于LED显示屏的工作电流时刻在

45、变化,造成了系统电压的波动。这种电压波动有高频成分,也有低频成分。轻则对周围无线电环境造成电磁污染,重则使系统时钟紊乱,逻辑错误。为避免此,在每个74HC595的电源VCC和GND旁边都并联了两个电容,用于滤波和退耦。稳定系统电压,旁路掉电源中的高频脉动成份。消除自激,减小对外杂散电磁辐射,提高EMI电磁兼容性。74HC595的引脚及逻辑功能如图4.2图4.2 74HC595管脚图74HC595逻辑图74HC595的管脚功能描述见表4.1:管脚号管脚名称管脚功能描述1QB锁存器输出,三态2QC锁存器输出,三态3QD锁存器输出,三态4QE锁存器输出,三态5QF锁存器输出,三态6QG锁存器输出,三

46、态7QH锁存器输出,三态8GND电源地9SQH串行输出,用于级联。无三态输出功能10Reset低电平有效,当此管脚上出现低电平时,将复位内部的移位寄存器,但不影响8位锁存器的值11Shift Clk移位寄存器时钟输入,上升沿将把A脚上的数据移入内部寄存器12Latch Clk锁存时钟输入,上升沿将把内部移位寄存器的值锁存起来13Output Enable低电平有效,将锁存器的输出映射到输出并行口(QA-QH)上。当输入高电平时,高阻态,同时本芯片的串行输出无效14A串行数据输入,数据从这个管脚移进内部的8位串行移位寄存器15QA锁存器输出,三态16VCC电源正,2-6V DC表4.1 74HC

47、595的管脚功能描述413 行驱动电路设计因为本设计要求的行驱动电流较大,目前尚无合适的集成电路来胜任。因此本设计的行驱动电路采用三极管扩流方式,如图4.3。图4.3 两种三极管扩流方式(共集,共射)共集驱动方式, 又称射极跟随器,当电源电压足够时,在负载上获得的电压始终等于基极对地电压Ub减去发射结压降Ube。硅管的Ube一般为0.7V左右,因此在5V供电系统中,在负载上最多能获得4.3V的电压,若Ic=1 A 则在三极管上的管耗为1A0.7V=0.7W,管耗较大,需选用中功率的管子。还有一个重要的特点,共集电路的基极是用高电平驱动,而单片机在复位期间,所有I/O口都呈现高电平。这样的话,在

48、开机上电复位的瞬间,在所有的行线上都会获得电压。而造成开机瞬间全屏显示或造成巨大的浪涌电流冲击,使电源电压跌落,单片机工作异常。而使用共射驱动方式的话,同样的电源电压下,负载端能获得4.7V的电压,Ic=1A时的管耗只有0.3W。因此可选用小功率器件。共射电路的基极驱动是用低电平,这就不会造成上述共集电路的浪涌电流影响。同时,大部分单片机的I/O是弱上拉输出,也即是单片机能承受较大的灌电流,而只能提供微弱的拉电流。因此,综合权衡利弊,本设计采用PNP管共射电路作为行扫描线驱动。现对行驱动电路各元件参数进行计算。414 行驱动电路元件参数计算假设条屏使用在极端情况下,每一行的所有LED全部点亮。

49、每行共96点阵,每个点阵包含红色,绿色两个LED。因此每行共192个LED。普通LED的安全工作电流在520mA之间,为获得较高亮度,又要兼顾其工作寿命。本设计中,每只LED工作电流取15mA。如此可知,当一行全点亮的时候总电流:;管耗:Pc=ICVCEsat(管饱和压降)=2.88A0.3V=0.86W;STC12C系列单片机的每个I/O口能独立承受20mA的灌电流,也即是能够给共射驱动电路基极提供20mA的偏置电流。根据上述集电极电流和基极电流的比值,可计算出行扫描驱动三极管的直流电流放大系数.直流电流放大系数:;对于基极偏流电阻,则起到对基极20mA偏置电流限流作用:基极限流电阻:;根据

50、上述计算,综合其成本、封装、散热等因素考虑。本设计最终采用三只C8550D 小功率PNP管并联成一只PNP中功率管使用。其主要参数见图4.4 。C8550D官方数据手册摘录.图4.4 C8550D官方数据手册摘录从C8550D的官方数据手册上可知:最大集电极电流: Ic=-1.5A;最大集电极耗散功率:Pc=1W;直流电流放大系数: =160300;三管并联,其Ic可以扩展到4.5A,不变,Pc扩展到3W。本人所购买的50只同一批号的C8550D,经实测,均在150左右。因此三管并联无须增加射极均流电阻。根据确定基极电流Ib和基极限流电阻R分别为:基极电流:则基极限流电阻:。在实际设计中,基极

51、限流电阻使用标准序列值200。采用贴片1206封装,便于缩小PCB体积,增加整体美感。42 单片机控制系统电路设计421 单片机的选型根据方案论证的结果,本设计采用STC12C系列的STC12C5412AD作为主控芯片。STC单片机是深圳宏晶科技的IC产品。STC单片机完全兼容传统51内核,因此使用的编译器和指令代码都和传统51单片机相同。对于STC12C5412AD,主要特性见表4.2:(摘录自STC单片机官方数据手册)STC单片机与8051单片机的性能比较高速:一个时钟/机器周期,增强型51内核,平均速度可达到1MIPS/MHz宽电压:5.53.8V宽温限:-4085高抗静电:ESD保护,

52、轻松过4KV快速脉冲干扰(EFT测试)低功耗:有空闲模式(工作电流小于1.3mA),掉电模式(可由外部中断唤醒,工作电流小于0.1uA),正常模式(工作电流2.77mA)工作频率:可从0到48MHz,相当于传统8051主频0576MHz时钟:可选择外部晶体或内部RC振荡器STC12C5412AD单片机的内部资源12K字节片内Flash程序存储器,擦写次数10万次以上512字节片内RAM数据存储器12K字节片内E2PROM(512字节/扇区)ISP/IAP,在系统可编程,在应用可编程,无须专用编程器10位ADC,8通道4通道捕获/比较单元(PWM/PCA/CCU)2个硬件16位定时/计数器硬件看

53、门狗(WDT)高速同步串行通信接口SPI,全双工异步串行口UART32个通用寄存器,硬件乘/除法器27(DIP28,SOP28有23个)个通用I/O口,可设置成弱上拉准双向口、强上拉推挽输出、高阻输入、开漏输出,四种模式。每个I/O口的驱动能力均能达到20mA,但整个芯片最大不得超过55mA表4.2 STC12C系列单片机主要特性422 STC单片机在条屏运用中的优越性对于单色动态条幅屏的应用需要,STC12C5412AD单片机有以下突出的优点:较高的处理速度和时钟频率,能轻松的实现条屏的各种移动算法。有SPI和UART两个串行口,能实现与字库芯片或PC机之间的数据交换。有内部E2PROM,可

54、用于掉电存放条屏的各种设置参数、汉字内码等数据。ISP/IAP功能,使芯片可以不脱板下载程序,便于产品的软件升级。内部看门狗,使条屏可以工作在恶虐的电磁环境下。宽电压范围,条屏的负载端电压的波动不会影响其正常运行。丰富的I/O口,可以代替LED行扫描用的行选通译码器器,降低产品成本。小型封装,便于PCB的紧凑化设计。423 单片机系统电路设计根据本条屏的实际运用要求,参考STC单片机官方数据手册上的应用指南,设计单片机系统电路如图4.5所示。图4.5 单片机系统电路在图4.5中,有源晶振为单片机提供40MHz,0-5V幅度的高精度时钟。其时钟的频率精度可以到达10-7级别,频率的稳定性可以到达

55、10ppm/。根据STC单片机数据手册约定,外部有源时钟应从XTAL1脚输入,XTAL2必须保持浮空。图中1uF的电解电容和10K的电阻构成微分电路,在系统上电的瞬间,为单片机RESET脚提供约2mS的高电平脉冲,使单片机上电后立即可靠复位。图中的100uF电解电容和两个0.1uF独石电容,为单片机的供电电源进行滤波和高频旁路,滤除MCU及有源晶振对电源系统造成的高频脉动成分,提高系统的稳定性,降低对外电磁辐射。旁路电容采用独石电容,其优点是高频特性优良。在高频电流通过的时候,独石电容介质上的损耗小,因而对高频成分的容抗较小,旁路效果优于电解电容,金属膜纸介电容,瓷片电容等。而且独石电容的耐压

56、较高,在高电压脉冲下不易击穿。43 字库与单片机的接口设计431 字库芯片选型本设计所选用的字库芯片GT21L32S4W1,是集通数码科技的产品。GT21L32S4W1是一款支持GB2312字符集(6763字)的1112、1516、2424、3232点阵字库芯片,另外还含有2套12点高的半角不等宽ASCII字符、2套16点高的半角不等宽ASCII字符、2套24点高的的半角不等宽ASCII字符,2套32点高的半角不等宽ASCII字符,1套612点扩展字符、1套816点扩展字符、1套1224点扩展字符、1套1632点扩展字符等等。因为本芯片涵盖了81个国家及地区的文字字库,因此被广泛的运用于手机,

57、仪表等行业。432 字库芯片的使用方法每个汉字在本芯片中是以汉字点阵字模的形式存储的,每个点用一个二进制位表示,寸1的点,当显示的时候可以在屏幕上显示亮点,存0的点,则在屏幕上不显示。点阵排列格式为横置横排:即一个字节的高位表示左面的点,低位表示右面的点,排满一行的点后再排下一行。这样把点阵信息用来直接在显示器上按上述规则显示,则将出现相对应的汉字。用户只要知道汉字的内码,按照GT21L32S4W1官方数据手册提供的计算公式,就可计算出该汉字在芯片中的地址,然后就可从该地址连续读出点阵信息。汉字在芯片中的具体地址计算方法见图4.6(摘录自GT21L32S4W1官方数据手册)。图中:BaseAd

58、d为字形基地址;MSB为汉字内码高字节;LSB为汉字内码低字节;Address为汉字点阵数据在芯片中的物理地址。图4.6 汉字点阵数据在芯片中地址的计算方法GT21L32S4W1与外部的通信是通过SPI高速同步串行通信口。串行外围设备接口SPI(Serial Peripheral Interface)总线技术是Motorola公司推出的一种同步串行接口。Motorola公司生产的绝大多数MCU(微控制器)都配有SPI硬件接口,如68系列MCU。SPI总线是一种三线同步总线,因其硬件功能很强,所以,与SPI有关的软件就相当简单,使CPU有更多的时间处理其他事务。SPI 总线是三线同步接口,同步串

59、行3线方式进行通信:一条时钟线SCK,一条数据输入线MOSI,一条数据输出线MISO;用于CPU与各种外围器件进行全双工、同步串行通讯。SPI主要特点有:可以同时发出和接收串行数据;可以当作主机或从机工作;提供频率可编程时钟;发送结束中断标志;写冲突保护;总线竞争保护等。433 字库芯片的电气特性对于GT21L32S4W1的SPI接口,其主要的电气特性有:访问速度:40MHz(max.)3.3V工作电压:2.7-3.6V工作电流:40mA待机电流:10uAGT21L32S4W1的引脚排列及定义见及表4.2管脚号管脚名称数据流向管脚功能描述1CS#I片选输入2SOO串行数据输出3GND地4GND

60、地5SII串行数据输入6SCLKI串行时钟输入7HOLD#I总线挂起8VCC+3.3V 电源表4.2 字库芯片GT21L32S4W1的管脚定义串行时钟输出(SO):该信号用来把数据从芯片串行口输出,数据在时钟的下降沿移出。串行数据输入(SI):该信号用来把数据从串行口输入芯片,数据在时钟的上升沿移入。串行时钟输入(SCLK):数据在时钟上升沿移入,在下降沿移出。片选输入(CS#):所有串行数据传输开始于CS#下降沿,CS#在传输期间必须保持为低电平,在两条指令之间保持为高电平。要读取字库芯片内的点阵数据,必须严格地遵守其读写协议及时序。其时序如图4.7示。图4.7 GT21L32S4W1快速读

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论