1、电子科技大学毕业设计设计题目 点阵 LED 显示模块 系 别 光电信息 专 业 电子信息工程 班 级 C100507411 姓 名 余志剑 指导导师 欧中华 2013 年 5 月 目 录1 概述.1.1 单片机的应用1.2 LED 简介 1.3 设计的意义和目的.1.4 设计思路.2 系统硬件电路设计2.1 设计原理.2.2 单片机的选择.2.3 74HC154 芯片.2.4 系统外围电路2.5 LED 点阵显示器2.6 取字模软件介绍3 系统软件部分设计3.1 程序流程图.3.2 显示驱动程序.4 调试及性能分析.4.1 HEX 文件的生成4.2 仿真调试.致谢参考文献内 容 摘 要LED
2、显示屏分为图文显示屏和视频显示屏,均由 LED 矩阵块组成。图文显示屏可与计算机同步显示汉字、英文文本和图形;视频显示屏采用微型计算机进行控制,图文、图像并茂,以实时、同步、清晰的信息传播方式播放各种信息,还可显示二维、三维动画、录像、电视、VCD 节目以及现场实况。LED 显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所本文以 STC89C52RC 为核心控制器,介绍了 LED 点阵电子显示屏的动态显示过程。单片机控制程序采用单片机 C51 语言进行编辑,通过编辑控制各显示点对应
3、LED 阳极和阴极端的电平,能有效控制各显示点的亮灭。文中详细介绍了 LED 点阵显示的设计方案,硬件电路各个部分的功能及其原理的程序设计,仿真过程及调试结果。关键词: LED 点阵显示,STC89C52RC 单片机,C 语言Content in this paperLED display is divided into graphic display and video display screen, LED by matrix blocks. With computer graphic display synchronous display Chinese characters and E
4、nglish text and graphics; Adopts microcomputer to control the video screen, picture and text, images and texts, in real-time, synchronous, clear information dissemination way play all kinds of information, can also according to 2 d, 3 d animation, video, TV, VCD, and live streaming. LED display scre
5、en colorful, stereo sense is strong, quiet, such as oil paintings, such as movies, widely used in railway stations, docks, airports, shopping malls, hospitals, hotels, Banks, securities market, construction market, auction houses, industry, enterprise management, and other public places.With STC89C5
6、2RC as the core controller, this paper introduces the dynamic display of the lattice LED electronic display process. Single-chip microcomputer control procedures MCU C51 language to edit, by editing control all display points corresponding to the LED anode and the cathode end level, can effectively
7、control the display bright points out.This paper introduced the design of LED dot matrix display, the function of each part of the hardware circuit and its principle of program design, the simulation process and the result of debugging.Keywords: LED dot matrix display, STC89C52RC single-chip compute
8、r, the C language1.1 单片机的应用单片机,全称单片微型计算机(英语:Single-Chip Microcomputer) ,又称微控制器(Microcontroller) ,是把中央处理器、存储器、定时/计数器(Timer/Counter) 、各种输入输出接口等都集成在一块集成电路芯片上的微型计算机。与应用在个人电脑中的通用型微处理器相比,它更强调自供应(不用外接硬件)和节约成本。它的最大优点是体积小,可放在仪表内部,但存储量小,输入输出接口简单,功能较低。由于其发展非常迅速,旧的单片机的定义已不能满足,所以在很多应用场合被称为范围更广的微控制器;由于单芯片微电脑常用于当控
9、制器故又名 single chip microcontroller,但是目前在中国大陆仍多沿用“单片机”的称呼。1.2 LED 简介发光二极管 (英语:Light-Emitting Diode,简称 LED) 是一种能发光的半导体电子元件。是一种透过三价与五价元素所组成的复合光源这种电子元件早在 1962 年出现,早期只能发出低光度的红光,被 hp 买价专利后当作指示灯利用。之后发展出其他单色光的版本,时至今日能发出的光已遍及可见光、红外线及紫外线,光度也提高到相当的光度。而用途也由初时作为指示灯、显示板等;随着白光发光二极管的出现,近年续渐发展至被用作照明。1.3 设计的意义和目的LED 体
10、积小,耗电量低,使用寿命长,高亮度,低热量,又节能环保坚固耐用,已经成为生活中不可缺少的部分。在设计过程中,亲自或参考文献,完成设计 从而更加熟悉掌握自己学过的东西,为以后的学习和工作打下基础。1.4 设计思路本文分为四个章节:第一章概述,介绍单片机的发展,设计的目的和意义。第二章系统硬件电路设计,介绍了硬件电路的设计方法。第三章系统软件设计,介绍了系统的软件设计流程。第四章为调试及性能分析,介绍本系统的详细调试过程。2 系统硬件电路设计2.1 设计原理本设计拟采用 STC89C52RC 单片机为核心,主要由 STC89C52RC 芯片,电源,译码器。两个 16*16 LED 点阵 4 部分组
11、成。如图所示。其工作原理是由单片机发出信号通过译码器 74HC154 将输入的四位十六进制码译码后输出高电平扫描信号。再将断码值送给 P0,P2 口以驱动相应段点亮,从而实现点阵的点亮。LED 点阵显示是由 8 个 8*8 点阵组成。电源用的是+5V 直流电压2.2 单片机的选择1. 概述按单片机机器字长可分为:4 位(很少用) ,8 位,16 位,32 位 按单片机内核可分为:MCS51、AVR 、PIC 、MSP、HT、ARM 等等 按单片机厂家分就更多了,MCS51内核的厂家就有多种:如 SST、Atmel、STC、winbond 等根据所需 我们最终选定STC89C52RC,如图。ST
12、C89C52 是 STC 公司生产的一种低功耗、高性能 CMOS8 位微控制器,具有 8K 在系统可编程 Flash 存储器 。STC89C52 使用经典的 MCS-51 内核,但做了很多的改进使得芯片具有传统 51 单片机不具备的功能。在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash,使得 STC89C52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k 字节 Flash,512 字节 RAM, 32 位 I/O 口线,看门狗定时器,内置 4KB EEPROM,MAX810 复位电路,3 个 16 位定时器/ 计数器,4个外部中断,一个 7
13、 向量 4 级中断结构(兼容传统 51 的 5 向量 2 级中断结构) ,全双工串行口。另外 STC89X52 可降至 0Hz 静态逻辑操作,支持 2 种软件可选择节电模式。空闲模式下,CPU 停止工作,允许 RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率 35MHz,6T/12T 可选。2. STC89C52RC 管脚说明VCC: 供电电压。GND: 接地。l P0.0P0.7 P0 口 8 位双向口线。 l P1.0P1.7 P1 口 8 位双向口线。 l P2.0P2.7 P2
14、 口 8 位双向口线。 l P3.0P3.7 P2 口 8 位双向口线。P0 口有三个功能: 1、外部扩展存储器时, 当做数据总线(如图 1 中的 D0D7 为数据总线接口) 2、外部扩展存储器时, 当作地址总线(如图 1 中的 A0A7 为地址总线接口) 3、不扩展时,可做一般的 I/O 使用, 但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。 P1 口只做 I/O 口使用:其内部有上拉电阻。 P2 口有两个功能: 1、扩展外部存储器时, 当作地址总线使用 2、做一般 I/O 口使用,其内部有上拉电阻; P3 口有两个功能: 除了作为 I/O 使用外(其内部有上拉电阻),还有一些特殊功
15、能,由特殊寄存器来设置,具体功能请参考我们后面的引脚说明。在介绍这四个 I/O 口时提到了一个“上拉电阻”那么上拉电阻又是一个什么东东呢?他起什么作用呢?都说了是电阻那当然就是一个电阻啦,当作为输入时, 上拉电阻将其电位拉高,若输入为低电平则可提供电流源 ;所以如果 P0 口如果作为输入时,处在高阻抗状态,只有外接一个上拉电阻才能有效。P3 口也可作为 STC89C52RC 的一些特殊功能口,P 口管脚备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 / INT0 (外部中断 0)P3.3/ INT1 (外部中断 1)P3.4 T0 (计时器 0 外部输入)P3.5
16、 T1 (计时器 1 外部输入)P3.6 / WR 外部数据存储器写选通P3.7 / RD 外部数据存储器读选通RST:复位输入Address lock enable . 地址锁存允许端。访问外部存储器用的,比如 RAM、ROM51 有外部总线,16 位的地址线,8 为的数据线,但是地址的低 8 位跟数据线是重合的,此访问的时候需要区分开低 8 位(P0 口,高 8 位是 P2 口)地址和数据,这就需要用到 ALE 信号了。访问存储器的时候,P2 口输出高地址,P0 输出低地址。利用外部的锁存器(一般用74LS373)配合 ALE 脉冲,锁存 P0 地址,这时候读写信号开始起作用( WR 或者
17、 RD) ,P0 口读入或者输出数据。在整个过程中,外部存储器的地址总线上的数据始终是稳定的,低 8 位地址的稳定靠的就是 ALE 和外部锁存器。现在的 51 一般都很少用外部存储器或者相似的使用外部总线的外设可,因此现在的51 单片机大多数都可以软件设置 ALE 脉冲的使能,由用户决定是否输出 ALE 脉冲,一来是降低 EMI,二来是可以多一个 IO 口(如果 ALE 是复用的话)根据设计需要用到 18 19 引用脚来接复位电路,P0 口和 P2 口用来接晶振电路,9 31 引脚用来接复位电路,P0 口和 P2 口用来接点阵显示,P1 口的 P1.0 到 P1.3 用来接74HC154 的四
18、个地址输入端。2.3 74HC154 芯片1. 概述74HC154 是一款高速 CMOS 器件,74HC154 引脚兼容低功耗肖特基TTL(LSTTL )系列。74HC154 译码器 4 位高有效二进制地址输入,并提供 16 个互斥的低有效输出。74HC154 的两个输入使能门电路可用译码器以消除输出端上的通常译码“ 假信号”,也可用于译码器扩展。该使能门电路包含两个“逻辑与,必须置为低以便使能输出端。任选一个使能输入端作为数据输入,74HC154 可充当一个 1-16 的多路分配器能输入端置低时,地址输出将会跟随应用的状态。在本设计中,74HC154 作为译码器,由于 154 为低电平有效,
19、必须 E1 E2 为电平 154 通过 20 到 23 的 ABCD 四个引脚与单片机 P1 口的 P1.0 到 P1.3 的四个引脚连接从而点亮点阵显示器。如图所示。2. 74HC154 管脚说明1-1 13-17: 输出端2: Gnd 电源18-19:使能输入端,低电平有效20-23 地址输入端24: VCC 电源正只要控制端 E1,E2 任意一个为高电平,ABCD 任意电平输入都无效。E1,E2 必须都为低电平才能操作芯片。如图所示。其中 1 表示高电平0 表示低电平X 表示不确定Y 表示输出74HC154 真值表E1 E2 A B C D OUTPUT1 1 X X X X Y1 0
20、X X X X 都为 10 1 X X X X 都为 10 0 0 0 0 0 都为 10 0 1 0 0 0 Y0 为 00 0 0 1 0 0 Y1 为 00 0 1 1 0 0 Y2 为 00 0 0 0 1 0 Y3 为 00 0 1 0 1 0 Y4 为 00 0 0 0 1 1 Y5 为 00 0 0 1 1 1 Y6 为 00 0 0 1 1 1 Y7 为 00 0 0 0 0 1 Y8 为 00 0 1 0 0 1 Y9 为 00 0 0 0 1 0 Y10 为 00 0 1 1 0 1 Y11 为 00 0 0 0 1 1 Y12 为 00 0 1 0 1 1 Y13 为 0
21、0 0 0 1 1 1 Y14 为 00 0 1 1 1 1 Y15 为 0当 DCBA=0000 时,输出 Y0=0 有效,选中第二个字的最右边的一列,P2 输入第八位,P0 口输入高八位。当 DCBA=0001 时,输出 Y1=0 有效,选中第二个字的第十五列,同样输入高低八位字体代码。当 DCBA=0010 时,输出 Y2=0 有效,选中第二个字的第十四列,依次进行点亮。2.4 系统外围电路1. 晶振电路电容大小没有固定值。一般二三十 p。晶振是给单片机提供工作信号脉冲的。这个脉冲就是单片机的工作速度。晶体振荡器也分为无源晶振和有源晶振两种类型。无源晶振与有源晶振(谐振)的英文名称不同,
22、无源晶振为 crystal(晶体),而有源晶振则叫做 oscillator(振荡器)。通常一个系统公用一个 晶振,便于各部分保存同步。电路一般有两个大小为30pF 的电容并联再和一个 12MHz 的晶振组成。如图3. 复位电路为确保微机系统中 电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。一般微机电路正常工作需要供电电源为 5V5%,即4.755.25V。由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当 VCC 超过 4.75V 低于 5.25V 以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作。单片机在启动时都需要复位,
23、以使 CPU 及系统各部件处于确定的初始状态,并从初态开始工作。89 系列单片机的复位信号是从 R ST 引脚输入到 芯片内的施密特 触发器中的。当系统处于正常工作状态时,且 振荡器稳定后,如果 RST 引脚上有一个高电平并维持 2 个机器周期(24 个振荡周期 )以上,则 CPU 就可以响应并将系统复位。单片机系统的复位方式有:手动按钮复位和上电复位。其电路组成是在 RST 复位输入引脚上接一个电容至 VCC 端,还有按键,下接一个电阻到地即可,如图。2.5 LED 点阵显示器1. LED 点阵显示器的介绍LED 电子显示屏是由几万-几十万个 半导体发光二极管像素点均匀排列组成。利用不同的材
24、料可以制造不同色彩的 LED 像素点。目前应用最广的是红色、绿色、黄色。而蓝色和纯绿色 LED 的开发已经达到了实用阶段。 LED 显示屏(LED panel):LED 就是 light emitting diode ,发光二极管的英文缩写,简称 LED。它是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。 LED 显示屏分为图文显示屏和视频显示屏,均由 LED 矩阵块组成。图文显示屏可与计算机同步显示汉字、英文文本和图形;视频显示屏采用微型计算机进行控制,图文、图像并茂,以实时、同步、清晰的信息传播方式播放各种信息,还可显示二
25、维、三维动画、录像、电视、VCD 节目以及现场实况。LED 显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。 LED 点阵显示屏特点: 可实现超高密度:室内可高达 62.500 点/平米(P4) 。 混色好:利用发光器件本身的微化处理和光的波粒二象性,使得红光粒子,纯绿光粒子,蓝光粒子三种粒子都将得到充分地相互混合搅匀。 抗静电性能优势超强:制作环境有着严格的标准还有产品结构的绝缘设计。 可靠性能强:相对于 SMD 和 LED LAMP 来说,LED DOT-MATRIX 平整性非
26、常好,很有美学上的观感。 可视角度大:140 度(水平方向) 通透性高:新一代点阵技术凭借晶片自身的高度纯度性能,以及几近 100%光通率的环氧树脂材料,达到了接近完美的通透率。 亮度高:相对 0603 或 0805 等形式的分立表贴,LED 可以有更多的光通量被反射出,8X8 点阵 LED 工作原理:8X8 点阵共需要 64 个发光二极管组成,且每个发光二极管是放置在行线的交叉点上,当对应的某一行置 0 电平,则相应的二极管就亮,如图所示。PROTEUS 仿真 LED 点阵 汉字 例.利用 Proteus 仿真一块 1616LED 点阵,并在其上循环显示汉字 “郑州大学”。Proteus 中
27、只有 57 和 88 等 LED 点阵,并没有 1616LED 点阵,而在实际应用中,要良好地显示一个汉字,则至少需要 1616 点阵。下面我们就首先介绍使用 88 点阵构建1616 点阵的方法,并构建一块 1616LED 点阵,用于本例的显示任务。首先,从 Proteus 元件库中找到“MATRIX-8X8-RED”元器件,并将四块该元器件放入 Proteus 文档区编辑窗口中。此时需要注意,如果该元器件保持初始的位置(没有转动方向) ,我们要首先将其左转 90,使其水平放置,那么此时它的左面 8 个引脚是其行线,右边 8 个引脚是其列线(当然,如果你是将右转,则右边 8 个引脚是行线) 。
28、然后我们将四个元器件对应的行线和列线分别进行连接,使每一条行线引脚接一行 16 个LED,列线也相同。并注意要将行线和列线引出一定长度的引脚,以便下面我们使用。如图所示,连接好的 16X16 点阵图连接成如上图的 1616 点阵只是第一步,这样分开的数块并不能达到好的显示效果,下面我们要将其进一步组合。组合实际上很简单,首先选中如上图中右侧的两块 88 点阵,然后拖动并使其与左侧的两块相并拢,如下图所示:我们可以看到原来的连线已经自动隐藏了,至于线上的交点,我们不要去动。然后,我们再来最后一步,选中下侧的两块点阵,并拖动使其与上侧的两块并拢,最后的效果如下图所示:可以看到,原来杂乱的连线现在已
29、经几乎全部隐藏了,一块 1616 的 LED 点阵做成了。需要注意,做成的 LED 点阵的行线为左侧的 16 个引脚,下侧的 16 个引脚为其列线,而且其行线为高电平有效,列线为低电平有效。然后,我们将其保存,以便以后使用。2.6 取字模软件介绍取模软件是用来,针对那些没有字库的显示屏先是汉字或者图片,这是需要你自己,用取模软件或者自己计算,然后用表格写的程序里啊,否者没法显示汉字啊。或者有些带字库的显示屏,但是字库不全的,字库里没有的字,需要你用,还有显示图片的时候,字库里也没有,也需要你取模,写的程序里的。取字模软件简要说明:1. 文字输入区的文字可以多行输入,字目不限。2. 文字输入完毕
30、后,用 Ctrl+Enter 结束输入,不再提供工具按钮。3. 取模原则,字节为单位,若不符合 8 的倍速时,补足位数。4. 可根据字体显示移动的方向自行选择横向纵向。5. 软件中可以自行设置字模的取模方式,修改图像,参数等。 ;列如电(0) 子(1) 科(2) 技(3) 大(4) 学(5) 光(6) 电(7)信(8) 息(9) 学(10) 院(11)DB 7FH FFH 7FH FFH 7FH FFH 03H E0H 7BH EFH 7BH EFH 03H E0H 7BH EFH;DB 7BH EFH 7BH EFH 03H E0H 7BH EFH 7FH BFH 7FH BFH FFH 8
31、0H FFH FFH;“电“,0DB FFH FFH 03H F0H FFH FBH FFH FDH FFH FEH 7FH FFH 7FH FFH 7FH DFH;DB 00H 80H 7FH FFH 7FH FFH 7FH FFH 7FH FFH 7FH FFH 5FH FFH BFH FFH;“子“,1DB 9FH EFH E1H EEH EFH EDH EFH EDH 80H EFH E7H EEH C7H EDH ABH EDH;DB EBH 8FH EDH E1H 2EH EEH EFH EFH EFH EFH EFH EFH EFH EFH EFH EFH;“科“,2DB F7H
32、 FBH F7H FBH F7H FBH 40H 80H F7H FBH D7H FBH 67H C0H 73H EFH;DB F4H EEH F7H F6H F7H F9H F7H F9H F7H F6H 77H 8FH 95H DFH FBH FFH;“技“,3DB 7FH FFH 7FH FFH 7FH FFH 7FH FFH 7FH FFH 00H 80H 7FH FFH BFH FEH;DB BFH FEH BFH FDH DFH FDH DFH FBH EFH F7H F7H E7H FBH 8FH FDH DFH;“大 “,4DB 7FH EFH F7H CEH CFH ECH
33、EFH F6H 01H 80H FDH DFH 0EH E8H FFH FDH;DB FFH FEH 01H 80H FFH FEH FFH FEH FFH FEH FFH FEH BFH FEH 7FH FFH;“学“,5DB 7FH FFH 7BH F7H 67H E7H 4FH F7H 6FH FBH 7FH DFH 01H 80H DFH FDH;DB DFH FDH DFH FDH DFH FDH EFH BDH EFH BDH F7H BDH FBH 83H FDH FFH;“光“,6DB 7FH FFH 7FH FFH 7FH FFH 03H E0H 7BH EFH 7BH EF
34、H 03H E0H 7BH EFH;DB 7BH EFH 7BH EFH 03H E0H 7BH EFH 7FH BFH 7FH BFH FFH 80H FFH FFH;“电“,7DB EFH FEH CFH F9H E7H FDH 17H 80H F3H FFH 33H E0H F5H FFH 36H E0H;DB F7H FFH 37H E0H B7H EFH B7H EFH B7H EFH 37H E0H B7H EFH FFH FFH;“信“,8DB 7FH FFH BFH FFH 07H F0H F7H F7H 07H F0H F7H F7H 07H F0H F7H F7H;DB 0
35、7H F0H FFH FFH 6FH FFH EBH DEH EBH B6H E9H B7H 1FH F0H FFH FFH;“息“,9DB 7FH EFH F7H CEH CFH ECH EFH F6H 01H 80H FDH DFH 0EH E8H FFH FDH;DB FFH FEH 01H 80H FFH FEH FFH FEH FFH FEH FFH FEH BFH FEH 7FH FFH;“学“,10DB FFH FEH E0H FDH 0EH 80H D6H DFH FAH FFH 3AH E0H F6H FFH EEH FFH;DB 0EH 80H 6AH FBH 76H FB
36、H 7EH FBH BEH BBH BEH BBH DEH BBH EEH 87H;“院 “,113 系统软件部分设计3.1 程序流程图通过 C 语言汇编,按照程序流程图进行编程,如图3.2 显示驱动程序#include“reg51.h“ #define uint unsigned int #define uchar unsigned charsbit k=P30; code uchar tab1= /*- 文字: 电 -*/ /*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/ 0x00,0x00,0x80,0x20,0x80,0x20,0x80,0x30,0x7F,0
37、x29,0x00,0x25,0x00,0x62,0x00,0xA5,0x78,0x29,0x86,0x30,0x81,0x20,0x00,0x00,0x80,0x31,0x7E,0x40,0x20,0x06,0x20,0x08,/*- 文字: 子 -*/ /*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x00,0x00,0x03,0x00,0xCC,0x3F,0x90,0x20,0x80,0x20,0x80,0x20,0x98,0x20,0xC6,0x3F, 0x01,0x40,0x20,0x40,0xFF,0x7F,0x20,0x49,0x10,0x49,0xF0
38、,0x7F,0x18,0x40,0x10,0x40,/*- 文字: 科 -*/*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/ 0x00,0x00,0x02,0x00,0x02,0x0C,0x02,0x03,0x82,0x00,0x42,0x00,0xFE,0xFF,0x02,0x00,0x02,0x00,0x02,0x00,0xFE,0xFF,0x02,0x00,0xC2,0x01,0x02,0x06,0x02,0x08,0x02,0x00, /*- 文字: 技 -*/ /*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/ 0x00,0x00,0
39、x01,0x10,0x81,0x11,0x62,0x11,0x14,0x11,0x08,0xFF,0x34,0x11,0xC2,0x11, 0x02,0x11,0x01,0x10,0x01,0x09,0x80,0x08,0xFE,0xFF,0x41,0x08,0x22,0x08,0x20,0x08,/*- 文字: 大 -*/*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/ 0x00,0x00,0x08,0x00,0x10,0x08,0x20,0x08,0x40,0x38,0x80,0x48,0x00,0x0B,0x00,0x0C, 0xFF,0xFF,0x00,0x0C
40、,0x00,0x0B,0x80,0x08,0x40,0x08,0x20,0x08,0x10,0x08,0x08,0x00,/*- 文字: 学 -*/*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/ 0x00,0x00,0x20,0x0C,0x20,0x0A,0x20,0xC8,0x20,0x28,0x20,0x19,0xA0,0x09,0x60,0x09, 0x7E,0x69,0x21,0x89,0x22,0x09,0x20,0x09,0x20,0x69,0x20,0x88,0x20,0x0C,0x20,0x02, /*- 文字: 光 -*/ /*- 宋体 12; 此字
41、体下对应的点阵为:宽 x 高=16x16 -*/ 0x00,0x00,0x8E,0x30,0x82,0x28,0x82,0x24,0xFC,0x24,0x80,0x64,0x80,0xA4,0xF0,0x24, 0x8C,0x24,0x82,0x30,0x01,0x08,0xE0,0x61,0x10,0x5A,0x20,0x44,0xFF,0x7F,0x00,0x00, /*- 文字: 电 -*/ /*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x00,0x00,0x0F,0x00,0x01,0x00,0xF9,0x1F,0x11,0x11,0x11,0x11,0x
42、11,0x11,0x11,0x11, 0xFE,0xFF,0x10,0x11,0x10,0x11,0x10,0x11,0x10,0x11,0xF8,0x1F,0x00,0x00,0x00,0x00, /*- 文字: 电 -*/ /*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x00,0x00,0x0F,0x00,0x01,0x00,0xF9,0x1F,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0xFE,0xFF,0x10,0x11,0x10,0x11,0x10,0x11,0x10,0x11,0xF8,0x1F,0x00,0x0
43、0,0x00,0x00,/*- 文字: 子 -*/ /*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/0x00,0x00,0x0F,0x00,0x01,0x00,0xF9,0x1F,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0xFE,0xFF,0x10,0x11,0x10,0x11,0x10,0x11,0x10,0x11,0xF8,0x1F,0x00,0x00,0x00,0x00, /*- 文字: 信 -*/ /*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/ 0x00,0x00,0x0F,0x00,0x0
44、2,0x20,0x0C,0x20,0xF0,0x2B,0x00,0x2A,0x00,0x2A,0x00,0x2A, 0x00,0x2A,0x00,0x2A,0x00,0x2A,0x00,0x2A,0x00,0xE2,0x00,0x32,0x00,0x08,0x00,0x04, /*- 文字: 息 -*/ /*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/ 0x00,0x00,0x04,0x00,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20, 0xFC,0x3F,0x04,0x20,0x04,0x2
45、0,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x00,/*- 文字: 工 -*/*- 宋体 12; 此字体下对应的点阵为:宽 x 高=16x16 -*/ 0x00,0x00,0x04,0x00,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20, 0xFC,0x3F,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x00, /*- 文字: 程 -*/ /*- 宋体 12; 此字体下对应的点阵为:
46、宽 x 高=16x16 -*/ 0x00,0x00,0x82,0x00,0x92,0x7C,0x92,0x44,0x92,0x44,0xFE,0x44,0x92,0x44,0x92,0x44, 0x92,0x7C,0x02,0x00,0x60,0x44,0x80,0xC4,0xFF,0x7F,0x80,0x25,0x60,0x24,0x10,0x24,; const uchar tab2=0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f; void delay(uint n) uint
47、 i; for(i=0;in;i+); void main() uint j,r,q=0,t=0; P2=0x00; P0=0x00; k=0; while(1) for(r=0;r3;r+) for(j=q;j32+q;j=j+2) for(r=0;r3;r+) for(j=q;j32+q;j=j+2) P1=tab216-t; P2=tab1j; P0=tab1j+1; delay(255); t+; if(t=16) t=0; q=q+2; if(q=510) q=0; 4 调试及性能分析 4.1 HEX 文件的生成1打开单片机软件开发系统 Keil,单击“uVision ”菜单中的“project”,在下拉菜单中单击“New Project”选项后,弹出“Create New Project”对话框,键入新建项目名称。 2.键入新建项目名称并单击“确定”按钮后,在弹出的“ SelectDevice”的对话框中选则合适的单片机型号,如 STC89C52RC。3.单击“uVision”菜单中的“File ”,在此下拉菜单中选择“New ”后,打开一个空的文本编辑窗口,在此窗口中键入程序,创建新的源程序“88.c”文件。 4.在左边的“Project ”窗口的“Fil