基于单片机的多功能遥控显示屏设计

更新时间:2024-04-13 20:30:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

题专学姓指学

·

2014届毕业设计(论文)

基于STC89C54单片机的LED多功能遥控显示屏设计

业 班 级

2010工电03

号 1004150322 名 导 教 师

院 名 称

电气信息学院

2014年5月25日

学 指

·

基于STC89C54单片机的多功能遥控显示屏设计

The Multi-function and telecontrol display screen based on STC89C5

4 SCM

生 姓 名: 唐宇航

导 教 师: 苏文静(副教授) 武汉工程大学毕业设计(论文)说明书

摘 要

LED行业已经成为一个快速发展的新兴产业,它的发展市场空间大,前景比较广阔。本设计介绍了单片机LED显示屏的设计

本系统是从实际应用角度出发,针对当前市场上流行的LED产品的应用领域而设计制作的多功能电子显示屏,可用于商场导购促销显示、新闻与广告显示、车站机场班次时间资讯显示等。

LED电子显示屏根据题目设计要求,硬件部分主要包括STC89C51单片机系统、16块8*8LED点阵显示模块构成16*64点阵、显示驱动电路、键盘输入控制器等部分,软件编程主要用的是C语言。本系统不仅能够实现数字、字母、汉字等预存信息的切换显示,同时还可以实现信息的定时循环、上下左右滚屏、LED显示亮度连续可调,另外,本系统可以和PC机通讯,通过PC机串口对显示信息进行更新。通过对此LED广告屏的设计,满足了设计要求,实现了设计的目的。

关键词:LED; 电子显示屏; 16*64点阵 ; STC89C54单片机

I

武汉工程大学毕业设计(论文)说明书

Abstract

LED industry has become a new and rapidly developing industry, its development prospect is broad market space. This design introduced the single-chip LED display design.

This system sets out from the actual application angle and aim at current spread on the market of the multi-function electronics monitor of the applied realm but design creation of LED product, can used for market to lead to buy promote sales to show, news and advertisement show, the station airport's number time's information show etc..

LED electronics the monitor design a request according to the topic. the hardware part mainly includes STC89C54 list slice machine system and 16 pieces of ses show that the mold piece constitutes 16*64point, show to drive parts like the electric circuit, keyboard importation controller etc .software's weaving a distance what to use mainly is a C language .This system can not only carry out number, letter of alphabet, and Chinese characters...etc. to prepare to save a cutting over of information to suggest, but also can carry out an information in fixed time circularly, the top and bottom Be or so to roll to hold, LED show that the bright degree is in a row adjustable, moreover, this system can pass with PC machine communication one PC machine string to show that the information carries on renewal .Pass the design that holds to this LED advertisement, satisfied a design request, carried out the purpose of design.

Key words:LED; Electronics monitor; 64 of 16point; STC89C54 List slice machine;

II

武汉工程大学毕业设计(论文)说明书

目 录

摘 要 ......................................................... I Abstract ........................................................ II 第一章 绪论 ...................................................... 1

1.1课题背景 ................................................................ 1 1.2LED显示屏综述 ........................................................... 3 1.3课题任务 ................................................................ 6

第2章 系统组成 .................................................. 7

2.1系统硬件方案 ............................................................ 7 2.2系统软件方案 ............................................................10

第三章 硬件设计 ................................................. 13

3.1系统硬件方案设计 ........................................................13 3.2单片机外围电路 ..........................................................13 3.3行扫描电路 ..............................................................15 3.4无线遥控电路 ............................................................16

第四章 系统的软件设计 ........................................... 18

4.1显示驱动程序 ............................................................18 4.2字模提取 ................................................................19 4.3通讯程序的设计 ..........................................................20

总结 ............................................................ 21 致谢 ............................................................ 23 参考文献 ........................................................ 24 附录1 程序 ..................................................... 26

武汉工程大学毕业设计(论文)说明书

第一章 绪论

1.1 课题背景 1.1.1 选题背景

被誉为“照亮未来的技术”的LED(Light-Emitting-Diode-发光二极管),渐渐走近了我们的日常生活,并将推动显示器领域发生一次革命性巨变。LED显示器技术的发展速度超出了专家的预测,作为一个新兴产业,10年内,LED显示器有望达到30亿美元的产值。液晶显示器也将和CRT显示器一样,退出主流舞台!

目前,世界上对省能源、轻量化、小型化、高可信度的产品需求极为迫切,而LED完全符合这些条件。LED属于全固体冷光源,更小、更轻、更坚固,工作电压仅有两伏特,使用寿命长达十多年。按照通常的光效定义,LED的发光效率并不高,但由于LED的光谱几乎全部集中于可见光频段,效率可达80-90%。

LED显示器件问世至今已有20余年,由于原材料的采用和工艺上的限制,前10年间很难普及。进入九十年代后,随着工艺的不断改进以及原材料的发展,LED显示器件在寿命和亮度指标上都有了突飞猛进的发展,成本也大大降低。

在性能上,LED发展十分迅速。2001年,红色LED的亮度为1000mcd,比1982年的3mcd高出500-3300倍,转换效率也达到20%。高亮度LED的出现具有划时代意义,它将是人类继爱迪生发明白炽灯泡之后最伟大的发明之一。最早研制的LED只能发出红色的光,用于电子设备中的指示灯,随着黄色、绿色和蓝色LED相继问世,如今,LED已能发出红色、黄色、蓝色、绿色、橙色、琥珀色、蓝绿双色、红绿双色、黄绿色、纯绿色、翠绿色、白色各种光束。

在价格上,1998年,一个LED灯泡售价是1982的1/30-1/50,为用户减轻了极大负担。

LED的技术进步是扩大市场需求及应用的最大推动力。最初,LED只是作为微型指示灯,在计算机、音响和录像机等高档设备中应用,随着大规模集成电路和计算机技术的不断进步,LED显示器正在迅速崛起,近年来逐渐扩展到证券行情股票机、数码相机、PDA以及手机领域。

LED显示器集微电子技术、信息处理于一体,以其色彩鲜艳、动态范围广、亮度高、寿命长、工作稳定可靠等优点,成为最具优势的新一代显示媒体,目前,LED显示器已广泛应用于大型广场、商业广告、体育场馆、信息传播、新闻发布、证券交易等,可以满足不同环境的需要。

1

武汉工程大学毕业设计(论文)说明书

从商业应用和消费者需求的角度看,背光LED是显示器技术领域的一项革命性的创新,从平板显示器向塑料显示器过渡,还需要三到五年的时间,不过,我们很快就能看到可卷曲型显示器了,而且可以制成织入衣物中的显示器。

在短短的十来年中,LED点阵显示屏就以亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定的优点迅速成长为平板显示的主流产品,在信息显示领域得到了广泛的应用。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性、可靠性、全色化方向发展。LED显示屏的应用涉及社会经济的许多领域,主要包括:(1)证券交易、金融信息显示。(2)机场航班动态信息显示。(3)港口、车站旅客引导信息显示。(4)体育场馆信息显示。(5)道路交通信息显示。(6)调度指挥中心信息显示。(7)邮政、电信、商场购物中心等服务领域的业务宣传及信息显示。(8)广告媒体新产品等。 1.1.2 研究现状及发展趋势 (1)我国LED产业发展现状

我国的LED显示屏产业经过几年的发展,基本形成了一批具有一定规模的骨干企业。据不完全统计,至1998年底,年度销售总额在1000万元以上的企业有20多家,其销售总额达6亿元左右,占行业市场总额的85%以上。全国从事LED显示屏的各类企业有100余家,从业人员近6000人,行业年度销售总额近8亿元人民币,1996年、1997年的增长速度均保持40%左右,1998年略有回落。在国内市场上,国产LED显示屏的市场占有率近100%,国外同类产品基本没有市场,四十三届世乒赛主会场天津体育中心、京九铁路、北京西客站、首都机场、浦东机场等,均由国内代表企业中标。技术水平相对领先,我国LED显示屏产业在规模发展的同时,产品技术推陈出新,一直保持比较先进的水平。90年代初即具备了成熟的16级灰度256色视频控制技术及无线遥控等国际先进水平技术,近年在全彩色LED显示屏、256级灰度视频控制技术、集群无经线控制、多级群控技术等方面均有国内先进、达到国际水平的技术和产品出现;LED显示屏控制专用大规模集成电路也已由国内企业开发生产并得到应用。LED显示屏产业培养形成了一批LED显示屏科技队伍,在全国LED显示屏行业的从业人数6000人中,科技人员有2800多人,将近50%。LED显示屏产业正成为我国电子信息产业的重要组成部分,也是平板显示领域唯一立足国内形成的民族高科技产业。

(2)LED显示屏的发展趋势

现代信息社会中,作为人一机信息视觉传播媒体的显示产品和技术得到迅速发展,进

2

武汉工程大学毕业设计(论文)说明书

入二十一世纪的显示技术将是平板显示的时代,LED显示屏作为平板显示的主导产品之一无疑会有更大的发展,并有可能成为二十一世纪平板显示的代表性主流产品。高亮度、全彩化蓝色及纯绿色LED产品自出现以来,成本逐年快速降低,已具备成熟的商业化条件。基础材料的产业化。使LED全彩色显示产品成本下降,应用加快。LED产品性能的提高,使全彩色显示屏的亮度、色彩、白平衡均达到比较理想的效果,完全可以满足户外全天候的环境条件要求,同时,由于全彩色显示屏价格性能比的优势,预计在未来几年的发展中,全彩色LED显示屏在户外广告媒体中会越来越多地代替传统的灯箱、霓红灯、磁翻板等产品,体育场馆的显示方面全彩色LED屏更会成为主流产品。全彩色LED显示屏的广泛应用会是LED显示屏产业发展的一个新的增长点。

未来LED显示屏会向着标准化、规范化,产品结构多样化的方向发展。 (3)选题意义

该设计课题使我们能够掌握LED显示屏的基本显示原理和设计方法,对LED显示屏这个行业有了较为深刻的了解和认识。并且对大学期间所学习的一些理论进行了实践,使我们对所学过的理论知识有了新的认识。并且通过该设计课题掌握了51单片机的的软硬件开发工具的使用方法,为以后从事相关行业的工作积累了实际工作经验。目前我国的信息行业发展迅速,作为主要平面显示媒介的LED显示屏的作用也越练越广泛,相关的从业人员也会越来越紧缺。但同时应该清楚的认识到我国的LED技术虽然发展迅速但和世界先进水平还有一定的差距。因此此课题不论是对自己的就业还是对我国LED显示技术的发展都有非常现实与积极的意义。

1.2 LED显示屏综述

1.2.1 LED显示屏的分类

LED 显示屏分类多种多样,大体按照如下几种方式分类:(1)按使用环境分为户内,户外及半户外户内屏面积一般从不到1平米到十几平米,室内LED显示屏在室内环境下使用,此类显示屏亮度适中、视角大、混色距离近、重量轻、密度高,适合较近距离观看。户外屏面积一般从几平米到几十甚至上百平米,点密度较稀(多为2500-10000点每平米),发光亮度在5500-8500cd/平米(朝向不同,亮度要求不同),可在阳光直射条件下使用,观看距离在几十米以外,屏体具有良好的防风抗雨及防雷能力。半户外屏介于户外及户内两者之间,具有较高的发光亮度 , 可在非阳光直射户外下使用,屏体有一定的密封,一般在屋檐下或橱窗内。(2)按颜色分为单色,双基色,三基色(全彩)单色是指显示屏只有一种颜色的发光材料,多为单红色,在某些特殊场合也可用黄绿色 (例如殡仪馆)。双基色LED

3

武汉工程大学毕业设计(论文)说明书

显示屏由红色和绿色LED灯组成,256级灰度的双基色显示屏可显示65,536种颜色(双色屏可显示红、绿、黄3种颜色)。全彩色LED显示屏由红色、绿色和蓝色LED灯组成,可显示白平衡和16,777,216种颜色。(3)按控制或使用方式分同步和异步同步方式是指LED显示屏的工作方式基本等同于电脑的监视器, 它以至少 30 场 / 秒的更新速率点点对应地实监视器上的图时映射电脑像,通常具有多灰度的颜色显示能力,可达到多媒体的宣传广告效果。异步方式是指 LED 屏具有存储及自动播放的能力,在PC机上编辑好的文字及无灰度图片通过串口或其他网络接口传入LED屏,然后由LED屏脱机自动播放,一般没有多灰度显示能力,主要用于显示文字信息,可以多屏联网。(4) 按像素密度或像素直径划分由于户内屏采用的LED点阵模块规格比较统一所以通常按照模块的像素直径划分主要有:∮3.0mm 62500像素 /平米∮3.75mm44321像素/平米∮5.0mm17222像素/平米 室内表贴像素点数: P2.5 160000点/平米

P3 111111点/平米 P4 62500点/平米 P540000点/平米 P6 27777点/平米 P7.6217222点/平米 P815625点/平米 P1010000点/平米

户外屏的像素直径及像素点数 P1010000点/平米 P12.56400点/平米 P163906点/平米 P202500点/平米 P25 1600 点/平米 P31.251024点/平米 按显示性能可分为

视频显示屏:一般为全彩色显示屏 文本显示屏:一般为单基色显示屏

图文显示屏:一般为双基色显示屏

4

武汉工程大学毕业设计(论文)说明书

行情显示屏:一般为数码管或单基色显示屏; (6)按显示器件可分为

LED数码显示屏:显示器件为7段码数码管,适于制作时钟屏、利率屏等,显示数字的电子显示屏。

LED点阵图文显示屏:显示器件是由许多均匀排列的发光二极管组成的点阵显示模块,适于播放文字、图像信息。

LED视频显示屏:显示器件是由许多发光二极管组成,可以显示视频、动画等各种视频文件。

常规型LED显示屏:采用钢结构将显示屏固定安装于一个位置。主要常见的有户外大型单立柱LED广告屏,以及车站里安装在墙壁上用来播放车次信息的单、双色LED显示屏等。

租赁型LED显示屏:在设计时,研发部就考虑到该屏经常会用于安装与拆卸,所以左右箱体采用带定位功能的快速锁连接,定位精准,整个箱体安装10秒之内完成。租赁屏主要用于舞台演出、婚庆场所以及大型春晚。 (7)按照发展方向可分为

已经广泛使用的“广告传媒类显示屏”:门头的条幅单双色显示屏、广场楼体表面的全彩显示屏,以广告宣传为主;

正在悄然升起的“工业指示类显示屏”:给PLC\\DCS等集散控制系统,配套辅助性质的显示屏,例如显示转速、流量、温度、压力等等 1.22 LED显示屏的发展

LED显示屏行业迅速蓬勃发展起来,也形成了一个新的发展阶段。具体分为3个阶段: 1、LED显示屏实用新型阶段:LED显示屏具有环保、亮度高、高清晰、高可靠性等特性逐渐凸显出来,而上一个阶段,LED显示屏市场只是满足了人们的需求,但是在LED显示屏产品上却达不到要求,质量不过关。

随着LED显示屏的发展,如今LED产品又有了一个新的突破。至少比上一阶段又提升进步。也开发了一系列完全有别于传统光源应用的产品会大行其道。LED显示屏会出现更大更广的一个发展空间。LED显示屏不仅仅是美化作用,它的多变使得更贴切人们工作生活中的点点滴滴。如今各厂商要拼的是在设计应用和技术研发优势。

2、LED显示屏智能控制阶段:随着LED显示屏技术的不断进步与发展,LED作为半导体产业,也将搭上这趟高速列车,发挥出其高可控性特点。从家庭到办公楼,从道路到隧

5

武汉工程大学毕业设计(论文)说明书

道,从汽车到步行,从室内到户外,都具备智能控制的LED显示屏系统将给人类带来更高等级的服务。LED显示屏行业也将由做产品,到设计产品,到提供整体解决方案的历程。 3、LED显示屏替代接受阶段:由于LED显示屏产品的特征主要体现在光效高(能耗小),寿命长的特点这一阶段是LED显示屏发展初期,因此在售价方面,在客户看来有一定的比对。当然客户有一个接受的过程,客户在使用习惯和外观上的一个过渡和接受。让客户了解LED显示屏产品的特点,挑选一款具有节电长寿等特点。这样客户容易接受它的相对高价,尤其是在商用场合,何况如今客户在价格上也是其次,主要是在质量上要过关。因此各厂商如今拼的是在质量价格优势。画面的显示效果要求更高,当显示屏刷新率不足的情况下,会出现扫描横线,需要改进LED显示屏控制系统的扫描输出技术使LED显示屏的刷新率高于一般相机的快门速度,在相机拍摄下消除扫描横线。

综上所述,LED显示屏正处在一个高速发展与成长崛起的阶段,相信不久的将来,LED显示屏会应用在更多的领域,同时市场上也会涌现出各式各样的LED显示屏的新产品,带给消费者更好,更便捷,更节能的LED显示屏。 1.3 课题任务

随着计算机及相关的微电子、光电子技术的迅猛发展,LED显示屏以其可靠性高、使用寿命长、环境适应能力强、性价比高的特点,迅速成长为平板显示的主流产品。而目前大多数的LED点阵显示系统自带字库,显示和动态效果(主要是显示内容的滚动)的实现依靠硬件扫描驱动,该方法虽然比较方便,但显示内容不易及时更新,而且当LED显示屏安装到户外时,不能对其进行有效的控制。室内显示屏通过数据线控制,很不方便。 以单片机作为主控芯片,利用自制的红外遥控器无线下载信息到主机显示。显示屏由1024只高亮发红光二极管构成的16x64点阵组成。要求系统实现数字、字母、汉字等信息的动静态显示,和PC机串口通信来更新显示信息,系统还可通过遥控器键盘远距离进行信息的上下左右移动及显示内容的更新。

6

武汉工程大学毕业设计(论文)说明书

第2章 系统组成

2.1 系统硬件方案

大多数的LED显示屏都在户外,所以对硬件的质量要求非常的高。为方便检修和维护硬件电路设计时常常采用模块化的设计方法。硬件的设计采用模块化设计,既要满足模块本身功能又要能够和整个系统兼容。如图2-1所示,根据显示系统的功能特点确定系统硬件由显示屏部分,控制部分,通信系统及上位机四部分组成。上位机通过通信部分向控制部分发送控制指令和显示内容代码,控制部分执行显示指令并将显示代码处理后控制显示部分的显示内容和显示方式。

上位机通信部分控制部分显示部分

图2-1 系统硬件组成框图

2.1.1 显示屏主控制器

控制部分是整个系统的核心部分,其功能为与上位机通信接收上位机发送的数据和控制指令处理过后控制显示部分显示内容。其常用的电子设计方法有单片机、DSP、及EDA技术。几种设计方法比较各有其特点:

(1)单片机

单片机是集成了CPU,ROM,RAM和I/ O口的微型计算机。它有很强的接口性能,非常适合于工业控制,因此又叫微控制器(MCU)。单片机品种齐全,型号多样 CPU 从8,16,32到64位,多采用RISC 技术,片上I/O非常丰富,有的单片机集成有A/ D,“ 看门狗”,PWM,显示驱动,函数发生器,键盘控制等。它们的价格也高低不等,这样极大地满足了开发者的选择自由。除此之外单片机还具有低电压和低功耗的特点。随着超大规模集成电路的发展,NMOS工艺单片机被CMOS代替,并开始向HMOS 过渡。供电电压由5V 降到3V,2V甚至到1V,工作电流由mA降至μA ,这在便携式产品中大有用武之地。

(2)DSP 芯片

DSP 又叫数字信号处理器。顾名思义,DSP主要用于数字信号处理领域,非常适合高密度,重复运算及大数据容量的信号处理。现在已经广泛应用于通信、便携式计算机和便携式仪表、雷达、图像、航空、家用电器、医疗设备等领域,DSP具有修正的哈佛结构,多总线技术以及流水线结构。将程序与数据存储器分开,使用多总线,取指令和取数据同

7

武汉工程大学毕业设计(论文)说明书

时进行,以及流水线技术,这使得速度有了较大的提高。DSP区别于一般微处理器的另一重要标志是硬件乘法器以及特殊指令,一般微处理器用软件实现乘法,逐条执行指令,速度慢。而DSP 依靠硬件乘法器单周期完成乘法运算,而且还具有专门的信号处理指令,如TM320系列的FIRS,LMS,MACD指令等。 (3)EDA

EDA(即Electronic Design Automation)即电子设计自动化,它是以计算机为工具,在EDA软件平台上,对用硬件描述语言HDL完成的设计文件自动地逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至对于特定目标芯片进行适配编译、逻辑影射和编程下载等。设计者只需用HDL 语言完成系统功能的描述,借助EDA工具就可得到设计结果,将编译后的代码下载到目标芯片就可在硬件上实现。由于FPGA/CPLD可以通过软件编程对该硬件的结构和工作方式进行重构,修改软件程序就相当于改变了硬件,软件编写可以采用自顶向下的设计方案,而且可以多个人分工并行工作这样便缩短了开发周期和上市时间,有利于在激烈的市场竞争中抢占先机。而且MCU和DSP都是通过串行执行指令来实现特定功能,不可避免低速,而FPGA/CPLD则可实现硬件上的并行工作,在实时测控和高速应用领域前景广阔;另一方面,FPGA/CPLP器件在功能开发上是软件实现的,但物理机制却和纯硬件电路一样,十分可靠。

三种设计方式相比较各有优点且都能够实现控制功能,但单片机的技术门槛较低开发成本也较低非常适合初学者进行学习和锻炼使用。现在市场上常用的单片机主要有MCS-51、AVR、ARM、PIC等。其中应用最广泛的单片机首推Intel的51系列,由于产品硬件结构合理,指令系统规范,加之生产历史“悠久”,有先入为主的优势常作为单片机学习的教材。且51系列的I/O脚的设置和使用非常简单,当该脚作输入脚使用时,只须将该脚设置为高电平(复位时,各I/O口均置高电平)。当该脚作输出脚使用时,则为高电平或低电平均可。所以在控制部分方案的选择中选定51系列单片机作为控制部分的核心器件。

2.1.2 LED点阵显示屏

显示部分包括了一块至少可以显示一个汉字的显示屏,以及驱动该显示屏的驱动电路。由于单片机的I/O口有限要不能直接用I/O口来驱动LED显示屏,所以需要对单片机IO口进行扩展增加单片机并行输出的能力。

LED显示屏是由一个一个的发光二极管点阵构成的,要构成大屏幕的LED显示屏就需要多个发光二极管。构成LED屏幕的方法有两种,一是由单个的发光二极管逐点连接起来,

8

武汉工程大学毕业设计(论文)说明书

如图2-2所示;二是选用一些由单个发光二极管构成的LED点阵子模块构成大的LED点阵模块。目前市场上普遍采用的点阵模块有8×8、16×16几种;这两种屏幕构成方法各有有缺点,单个发光二极管构成显示屏优点在于当单个的发光二极管出现问题时只需更换一个二极管即可,检修的成本较低,缺点在于连接线路复杂;而点阵模块构成的方法却正好与之相反,模块构成省约了大量的连线,不过当一个LED出现问题时同在一个模块的所有LED都必须被更换。这就加大了维修的成本。

两种方法相比较,决定采取模块构成的方法来制作一个LED点阵显示屏。为了避免模块的缺点,选择点阵数较小的模块来减小出现这一问题的风险。所以构建一个16×16的LED点阵屏选用四块8×8点阵模块,构建一个16×64的LED点阵屏选用四块16×16点阵模块

图2-2 LED接线接法

9

武汉工程大学毕业设计(论文)说明书

图2-3 LED点阵图

点阵内部结构及外形如下,16*64点阵共由1024个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置1电平,某一列置0电平,则相应的二极管就亮;如要将第一个点点亮,则9脚接高电平13脚接低电平,则第一个点就亮了;如果要将第一行点亮,则第9脚要接高电平,而(13、3、4、10、6、11、15、16)这些引脚接低电平,那么第一行就会点亮;如要将第一列点亮,则第13脚接低电平,而(9、14、8、12、1、7、2、5)接高电平,那么第一列就会点亮。

最终方案如图2-3所示,以PC机作为上位机存储和处理显示内容用串行通信的方式将显示内容和控制指令传输到单片机系统,单片机根据上位机传输来的内容和指令通过端口译码扩展后驱动4块8×8LED点阵模块构成的16×16的LED点阵显示屏。题目将以此方案为指导思想展开具体的硬件电路设计。

PC机串行通信单片机译码电路显示驱动电路16×16LED显示屏

图2-4 硬件设计

2.2 系统软件方案

软件的设计除了满足设计功能外还必须要满足易读写,方便下载和编译。设计目标和硬件总体结构确定的情况下,软件可以分为主程序,显示子程序,各种特效显示子程序,通信程序三个主要部分组成。具体结构如图2-4所示。

10

武汉工程大学毕业设计(论文)说明书

控制程序通信程序主程序特效显示程序静态显示程序

图2-5 软件功能结构框图

软件的编写需要借助软件编辑器和编译软件,编译完成后还需要下载到单片机中执行。编写软件之前得首先选择一种合适的语言以及配套的编辑器和编译软件。最后还要选择一款与所选单片机的下载器或下载软件来把编写的程序下载到单片机中执行。 2.2.1 单片机编程语言

现在主要运用的单片机编程语言为汇编语言和C语言。两种语言相比较各有优点。 汇编语言(Assembly Language)是面向机器的程序设计语言,是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。其具有执行速度快,占内存空间少等优点,但在编写复杂程序时具有明显的局限性,汇编语言依赖于具体的机型,不能通用,也不能在不同机型之间移植。

C语言是一种源于编写UNIX操作系统的语言,它是一种结构化语言,可产生压缩代码。C语言结构是以括号{ }而不是子和特殊符号的语言。C可以进行许多机器级函数控制而不用汇编语言。与汇编相比,有如下优点:对单片机的指令系统不要求了解,仅要求对51的存储器结构有初步了解;寄存器分配、不同存储器的寻址及数据类型等细节可由编译器管理;程序有规范的结构,可分为不同的函数。这种方式可使程序结构化;将可变的选择与特殊操作组合在一起的能力,改善了程序的可读性;编程及程序调试时间显著缩短,从而提高效率;提供的库包含许多标准子程序,具有较强的数据处理能力;已编好程序可容易的植入新程序,因为它具有方便的模块化编程技术。C语言作为一种非常方便的语言而得到广泛的支持,C语言程序本身并不依赖于机器硬件系统,基本上不做修改就可根据单片机的不同较快地移植过来。

基于以上理由决定采用C语言为该显示系统的编程语言。 2.2.2 系统软件编译器介绍

C语言编写的程序并不能被单片机直接执行还需要编译为单片机可执行的机器语言。

11

武汉工程大学毕业设计(论文)说明书

因此在系统软件设计中,编译器必不可少。支持MCS-51用C语言编程的编译器主要有两种:Franklin C51编译器和KEILC51编译器。目前在单片机开发中普遍都是使用KEIL C51来进行编译。

因此软件设计最终方案为采用C语言为程序语言,KELC为编译工具按照控制、通信、显示等几个功能模块来编写程序。

2.2.3 上位机控制传输软件

其中系统采用现在已经非常普遍的PC机作为上位机,这样对该显示系统的硬件要求便降低了,增加了系统的通用性。上位机的作用是存储并处理显示内容,然后通过通信系统传送到控制系统驱动显示。

LED显示上位机的内容一般有实时显示和存储显示两种方法。实时显示及上位机屏幕上的内容同时显示在LED显示屏上,上位机上内容变化LED显示屏也跟着变化。存储显示是将显示内容处理过后存储在上位机中通过通信系统传输到显示屏显示。两种显示方法相比较:实时显示屏幕能及时反应上位机内容的变化,显示的效果和内容的实时性好多用于新闻播报、实况转播用,但实时显示硬件开销大,对通信系统要求高,工艺复杂,成本高;存储显示虽实时性不高但硬件开销小,成本低廉。课题设计题目对显示的实时性要求较低且所设计的显示屏尺寸不大同时显示的内容不多,所以实时显示就没有必要。所以上位机选择存储显示的方法,控制LED显示屏的显示内容。

12

武汉工程大学毕业设计(论文)说明书

第三章 硬件设计

3.1 系统硬件方案设计

该设计采用无线遥控控制显示方式,动态扫描点阵显示屏。所谓动态扫描,简单地说就是逐列轮流点亮,这样扫描驱动电路就可以实现多列(如16 列)的同名行共用一套行驱动器。如本设计中的16×64 点阵显示屏为例,把所有的同一列发光管的阳极连在一起,把所有同一行的阴极连在一起(共阳的接法),先送出对应第一列发光管亮灭的数据并锁存,然后选通第一列使其点亮一定的时间,然后熄灭??第64 列之后又重新点亮第一列,这样反复轮回。当这样轮回的速度足够快(每秒25 次以上)时,由于人眼的视觉效应,我们就能看到显示屏上显示稳定的图形和汉字了。整体设计方案框图见图1。

图3-1 16×64LED点阵显示屏电路实现结构框

该系统原理图一共由五部分电路组成:单片机外围电路,行扫描电路,列扫描电路, LED 点阵模块电路,无线遥控电路。下面将一一介绍这些电路的组成以及功能。 3.2 单片机外围电路

主控制单片机采用STC89c52单片机作为主控制器。由于STC89c52内置有2K字的SRAM和32K字的内存FLASH,能满足本系统数据处理及LED点阵显示所数据的存储要求;另外,“集成电路”功能较强、性价比高,具有体积小、集成度高、易扩展、功耗小等优点,简化主控制系统的硬件电路设计,可靠性高。

STC89C52是高性能的CMOS8位单片机,工作电压4.0V到5.5V,拥有8K字节FLASH存储器和256字节片内RAM,全静态时钟范围从0-33MHz。它的最大方便之处是支持在系统编程ISP,可进行高达1000次擦写,节约设计成本,单片机的口线中,P2和P3用于液晶显示电路,P1口用于键盘的扫描电路,P2也用于DS1302和DS18B20的连接电路。各引

13

武汉工程大学毕业设计(论文)说明书

脚具体功能:P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻 辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。 在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。 P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。

40个引脚按引脚功能大致可分为4个种类:电源、时钟、控制和I/O引脚。 ⒈ 电源:

⑴ VCC - 芯片电源,接+5V; ⑵ VSS - 接地端;

注:用万用表测试单片机引脚电压一般为0v或者5v,这是标准的TTL电平。但有时候在单片机程序正在工作时候测试结果并不是这个值而是介于0v-5v之间,其实这是万用表的响应速度没这么快而已,在某一个瞬间单片机引脚电压仍保持在0v或者5v。 ⒉ 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。 ⒊ 控制线:控制线共有4根,

⑴ ALE/PROG:地址锁存允许/片内EPROM编程脉冲 ① ALE功能:用来锁存P0口送出的低8位地址

② PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。 ⑵ PSEN:外ROM读选通信号。 ⑶ RST/VPD:复位/备用电源。

① RST(Reset)功能:复位信号输入端。 ② VPD功能:在Vcc掉电情况下,接备用电源。 ⑷ EA/Vpp:内外ROM选择/片内EPROM编程电源。 ① EA功能:内外ROM选择端。

② Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。 SN74HC595N由一个8位串入并出的移位寄存器和一个8位输出锁存器构成,其各个引脚功能:SER;串行数据的输入端,SRCLR;移位寄存器的移位时钟脉冲,在其上升沿发生位移,并将ER的下一个数据输入最低位。RCLK;输出锁存器的输入信号,其上升沿将移位寄存器的输出信号输入到输出锁存器。

14

武汉工程大学毕业设计(论文)说明书

3-2 单片机的最小系统

图3-3 单片机外围电路

3.3 扫描电路

由于16x64 点阵显示器有16 行,为充分利用单片机的接口,本电路中加入了两个3-8

15

武汉工程大学毕业设计(论文)说明书

线译码器74LS138,一个控制高8 行,另一个控制低8 行,74LS138 的译码输出描信号。两片译码器的8 路输出通过选通端G1 分时控制高低八行的扫描。如图3 所示。

8×8LED 点阵为单色行共阳模块,单点工作电压为正向f V =1.8v,正向电流f I =8~10mA。如果一行64个LED 全部点亮,总电流为640mA,总电压为1.8v,总功率为1.15W。而实际上,74LS138 译码器提供不了足够的吸收电流来同时驱动64 个LED 同时点亮,因此,应在74LS138 每一路输出端与16x64 点阵显示器对应的每一行之间用一个三极管来将电流信号放大,本文选用的是达林顿三极管TIP127。这样,74LS138 某一输出脚为低电平时,对应的三极管发射极为高电平,从而使点阵显示器的对应行也为高电平。

图3-4 行扫描电路图

3.4 无线遥控电路

考虑到红外遥控传输距离比较短,因此本文选取无线遥控。该无线遥控正常工作的时候(接+12V 电源),有效传输距离可达20m,为了简化电路,本设计中的无线遥控与显示屏电路共用一个电源(+5V),因而有效传输距离会缩短。无线发射部分如图6(左),整个数据编码传送的核心是编码芯片PT2262。当无线数据发射模块有发射信号时,编码集成IC1(发送信号编码,即PT2262)开始工作,它根据数据输入端D0~D3 的电平进行编码, 编码信号由:地址码、数据码、同步码组成一个完整的码字。该编码信号经无线数据发射模块进行调制后经天线发射到周围的空间。如果按钮一直按住则发射模块连续发射无线信号。无线接收模块原理图6(右),其主要核心是与编码芯片PT2262 相配套的解码芯片PT2272。无线接收元件将发射元件发射的信号接收过来后,将信号送到解码芯片中去处理。处理过程就是将原先的发射信号解析出来,再送出去。同时相对应的LED 亮[4]。本设计通过无线遥控控制STC89C54 的P1.5 和P1.6 的电平,这两个端口默认为低电平,当无线

16

武汉工程大学毕业设计(论文)说明书

遥控发出控制信号时,接收模块输出高电平给这两个端口,以这个高电平来控制显示屏的显示方式的转换。

图3-5 无线电遥控发射电路图

图3.-6 接收电路图

17

武汉工程大学毕业设计(论文)说明书

第四章 系统的软件设计

4.1 显示驱动程序

显示驱动程序在进入中断后首先要对定时器T0重新赋初值,以保证显示屏刷新率的稳定,1/16扫描显示屏的刷新率(帧频)计算公式如下: 刷频率(帧频)=

f011 ?T0溢出率??161612(65536?t0) 其中f位晶振频率,t为定时器T0初值(工作在16位定时器模式)。 然后显示驱动程序查询当前燃亮的行号,从显示缓存区内读取下一行的显示数据,并通过串口发送给移位寄存器。为消除在切换行显示数据的时候产生拖尾现象,驱动程序先要关闭显示屏,即消隐,等显示数据打入输出锁存器并锁存,然后再输出新的行号,重新打开显示。图4-1为

图4-1 系统软件流程图

显示采用的是列扫描的显示方式,选通一列后按照列与数据元素的对应关系第i列对应的行数据为数组中的第i和第i+16个元素。将对应元素的由低至高位依次从端口输出具体做法为将元素向右逻辑移位后再与0X01相与,所得结果通过单片机端口输出到串并转换

18

武汉工程大学毕业设计(论文)说明书

器的A端,锁存在锁存器里完成一列数据移位后再将其输出。如此依次循环选通各列来显示所需画面。 显示驱动程序 MCU AT89C51 XAL 24MH #include\#define BLKN8*2) #define TOTAL20 #define CONIOP1 sbitG=CONIO^7; sbit CLK=CONIO^6 sbitSCLR=CONIO^5;

Unsigned char idata dispram[(BLKN/2)*32]={0}; 4.2 字模提取

字模提取是指把我们要的字在点阵中显示出来所用到的程序代码,也就是字的代码。 点阵字模信息提取如图4-2所示。

图4-2 字模提取软件图

19

武汉工程大学毕业设计(论文)说明书

4.3 通讯程序的设计

系统采用串行中断的方式进行通信。MCS-51单片机的五个中断源两种类型:一类是外部中断源;另一类是内部中断源,包括两个定时器/计数器(T0和T1)的溢出中断和串行口的接收和发送中断。MCS-51单片机设置了4个专用寄存器用于中断控制,分别为定时器控制寄存器(TCON),串行口中断控制器(SCON),中断允许控制寄存器(IE),中断优先级控制寄存器(IP)。编程时通过设置其状态来管理中断系统。

在编辑中断程序时首先是将中断控制寄存器(IE)初始化。其控制位分布如表。EA为中断允许总控制位,EA=1时CPU开发中断;EA=1时。CPU屏蔽所有中断。ES、ET、EX1、ET0、EX0为对应的串行口中断、定时器/计数器1中断、外部中断1中断、定时器/计数器0中断、外部中断0中断的中断允许位。对应位为1时允许其中断,对应位为0时,禁止其中断。

20

武汉工程大学毕业设计(论文)说明书

中断开始 RI=1? N Y 接收串口数据 N 起始位‘S’ Y 接收起始位后33位数据 N 接收到第34位? Y 将第2位起的32 位数据发回PC机 中断返回 图4-3 中断流程图

总结

该LED点阵电子显示屏系统不仅完成了题目要求的基本功能和发挥功能。本系统以STC89c52单片机为核心部件,74HC595与74HC154等多个芯片的功能支持下,最终完成了毕业设计题目中要求的各项任务,包括可以控制16*64LED点阵显示屏实现信息的左滚屏、右滚屏、上滚屏、下滚屏等。

在设计过程中,力求硬件线路简单、方便、快捷,充分发挥软件在编程方面灵活的特点,来满足系统设计的要求。

在设计的过程中,我体会到我在程序编写上的弱点,很多很好的想法实现起来都很困难,例如:在16*64点阵中加入时钟,可以显示年月日、时间;加入温度传感器改为智能温度仪,把烧程序的电路和点阵控制电路融合在一起,即省材料,又方便,而且实现电脑

21

武汉工程大学毕业设计(论文)说明书

与点阵只用数据线连接即可传输数据等等。虽然想法很多,但实现起来对我来说还是有很大的挑战性

通过这次的毕业设计,给我留下了宝贵的经验和教训

(1)设计之前应该进行大量的资料收集和分析,确定一个清晰的设计思路;

(2)器件选择时要详细阅读器件使用手册,不但要考虑器件的功能实现还要考虑器件在

整个系统中的兼容性;

(3)硬件的系统的建立必须合理和稳定,实物建立之前最好进行仿真这样才能为软件提

供一个可靠的试验平台;

(4)软件的编写不但要实现功能还要不断的优化、简练、易读。

随着课题的进行,对LED的了解也越来越深入。认为LED技术也会进一步发展,LED应用将会更加广泛。可以设想利用LED的高稳定性和低能耗,再与无线通信技术相结合在沙漠深处或者人迹罕至的雪山之颠树立一块依靠太阳能充电,通过无线传输方式更改显示内容的信息板为登山者提供指示和天气信息,为沙漠迷路的人指引方向。

设计结束了,但学习还在继续。我相信通过此次设计所得到的知识、心得、经验乃至感受都会让我在以后的日子里受益匪浅。

拓宽了我的知识面,增加感性认识,把所学知识条理化系统化,学到从书本学不到的专业知识,并获得相关专业国内、外科技发展现状的最新信息,激发学生向实践学习和探索的积极性,为今后的学习和将从事的技术工作打下坚实的基础,我深深的体会到了科技知识的重要性,提高了自己解决问题的能力。

通过老师在现场的讲授、座谈、讨论、分析、作业等多种形式,一方面来巩固在书本上学到的理论知识,另一方面,可获得在书本上不易了解和不易学到的知识,使我在实践中得到提高和锻炼。

22

武汉工程大学毕业设计(论文)说明书

致谢

本设计是在苏文静老师的悉心指导下完成的,在论文设计过程中,苏老师不但给予了我全面的技术指导,还给了我一些相关的资料,花费了大量的心血,使我对于单片机系统有了深刻的认识,并最终得以完成毕业论文,对此,我表示衷心的感谢.速老师严谨的治学态度、丰富渊博的知识、敏锐的学术思维、精益求精的工作态度、积极进取的科研精神以及诲人不倦的师者风范是我毕生的学习楷模。在三年的大学生涯里,还得到众多老师的关心支持和帮助,在此,谨向老师们致以衷心的感谢和崇高的敬意!

感谢父母对我二十多年来辛勤的养育,并让我获取了一定的知识并最终走向社会,为社会贡献自己!

本毕业设计在设计过程中,还得到不少同学朋友的大力支持和帮助,亦在此表示诚挚的谢意!

23

武汉工程大学毕业设计(论文)说明书

最后,我要向在百忙之中抽时间对本文进行审阅、评议和参加本人论文答辩的各位老师表示感谢!。

参考文献

[1] 张毅刚.MCS-51单片机应用设计[M].哈尔滨;哈尔滨工业大学出版社,2003 [2] 何为民.低功耗单片微机系统设计[M]. 北京:北京航空航天大学出版社,1994 [3] 何立民.单片机应用技术选编[M].北京;北京:航空航天大学出版社,1996 [4] 李广弟.单片机基础.[M]北京:北京:航空航天大学出版社,2001

[5] 王幸之.单片机应用系统抗干扰技术[M].北京:北京航空航天大学出版社,2000 [6] 杨振江.智能仪器与数据采集系统中的新器件及应用[M].西安电子科技大学出版社,2001

[7]蔡美琴.MCS-51系列单片机系统及其应用[M].高等教育出版社,2002 [8]张毅刚.单片机原理及应用[M].北京.高等教育出版社,2008

[9]李华.MCS-51系列单片机实用接口技术[M].北京;北京航空航天大学出版社,1993 [10]涂时亮.单片机软件设计技术[M].重庆;科学文献出版社重庆分社,1987 [11]徐君毅等.单片微型计算机原理及应用[M].上海;上海科学技术出版社,1988 [12]陈粤初等.单片机应用系统设计与实践[M].北京;北京航空航天大学出版社,1991 [13]王毅.单片机器件应用手册[M].北京;人民邮电出版社,1995 [14] Intel. Microcontroller Handbook[M],1988 [15] Intel. Software Handbook[M],1984

24

武汉工程大学毕业设计(论文)说明书

[16]李纲 基于GPRS技术的遥控显屏系统研究 硕士学位论文 河南理工大学 2010年 [17]Extended functionally remote control system and method therefore US Patent App. US6437836 B1

#include #define uchar unsigned char #define uint unsigned int uchar speed=15; sbit ST=P3^5; sbit SH=P3^6; sbit DATA=P3^7; sbit EN=P2^4; sbit K1=P1^0; sbit K2=P1^1; sbit K3=P1^2; sbit K4=P1^3; sbit K5=P1^4;

1 程序

25

附录

武汉工程大学毕业设计(论文)说明书

sbit K6=P1^5; bit LeftFlag; bit RightFlag; bit UpFlag; bit DownFlag; bit ZJ1Flag; bit ZJ2Flag=1; { }

uchar code hanzi[][32]={ /*电 CB4FA */

0x02,0x00,0x02,0x00,0x02,0x10,0x7F,0xF8,0x42,0x10,0x42,0x10,0x7F,0xF0,0x42,0x10, 0x42,0x10,0x7F,0xF0,0x42,0x10,0x02,0x00,0x02,0x04,0x02,0x04,0x01,0xFC,0x00,0x00/* 气 CB4BA */

0x10,0x00,0x10,0x08,0x1F,0xFC,0x20,0x00,0x2F,0xF0,0x40,0x00,0xBF,0xE0,0x00,0x20, 0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x22,0x00,0x12,0x00,0x0A,0x00,0x04/* 学 CD1A7 */

{0x01,0x08,0x10,0x8C,0x0C,0xC8,0x08,0x90,0x7F,0xFE,0x40,0x04,0x8F,0xE8,0x00,0x40,

0x00,0x80,0x7F,0xFE,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x02,0x80,0x01,0x00,}, /*院 CD4BA */

{0x00,0x80,0xF8,0x40,0x8F,0xFE,0x94,0x04,0xA0,0x00,0xA3,0xF8,0x90,0x00,0x88,0x00,

0x8F,0xFE,0xA9,0x20,0x91,0x20,0x81,0x20,0x82,0x22,0x82,0x22,0x84,0x22,0x88,0x1E,},

/*欢 CBBB6 */

{0x00,0x80,0x00,0x80,0xFC,0x80,0x05,0xFE,0x85,0x04,0x4A,0x48,0x28,0x40,0x10,0x40,

0x18,0x40,0x18,0x60,0x24,0xA0,0x24,0x90,0x41,0x18,0x86,0x0E,0x38,0x04,0x00,0x00,},

/*迎 CD3AD */

{0x40,0x00,0x21,0x80,0x36,0x7C,0x24,0x44,0x04,0x44,0x04,0x44,0xE4,0x44,0x24,0x44, 0x25,0x44,0x26,0x54,0x24,0x48,0x20,0x40,0x20,0x40,0x50,0x00,0x8F,0xFE,0x00,0x00,},

26

void delay(uchar ms) uchar y; for(;ms>0;ms--)

for(y=120;y>0;y--);

武汉工程大学毕业设计(论文)说明书

/*您 CC4FA */

{0x08,0x00,0x09,0x00,0x11,0xFE,0x12,0x04,0x34,0x40,0x32,0x50,0x52,0x48,0x94,0x44, 0x11,0x44,0x10,0x80,0x00,0x00,0x29,0x04,0x28,0x92,0x68,0x12,0x07,0xF0,0x00,0x00}, //\!\

{0x00,0x00,0x01,0x80,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x03,0xC0,0x01,0x80,

0x01,0x80,0x01,0x80,0x00,0x00,0x01,0x80,0x03,0xC0,0x01,0x80,0x00,0x00,0x00,0x00}, {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,} };

void SendByte(uchar a) { }

void LeftDisplay(void) {

uchar byte,i; byte=~a; for(i=0;i<8;i++) { }

SH=0; if(byte&0X80) DATA=1; else DATA=0; SH=1; byte<<=1;

uchar i,j,scan,k; for(i=0;i<6;i++) {

if(LeftFlag==1) {

for(k=0;k

scan=0;

if(LeftFlag==1)

{

for(j=0;j<31;j+=2)

27

武汉工程大学毕业设计(论文)说明书

{ ST=0;

SendByte(hanzi[i+3][j+1]);

SendByte(hanzi[i+3][j]); SendByte(hanzi[i+2][j+1]); SendByte(hanzi[i+2][j]); SendByte(hanzi[i+1][j+1]); SendByte(hanzi[i+1][j]); SendByte(hanzi[i][j+1]); SendByte(hanzi[i][j]); ST=1;

P2=scan; delay(5); EN=1; scan++;

}

}

else break;

}

for(k=0;k

SendByte(hanzi[i+4][j]); SendByte(hanzi[i+3][j+1]);

SendByte(hanzi[i+3][j]); SendByte(hanzi[i+2][j+1]); SendByte(hanzi[i+2][j]); SendByte(hanzi[i+1][j+1]); SendByte(hanzi[i+1][j]); SendByte(hanzi[i][j+1]);

ST=1;

28

EN=0;

武汉工程大学毕业设计(论文)说明书

}

}

}

}

}

}

EN=0; P2=scan; delay(5); EN=1; scan++;

else break;

else break;

void RightDisplay(void) {

uchar i,j,k,scan; for(i=0;i<6;i++) {

if(RightFlag==1) {

for(k=0;k

scan=0; if(RightFlag==1) {

for(j=0;j<31;j+=2) {

ST=0;

SendByte(hanzi[i][j+1]); SendByte(hanzi[i][j]); SendByte(hanzi[i+1][j+1]); SendByte(hanzi[i+1][j]); SendByte(hanzi[i+2][j+1]); SendByte(hanzi[i+2][j]); SendByte(hanzi[i+3][j+1]);

29

武汉工程大学毕业设计(论文)说明书

}

}

}

SendByte(hanzi[i+3][j]); ST=1; EN=0; P2=scan; delay(5); EN=1; scan++;

else break;

for(k=0;k

scan=0; if(RightFlag==1) { } else

30

for(j=0;j<31;j+=2) { }

ST=0;

SendByte(hanzi[i][j]); SendByte(hanzi[i+1][j+1]); SendByte(hanzi[i+1][j]); SendByte(hanzi[i+2][j+1]); SendByte(hanzi[i+2][j]); SendByte(hanzi[i+3][j+1]); SendByte(hanzi[i+3][j]); SendByte(hanzi[i+4][j+1]); ST=1; EN=0; P2=scan; delay(5); EN=1; scan++;

武汉工程大学毕业设计(论文)说明书

}

}

}

}

break;

else break;

void UpDisplay(void) {

uchar i,j,k,scan; char temp=0; for(i=0;i<6;) {

if(UpFlag==1) {

for(k=0;k

scan=15-temp; if(UpFlag==1) {

for(j=0;j<2*temp+1;j+=2) {

ST=0;

SendByte(hanzi[i+3][j+1]); SendByte(hanzi[i+3][j]); SendByte(hanzi[i+2][j+1]); SendByte(hanzi[i+2][j]); SendByte(hanzi[i+1][j+1]); SendByte(hanzi[i+1][j]); SendByte(hanzi[i][j+1]); SendByte(hanzi[i][j]); ST=1; EN=0; P2=scan; delay(5); EN=1; scan++;

31

武汉工程大学毕业设计(论文)说明书

}

}

}

}

}

}

else break;

temp++; { }

if(temp==16)

temp=0; i+=4;

else break;

void DownDisplay(void) {

uchar i,j,k,scan; char temp=30; for(i=0;i<6;) {

if(DownFlag==1) {

for(k=0;k

scan=0;

if(DownFlag==1) {

for(j=temp;j<31;j+=2) {

ST=0;

SendByte(hanzi[i+3][j+1]); SendByte(hanzi[i+3][j]); SendByte(hanzi[i+2][j+1]); SendByte(hanzi[i+2][j]);

32

j=30

武汉工程大学毕业设计(论文)说明书

SendByte(hanzi[i+1][j+1]); SendByte(hanzi[i+1][j]); SendByte(hanzi[i][j+1]); SendByte(hanzi[i][j]); ST=1; EN=0; P2=scan; delay(5); EN=1; scan++;

}

}

else break;

}

temp-=2; if(temp==-2) { temp=30; i+=4;

}

}

else break;

}

}

void ZJDisplay1(void) { uchar i,j,k,scan,temp; for(i=0;i<6;) { if(ZJ1Flag==1) { for(k=0;k

if(ZJ1Flag==1)

33

武汉工程大学毕业设计(论文)说明书

}

}

}

}

{ } else break;

for(j=0;j<2*temp+1;j+=2) { }

ST=0;

SendByte(hanzi[i+3][j+1]); SendByte(hanzi[i+3][j]); SendByte(hanzi[i+2][j+1]); SendByte(hanzi[i+2][j]); SendByte(hanzi[i+1][j+1]); SendByte(hanzi[i+1][j]); SendByte(hanzi[i][j+1]); SendByte(hanzi[i][j]); ST=1; EN=0; P2=scan; delay(5); EN=1; scan++;

temp++; if(temp==16) { }

temp=0; i+=4;

else break;

void ZJDisplay2(void) {

uchar i,j,k,scan,z=0;

34

武汉工程大学毕业设计(论文)说明书

char temp=30; for(i=0;i<6;) {

if(ZJ2Flag==1) {

for(k=0;k

scan=15-z; if(ZJ2Flag==1) {

for(j=temp;j<31;j+=2) {

SendByte(hanzi[i+3][j+1]);

SendByte(hanzi[i+2][j+1]);

//z作译码控制

ST=0; } temp-=2; z++;

} else break;

}

SendByte(hanzi[i+3][j]);

SendByte(hanzi[i+2][j]); SendByte(hanzi[i+1][j+1]); SendByte(hanzi[i+1][j]); SendByte(hanzi[i][j+1]); SendByte(hanzi[i][j]); ST=1; EN=0; P2=scan; delay(5); EN=1; scan++;

if(temp==-2) {

temp=30; i+=4; z=0;

35

武汉工程大学毕业设计(论文)说明书

}

}

else break;

}

}

void ClearFlag(void) { LeftFlag=0; RightFlag=0; UpFlag=0; DownFlag=0; ZJ1Flag=0; ZJ2Flag=0;

}

void KeyScan(void) { if(K1==0) { delay(10); if(K1==0) { while(!K1); ClearFlag(); LeftFlag=1;

}

} if(K2==0) { delay(10); if(K2==0) { while(!K2); ClearFlag(); RightFlag=1;

}

}

36

武汉工程大学毕业设计(论文)说明书

if(K3==0) { delay(10); if(K3==0) { while(!K3); ClearFlag(); UpFlag=1;

}

} if(K4==0) { delay(10); if(K4==0) { while(!K4); ClearFlag(); DownFlag=1;

}

} if(K5==0) { delay(10); if(K5==0) { while(!K5); ClearFlag(); ZJ1Flag=1;

}

} if(K6==0) { delay(10); if(K6==0) { while(!K6);

ClearFlag();

37

武汉工程大学毕业设计(论文)说明书

ZJ2Flag=1;

}

}

}

void main(void) { TMOD=0X01; TH0=(65535-1000)/256; TL0=(65535-1000)%6; ET0=1; EA=1; TR0=1; while(1) { if(LeftFlag==1) { LeftDisplay();

}

if(RightFlag==1) { RightDisplay();

}

if(UpFlag==1) { UpDisplay();

}

if(DownFlag==1) { DownDisplay();

}

if(ZJ1Flag==1) { ZJDisplay1(); }

if(ZJ2Flag==1) { ZJDisplay2();

}

38

武汉工程大学毕业设计(论文)说明书

} }

void timer0(void) interrupt 1 {

TH0=(65535-1000)/256; TL0=(65535-1000)%6; KeyScan();

39

本文来源:https://www.bwwdw.com/article/jmkp.html

Top