基于单片机控制的点阵式汉字电子显示屏的设计_第1页
基于单片机控制的点阵式汉字电子显示屏的设计_第2页
基于单片机控制的点阵式汉字电子显示屏的设计_第3页
基于单片机控制的点阵式汉字电子显示屏的设计_第4页
基于单片机控制的点阵式汉字电子显示屏的设计_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

1、毕业设计(论文)任务书毕业设计(论文)任务书 题目:题目: 点阵式汉字电子显示屏的设计点阵式汉字电子显示屏的设计 任务与要求:任务与要求: 以以 mcs-51mcs-51 系单片机为核心器件,组成点阵式汉字电子显示屏。系单片机为核心器件,组成点阵式汉字电子显示屏。 显示屏由显示屏由 16*16led16*16led点阵显示器组成,可以以此显示点阵显示器组成,可以以此显示 4 4 个汉字。通过编个汉字。通过编 编译可以对汉字修改。编译可以对汉字修改。 时间:时间: 所属系部:所属系部: 学生姓名:学生姓名: 学学 号:号: 专业:专业: 指导单位或教研室:指导单位或教研室: 电子技术教研室电子技

2、术教研室 指导教师:指导教师: 职称:职称: 2010 年年 4 月月 15 日日 毕业设计毕业设计( (论文论文) )进度计划表进度计划表 日日 期期工工 作作 内内 容容执执 行行 情情 况况 指导教师指导教师 签签 字字 教师对进教师对进 度计划实度计划实 施情况总施情况总 评评 签名 年 月 日 本表作评定学生平时成绩的依据之一。 目目 录录 第第 1 1 章章 设计内容及设计方案设计内容及设计方案 .1 1.1 设计要求.1 1.2 总体设计方案和论证.1 1.2.1 led 显示屏控制系统设计.1 1.2.2 系统模块化设计.1 第第 2 2 章系统的功能概述章系统的功能概述 .2

3、 2.1 电路的基本概述.2 2.1.1 电路的基本组成.2 2.1.2 电路的特点及功能.2 2.2 主要设计内容及技术指标.3 2.2.1 主要设计内容.3 2.2.2 主要技术指标.3 2.3 led 显示屏控制系统设计.3 第第 3 3 章章 系统硬件设计系统硬件设计 .4 3.1 硬件电路组成及工作原理.4 3.3 at89c51 单片机的结构.5 3.3.1 at89c5 基本结构.5 3.3.2 单片机引脚图及封装.7 3.4 74 ls154 译码器芯片介绍.10 3.5 88 led 点阵显示模块的硬件设计及工作原理.11 第第 4 4 章章 系统的软件设计系统的软件设计 .

4、13 4.1 软件流程.13 4.2 汉字的表示及编码原理.14 4.3 提取汉字的软件的设计及实现.15 4.3.1 汉字的实现.16 第第 5 5 章章 系统调试与测试结果分析系统调试与测试结果分析 .18 5.1 元器件清单和使用的仪器仪表.18 5.1.1 电子设计元件清单.18 5.1.2 使用的仪器仪表.18 5.2 系统调试.18 5.2.1 硬件调试.19 5.2.2 软件调试.19 5.2.3 硬件软件联调.20 5.3 测试结果.20 总总 结结 .21 谢谢 辞辞 .22 参参 考考 文文 献献 .23 附录附录 1 1 电路设计总原理图电路设计总原理图.24 附录附录

5、2 2 程程 序序 清清 单单.25 摘摘 要要 随着电子技术和信息技术的迅速发展,计算机技术正在日益渗透到人们日 常生活的方方面面,在这一进程中,单片机起到了重要作用。 单片微型计算机是微型计算机的一个重要分支,也是一种非常活跃且颇具 生命力的机种。单片微型计算机简称单片机,特别适用于控制领域,故又称微 控制器( microcontroller unit, mcu),单片机由单块集成电路芯片构成,内部包 含有计算机的基本功能部件:中央处理器(cpu) 、存储器(mem) 、输入/输 出接口(i/o)等。因此,单片机只需要有适当的软件和外部设备,便可组成为 一个单片机控制系统。自 20 世纪

6、70 年代问世以来,已经对人类社会的各个方 面产生了巨大的影响。单片机技术开发和应用水平已经成为一个国家工业化发 展水平的重要标志。近年来,由于单片机在国防、工业、医疗、交通、通信、 机器人等高精尖技术领域的广泛应用,促进了单片机技术的迅猛发展。为了适 应广泛要求,各种新型的速度快、体积小、功能全、功耗低的单片机不断涌现 出来。比较有代表性的主要有 intel 公司的 mcs-51 系列以及其他公司的基于 51 内核的兼容机、pic 公司的 pic 系列单片机、atmel 公司的 avr 系列单片机以 及 32 位 arm 单片机等等。 关键字关键字:控制、微控制器、单片机 第第 1 1 章、

7、设计内容及设计方案章、设计内容及设计方案 1.11.1、设计要求、设计要求 以 mcs-51 系单片机为核心器件,组成电阵式汉字电子显示屏。显示屏游 16*16led 点阵显示器组成,可依次显示 4 个汉字。通过编程可以对汉字修改。 1.21.2 、总体设计方案和论证、总体设计方案和论证 1.2.11.2.1、 ledled 显示屏控制系统设计显示屏控制系统设计 led 显示屏控制系统实现显示信息的刷新技术有动态扫描和静态锁存两种 方式。 方案一:动态扫描,即一行发光二极管共用一行驱动寄存器,根据共用一 行驱动寄存器的发光二极管像素数目,分为 1/4,1/16 扫描等; 方案二:静态锁存,即每

8、一个发光一极管都对应有一个驱动寄存器,从而 保证了每一个发光一极管的亮度占空比为 100%; 动态扫描法可以大大减少控制器的 i/o 口,不但符合本设计的要,求而且 应用较广,因此选用方案一。 led 显示屏的数据传输方式主要有串行和并行两种。日前普遍采用串行控 制技术,显示屏每个单元内部的不同驱动电路和各级联单元之间,每个时钟仅 传送一位数据。采用这种方式的驱动 ic 种类较多,不同显示单元之间的联线较 少,可减少显示单元的数据传输驱动元件,从而提高整个系统的可靠性和性价 比,具体工程实现也较为容易。因此本设计采用串行控制技术。 1.2.21.2.2、系统模块化设计、系统模块化设计 本系统采

9、用单片机 at89c51 为 led 显示屏的控制核心,系统主要包括 led88 点阵显示模块、74ls154 译码器等。 图 1-1 总体硬件组成框图 系统框图如图 1-1 所示,系统主要由三大模块组成即 74ls154 译码器、 at89c51 单片机, 88 led 点阵显示模块。 第第 2 2 章、系章、系统的功能概述统的功能概述 2.12.1、电路的基本概述、电路的基本概述 2.1.12.1.1 、电路的基本组成、电路的基本组成 由 at89c51、4 片 74ls273 及 led 显示屏为核心组成的点阵式 led 汉字 显示屏是主要由时钟电路、复位电路、51 单片机、点阵阳极驱动

10、电路、点阵阴 极驱动电路、1616 显示屏 6 部分组成。 该电路采用 at89c51 单片机最小化应用设计,p0 口作为 i/o 口,输出行 数据和控制信号。p2 口作为 i/o 口,与“写”控制信号配合,输出列控制信号。 led 显示采用动态扫描方式实现。控制电路部分由 4 片 74ls32 和 4 片 74ls273 传输信号,传输出来的信号通过 74ls273 输出。通过编译依次显示汉 字。该 led 显示屏用途广泛,一般用于各种公共场所,作为宣传和广告的工具 1。 2.1.22.1.2、电路的特点及功能、电路的特点及功能 该装置通过点阵式 led 汉字显示屏来显示输出汉字,通过编程能

11、够随时对 汉字进行修改、调整。本次设计以单片机 at89c51 为核心,1#、2#锁存器分别 控制上 8 行和下 8 行,3#、4#锁存器分别控制左 8 列和右 8 列。通过软件编译, 从而达到汉字显示的目的。 通过此次设计让我们能更深一层的了解 led 汉字显示屏的工作原理、各部 分电路的功能作用以及整个电路的用途。该课题,要综合应用数字电路,模拟 电路,单片机等方面的知识,并且还要学习 protel、prosys、vw 软件和新的器 件,使我能进一步巩固加深所学的基本理论、基本技能和专业知识,使之系统 化、综合化。并且培养我收集加工各种信息与获取新知识的能力以及动手制作 的能力。该 led

12、 显示屏用途广泛,一般用于各种公共场所,作为宣传和广告的 工具。对于公共设施服务有着极为重要的意义。 2.22.2 、主要设计内容及技术指标、主要设计内容及技术指标 2.2.12.2.1 、主要设计内容、主要设计内容 1、用单片机 at89c51 及 led 点阵显示器为核心器件,制作一个点阵式汉 字电子显示屏。 2、完成电路原理图、印制电路板设计、元器件采购、装配及调试工作。 3、完成该课题的程序设计、提交程序设计框图及程序设计清单。 4、完成硬件与软件的综合调试,能实现预定的功能和主要技术指标。 2.2.22.2.2 、主要技术指标、主要技术指标 (1)点阵式显示器能依次显示 4 个汉字。

13、 (2)通过编程能够随时对汉字进行修改、调整。 2.32.3、ledled 显示屏控制系统设计显示屏控制系统设计 动态扫描,即一行发光二极管共用一行驱动寄存器,根据共用一行驱动寄 存器的发光二极管像素数目,分为 1/4,1/16 扫描等,动态扫描法可以大大减少 控制器的 i/o 口,不但符合本设计的要,求而且应用较广,因此选用此方案。 led 显示屏的数据传输方式主要有串行和并行两种。日前普遍采用串行控 制技术,显示屏每个单元内部的不同驱动电路和各级联单元之间,每个时钟仅 传送一位数据。采用这种方式的驱动 ic 种类较多,不同显示单元之间的联线较 少,可减少显示单元的数据传输驱动元件,从而提高

14、整个系统的可靠性和性价 比,具体工程实现也较为容易。因此本设计采用串行控制技术。 第第 3 3 章章、系统硬件设计、系统硬件设计 3.13.1 、硬件电路组成及工作原理、硬件电路组成及工作原理 本产品采用以 at89c51 单片机为核心芯片的电路来实现,主要由 at89c51 芯片、时钟电路、复位电路、列扫描驱动电路(74hcl54)、1616led 点阵 5 部分组成,如图 1 所示。其中,at89c51 是一种带 4kb 闪烁可编程可擦 除只读存储器(falsh programmable and erasable read onlymemory,fperom)的 低电压、高性能 cmos

15、型 8 位微处理器,俗称单片机。该器件采用 atmel 高 密度非易失存储器制造技术制造,工业标准的 mcs 一 5l 指令集和输出管脚相 兼容。由于将多功能 8 位 cpu 和闪烁存储器组合在单个芯片中,能够进行 1 000 次写擦循环,数据保留时间为 10 年。他是一种高效微控制器,为很多嵌 人式控制系统提供了一种灵活性高且价廉的方案。因此,在智能化电子设计与 制作过程中经常用到 at89c51 芯片。时钟电路由 at89c5l 的 18,19 脚的时钟 端(xtai l 及 xtal2)以及 12 mhz 晶振 x、电容 c2、c3 组成,采用片内振荡 方式。复位电路采用简易的上电复位电

16、路,主要由电阻 r,r2,电容 c,开关 k 组成,分别接至 at89c51 的 rst 复位输入端。led 点阵显示屏采用 1616 共 256 个象素的点阵,可通过万用表检测发光二极管的方法测试判断出该点阵 的引脚分布。 我们把行列总线接在单片机的 i0 口,然后把上面分析到的扫描代码送入 总线,就可以得到显示的汉字了。但是若将 led 点阵的行列端口全部直接接入 89s5 1 单片机,则需要使用 32 条 i0 口,这样会造成 i0 口资源的耗尽,系 统也再无扩充的余地。因此,我们在实际应用中只是将 led 点阵的 16 条行线 直接接在 p0 口和 p2 口,至于列选扫描信号则是由 4

17、16 线译码器 74hcl54 来 选择控制,这样一来列选控制只使用了单片机的 4 个 io 口,节约了很多 io 口资源,为单片机系统扩充使用功能提供了条件。考虑到 p0 口必需设置 上拉电阻,我们采用 47 k 排电阻作为上拉电阻。汉字扫描显示的基本过程 是这样的:通电后由于电阻 r,电容 c1 的作用,使单片机的 rst 复位脚电平 先高后低,从而达到复位;之后,在 c、c3、x 以及单片机内部时钟电路的作 用下,单片机 89c51 按照设定的程序在 p0 和 p2 接口输出与内部汉字对应的代 码电平送至 led 点阵的行选线(高电平驱动),同时在 p11,p12,p13,p14 接口输

18、出列选扫描信号(低电平驱动),从而选中 相应的象素 led 发光,并利用人眼的视觉暂留特性合成整个汉字的显示。再改 变取表地址实现汉字的滚动显示。 vcc 40 p2.6 27 p0.0 39 p0.6 33 p0.1 38 p0.2 37 p0.5 34 p0.4 35 p0.3 36 p0.7 32 /ea 31 ale 30 /psen 29 p2.7 28 p2.5 26 p2.4 25 p2.3 24 p2.2 23 p2.1 22 p2.0 21 p1.0 1 p1.1 2 p1.2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 rst 9 p3.0 1

19、0 p3.1 11 p3.2 12 p3.3 13 p3.4 14 p3.5 15 p3.6 16 p3.7 17 xtal2 18 xtal1 19 vss 20 at89c51 y0 1 y1 2 y2 3 y3 4 y4 5 y5 6 y6 7 y7 8 y8 9 y9 10 y10 11 gnd 12 y11 13 y12 14 y13 15 y14 16 y15 17 oe1 18 oe2 19 d 20 c 21 b 22 a 23 vcc 24 u1 74ls154 22pfc1 22pfc2 vcc c3 220 1k vcc 12 y12mhz s1 vcc 4.7k*16

20、4.7k*16 2n5401*16 2n5551*16 1 1 2 2 3 3 4 4 5 5 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18 19 19 20 20 21 21 22 22 23 23 24 24 25 25 26 26 27 27 28 28 30 30 31 31 32 32 29 29 led16*16 图 3-1 硬件电路组成 3.33.3、 at89c51at89c51 单片机的结构单片机的结构 3.3.13.3.1、 at89c5at89c5 基本结构基本结构 at

21、89c51 是一种带 4k 字节闪烁可编程可擦除(fperomfalsh programmable and erasable read only memory)的低电压,高性能 cmos8 位微 处理器,俗称。at89c2051 是一种带 2k 字节闪烁可编程可擦除只读存储器的 单片机。单片机的可擦除只读存储器可以反复擦除 100 次。该器件采用 atmel 高密度非易失存储器制造技术制造,与工业标准的 mcs-51 指令集和 输出管脚相兼容。由于将多功能 8 位 cpu 和闪烁存储器组合在单个芯片中, atmel 的 at89c51 是一种高效微控制器,at89c2051 是它的一种精简版本

22、。 at89c 单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形 及引脚排列如图 3-2 所示 图 3-2 外形及引脚 1 内部结构:只读存储器即 rom(read only memory) 。 2 外部结构:1、电源:单片机使用的是 5v 电源,其中正极接 40 引脚, 负极(地)接 20 引脚。 2、振蒎电路:单片机是一种时序电路,必须提供脉冲 信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器,接 18、19 脚。3、复位引脚 4、ea 引脚:ea 引脚接到正电源端。 3 引脚功能说明: 单片机的 40 个引脚大致可分为 4 类:电源、时钟、控 制和 i/o 引脚

23、。 电源: vcc 芯片电源,接+5v; vss -接地端; 4 时钟:xtal1、xtal2-晶体振荡电路反相输入端和输出端。 5 控制线:控制线共有 4 根, ale/prog:地址锁存允许/片内 eprom 编程脉冲。 ale 功能:用来锁存 p0 口送出的低 8 位地址。 prog 功能:片内有 eprom 的芯片,在 eprom 编程期间,此 引脚输入编程脉冲。 (2) psen:外 rom 读选通信号。 (3)rst/vpd:复位/备用电源。 rst(reset)功能:复位信号输入端。 vpd 功能:在 vcc 掉电情况下,接备用电源。 (4)ea/vpp:内外 rom 选择/片内

24、 eprom 编程电源。 ea 功能:内外 rom 选择端,管脚接到正电源端。 vpp 功能:片内有 eprom 的芯片,在 eprom 编程期间,施 加编程电源 vpp。 6 i/o 线 89c51 共有 4 个 8 位并行 i/o 端口:p0、p1、p2、p3 口,共 32 个引脚。 p3 口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线). 3.3.23.3.2、 单片机引脚图及封装单片机引脚图及封装 图 3-3 总线型引脚封装 主要特性: 与 mcs-51 兼容 4k 字节可编程闪烁存储器 寿命:1000 写/擦循环 数据保留时间:10 年 全静态工作:0hz-24mhz

25、三级程序存储器锁定 1288 位内部 ram 32 可编程 i/o 线 两个 16 位定时器/计数器 5 个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 管脚说明: vcc:供电电压。 gnd:接地。 p0 口:p0 口为一个 8 位漏级开路双向 i/o 口,每脚可吸收 8ttl 门电流。 当 p1 口的管脚第一次写 1 时,被定义为高阻输入。p0 能够用于外部程序数据 存储器,它可以被定义为数据/地址的第八位。在 fiash 编程时,p0 口作为原 码输入口,当 fiash 进行校验时,p0 输出原码,此时 p0 外部必须被拉高。 p1 口:p1 口是一个内部提供上拉

26、电阻的 8 位双向 i/o 口,p1 口缓冲器能 接收输出 4ttl 门电流。p1 口管脚写入 1 后,被内部上拉为高,可用作输入, p1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在 flash 编程和校验时,p1 口作为第八位地址接收。 p2 口:p2 口为一个内部上拉电阻的 8 位双向 i/o 口,p2 口缓冲器可接收, 输出 4 个 ttl 门电流,当 p2 口被写“1”时,其管脚被内部上拉电阻拉高,且作 为输入。并因此作为输入时,p2 口的管脚被外部拉低,将输出电流。这是由于 内部上拉的缘故。p2 口当用于外部程序存储器或 16 位地址外部数据存储器进 行存取时,p

27、2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势, 当对外部八位地址数据存储器进行读写时,p2 口输出其特殊功能寄存器的内容。 p2 口在 flash 编程和校验时接收高八位地址信号和控制信号。 p3 口:p3 口管脚是 8 个带内部上拉电阻的双向 i/o 口,可接收输出 4 个 ttl 门电流。当 p3 口写入“1”后,它们被内部上拉为高电平,并用作输入。作 为输入,由于外部下拉为低电平,p3 口将输出电流(ill)这是由于上拉的缘 故。 p3 口也可作为 at89c51 的一些特殊功能口,如下表所示: 口管脚 备选功能 p3.0 rxd(串行输入口) p3.1 txd(串行输

28、出口) p3.2 /int0(外部中断 0) p3.3 /int1(外部中断 1) p3.4 t0(记时器 0 外部输入) p3.5 t1(记时器 1 外部输入) p3.6 /wr(外部数据存储器写选通) p3.7 /rd(外部数据存储器读选通) p3 口同时为闪烁编程和编程校验接收一些控制信号。 rst:复位输入。当振荡器复位器件时,要保持 rst 脚两个机器周期的高 电平时间。 ale/prog:当访问外部存储器时,地址锁存允许的输出电平用于锁存地 址的地位字节。在 flash 编程期间,此引脚用于输入编程脉冲。在平时, ale 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/

29、6。因此 它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部 数据存储器时,将跳过一个 ale 脉冲。如想禁止 ale 的输出可在 sfr8eh 地 址上置 0。此时, ale 只有在执行 movx,movc 指令是 ale 才起作用。另 外,该引脚被略微拉高。如果微处理器在外部执行状态 ale 禁止,置位无效。 /psen:外部程序存储器的选通信号。在由外部程序存储器取指期间,每 个机器周期两次/psen 有效。但在访问外部数据存储器时,这两次有效的 /psen 信号将不出现。 /ea/vpp:当/ea 保持低电平时,则在此期间外部程序存储器(0000h- ffffh) ,

30、不管是否有内部程序存储器。注意加密方式 1 时,/ea 将内部锁定为 reset;当/ea 端保持高电平时,此间内部程序存储器。在 flash 编程期间, 此引脚也用于施加 12v 编程电源(vpp) 。 xtal1:反向振荡放大器的输入及内部时钟工作电路的输入。 xtal2:来自反向振荡器的输出。 振荡器特性: xtal1 和 xtal2 分别为反向放大器的输入和输出。该反向放大器可以配 置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件, xtal2 应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外 部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的

31、宽度。 3.43.4、7474 ls154ls154 译码器芯片介绍译码器芯片介绍 74ls154 是一个 416 译码器,4-线至 16 线解码器/解复用器,上述每 4 行至 16 线解码器采用的 ttl 电路破解四个二进制编码的输入,其中有 16 互相排斥的输出时,双方频闪输入,g1 和 g2,是低的。解复用功能,是 由使用 4 输入线路,以解决输出线,通过数据从一台的频闪输入与其他频闪输 入偏低。当频闪输入高,所有产出都很高。这些解多工器,都是一个完美适 合实施高效能记忆体解码器。所有投入都缓冲和输入钳位二极管提供,以减 少传输线的影响,从而简化了系统设计。 表 3-1 74ls154

32、的真值表 4-16 线译码器, 其管脚如 2-1 表所示, a,b,c,d 为译码的输入端, 值的区间从 0000 到 1111,y1y15 是对应 a,b,c,d 四个输入引脚的输出 脚,其中选中的线用输出低电平,没有选中的输出高电平, 1 g 、 2 g 是使 能端,只有输入相应 d 低电平才能使译码器正常工作。 74ls154 与 at89c51 的连接:a【23 脚】 ,b【22 脚】 ,c【21 脚】 ,d【20 脚】分别接到 at89c51 的 p1.0【1 脚】 ,p1.1【2 脚】 ,p1.2【3 脚】和 p1.3【4 脚】上。 其他脚连接:g1【18 脚】 ,g2【19 脚】

33、接地,使芯片工作;y1【1 脚】 y15【17 脚】连接到 16*16 点阵 led 显示屏上;其中 gnd【12 脚】 ,vcc【24 脚】 。 图 3-4 74ls154 管脚图 3.53.5 、8888 ledled 点阵显示模块的硬件设计及工作原理点阵显示模块的硬件设计及工作原理 88 led 点阵显示模块是 led 显示屏设计的关键部分,共阴和共阳接法设 计的好坏直接关系到 led 显示屏的亮度、稳定度等重要指标。给出 88 点阵 led 的工作原理。图 3-5 为 88 点阵 led 外观及引脚图,其等效电路如图 3-6 所示,只要其对应的 x、y 轴顺向偏压,即可使 led 发亮

34、。例如如果想使左上 角 led 点亮,则 y0=1,x0=0 即可。应用时限流电阻可以放在 x 轴或 y 轴。 图 3-5 88 点阵 led 外观及引脚图 图 3-6 88 点阵 led 等效电路 由 88 点阵 led 的工作原理图以及 88 点阵 led 外观及引脚图和其等效 电路,可得出 1616 点阵 led 显示汉字的工作原理:1616 点阵 led 显示器 有两种接线形式,即共阴接法和共阳接法。共阳接法的原理图如图 3-6 所示, 图中只画出了 88 点阵的二极管。每一行发光二极管的阳极接在一起,有一个 引出端 x,每一列发光二极管的阴极接在一起,有一个引出端 y。当给发光 二极

35、管阳极引出端0 加高电平,阴极引出端 y0 加低电平时,左上角的二极管 点亮。因此,对行和列的电平进行扫描控制时,可以实现显示不同汉字的目的。 第第 4 4 章、系统的软件设计章、系统的软件设计 软件是该 led 显示屏控制系统的重要组成部分,在系统的软件设计中我们 也才用了模块化设计,将系统的各部分功能编写成子模块的形式,这样增强了 系统软件的可读性和可移植性。 4.14.1、软件流程、软件流程 本系统中(单片机 89c51)的主要功能就是实现 led 显示屏上字样的移位、 显示、数据的读取等功能。其主程序流程如图 3-1 所示。 开机 机 系统初始化 否 是 判断是否处于通状态? 移位显示

36、 读取显示内容 图 4-1 主程序流程图 读取 at89c51 的 rom 中的标 志位 等待 判断是否有中断标志? 是否 4.24.2 、汉字的表示及编码原理、汉字的表示及编码原理 ucdos 软件中的文件 hzk16 和文件 asc16 分别为 1616 的国标汉字点 阵文件和 816 的 ascii 码点阵文件,以二进制格式存储。在文件 hzk16 中,按 汉字区位码从小到大依次存有国标区位码表中的所有汉字,每个汉字占用 32 个 字节,每个区为 94 个汉字。在文件 asc16 中按 ascii 码从小到大依次存有 816 的 ascii 码点阵,每个 ascii 码占用 16 个字节

37、 在 pc 机的文本文件中,汉字是以机内码的形式存储的,每个汉字占用两个字 节:第一个字节为区码,为了与 ascii 码区别,范围从十六进制的 0a1h 开始(小于 80h 的为 ascii 码字符),对应区位码中区码的第一区;第二个字节为位码,范围也 是从 0a1h 开始,对应某区中的第一个位码。这样,将汉字机内码减去 0a0ah 就 得该汉字的区位码。 例如汉字“房”的机内码为十六进制的“b7bf”,其中“b7”表示区码,“bf”表示 位码。所以“房”的区位码为 0b7bfh-0a0a0h=171fh。将区码和位码分别转换 为十进制得汉字“房”的区位码为“2331”,即“房”的点阵位于第

38、23 区的第 31 个字 的位置,相当于在文件 hzk16 中的位置为第 32(23-1) 94+(31-1)=67136b 以 后的 32 个字节为“房”的显示点阵。 在本单片机系统中,起始地址的高 4 位为页号,送 p1 口,低 15 位为数据区地 址,送指针 dptr。利用“movx”指令连续取 32 个字节送 lcd 的相应位置,就能 实现正确的汉字显示。 ascii 码的显示与汉字的显示基本原理相同。在文件 asc16 中不存在机内 码的问题,其显示点阵直接按 ascii 码从小到大依次排列,只是每个 ascii 码在 文本文件中只占 1 个字节且小于 80h,而且 ascii 码为

39、 816 点阵,所以在 ascii16 文件中,每个 ascii 码的点阵也只占 16 个字节。 首先提取 1616 的国标汉字点阵和 816 的 ascii 码点阵(如 ucdos 软件 中的 hzk16 和 asc16)并将其直接写入 29f040。其中 hzk16(共 256kb)点 07 页。为了便于编程,asc16 虽然只有 4kb,也单独占用第 8 页。其余剩下的空间 用来存储汉字语句的编码。 由于 240128 点阵的 led 显示器每个只能显示 15 个汉字(1616 点阵汉字),即 30 个字节。所以可将需要显示的语句按 30 个字节为 1 行进行编写,不足 30 个字 符的

40、则补空格。在 pc 机上进行录入时,每行 30 个字符再加上回车键和换行符, 实占 32 个字符。所录入的语句以纯文本形式存盘,再将该文本文件以二进制的 形式写入 29f040 的第 9 页。那么,以后根据需要显示的语句行号便可以进行正 确的显示。此,作者推出荐使用 dos 版本的 wps 软件的“编辑非文收文件”功能, 它能清楚地显示每行是否有 30 个字符。 4.34.3、 提取汉字提取汉字的软件的设计及实现的软件的设计及实现 我们以 ucdos 中文宋体字库为例,每一个字由 16 行 16 列的点阵组成显 示。即国标汉字库中的每一个字均由 256 点阵来表示。我们可以把每一个点理 解为一

41、个像素,而把每一个字的字形理解为一幅图像。事实上这个汉字屏不仅 可以显示汉字, 也可以显示在 256 像素范围内的任何图形。 图 4-2 用 8 位的 at89c51 单片机控制, 由于单片机的总线为 8 位,一个字需要 拆分为 2 个部分。 一般我们把它拆分为上部和下部,上部由 8*16 点阵组成, 下部也由 8*16 点阵组成。 在本例中单片机首先显示的是左上角的第一列的上半部分,即第 0 列的 p00-p07 口。方向为 p00 到 p07 ,显示汉字“小”时,p05 点亮,由上往下排列,为 p0.0 灭,p0.1 灭, p0.2 灭 p0.3 灭, p0.4 灭, p0.5 灭,p0.

42、6 灭,p0.7 灭。即二进制 00000000,转换为 16 进制为 00h.。 上半部第一列完成后,继续扫描下半部的第一列,为了接线的方便,我们 仍设计成由上往下扫描,即从 p27 向 p20 方向扫描,从上图可以看到,p2.4 亮, 即为 00000100,16 进制则为 04h。 然后单片机转向上半部第二列,全不亮,为 00000000,即 16 进制 00h. 这一列完成后继续进行下半部分的扫描,p2.5 点亮,为二进制 00000101,即 16 进制 20h. 依照这个方法,继续进行下面的扫描,一共扫描 32 个 8 位, 可以得出汉 字“小”的扫描代码为: db 00,00,0

43、0,10h,00,20h,00,40h db 01,80h,06,02,00,01,0ffh,0feh ;小 db 00,00,04,00,02,00,01,00 db 00,80h,00,60h,00,00,00,00 由这个原理可以看出, 无论显示何种字体或图像, 都可以用这个方法来 分析出它的扫描代码从而显示在屏幕上。 4.3.14.3.1、汉字的实现、汉字的实现 本系统的取字模软件主要是编辑 led 显示屏显示的内容,在设计中采用汇 编语言写了 led 显示屏控制系统的内容下载软件。软件界面如图 4-3 所示。 该软件的主要是对输入的汉字取点阵数据如下: 软件打开后输入汉字,点“检取”

44、,十六进制数据的汉字代码即可自动生成, 把我们所需要的竖排数据复制到我们的程序中即可。 小:db 00,00,00,10h,00,20h,00,40h db 01,80h,06,02,00,01,0ffh,0feh db 00,00,04,00,02,00,01,00 db 00,80h,00,60h,00,00,00,00 心:db 00,20h,00,40h,03,80h,00,00 db 0fh,0fch,00,02,80h,02,40h,02 db 38h,02,10h,02,00,02,00,0eh db 02,00,01,00,00,0e0h,00,00 慢:db 02,00,1c

45、h,00,00,00,0ffh,0ffh db 10h,00,0bh,0c1h,0fah,51h,0aah,5ah db 0abh,0d4h,0aah,54h,0abh,0d4h,0aah,5ah db 0fah,52h,07,0c1h,02,01,00,00 行: db 00,40h,08,80h,11h,00,23h,0ffh db 0c4h,00,02,00,42h,00,42h,00 db 42h,00,42h,02,42h,01,43h,0feh db 0c2h,00,46h,00,02,00,00,00 end 第第 5 5 章、系统调试与测试结果分析章、系统调试与测试结果分析 5

46、.15.1、元器件清单和使用的仪器仪表、元器件清单和使用的仪器仪表 5.1.15.1.1、电子设计元件清单、电子设计元件清单 元 件 编 号规 格 参 数作 用 简 介 u1at89c51核心控制芯片 led16*16 led 点阵组成汉字显示屏 u174ls1544 线-16 线译码器 r1200 r21k c322uf 复位电路 k1按键开关按键开关 c1, c220pf x112mhz 时钟电路 行 16*4.7kr 列 16*4.7k 上拉电阻 2n555116小功率 npn 三极管 2n540116小功率 pnp 三极管 5.1.25.1.2 、使用的仪器仪表、使用的仪器仪表 数字万

47、用表dt9203 5.25.2、系统调试、系统调试 根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试 和软硬件联调。由于在系统设计中采用模块设计法,所以方便对各电路模块功 能进行逐级测试:led 显示模块的调试等,最后将各模块组合后进行整体测试。 5.2.15.2.1、硬件调试、硬件调试 对各个模块的功能进行调试,主要调试各模块能否实现指定的功能。 5.2.25.2.2、软件调试、软件调试 软件调试采用 uvision3 集成开发环境及微机,将编好的程序进行调试,主 要是检查语法错误。vision2ide 基于 windows 的开发平台,包含一个高效的 编辑器,一个项目管理和

48、一 make 工具。vision2 支持所有的 keilc51 工具。 keil c51 是美国 keil software 公司出品的 51 系列兼容单片机 c 语言软件开发 系统,与汇编相比,c 语言在功能上、结构性、可读性、可维护性上有明显的 优势,因而易学易用。用过汇编语言后再使用 c 来开发,体会更加深刻。keil c51 软件提供丰富的库函数和功能强大的集成开发调试工具,全 windows 界 面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 keil c51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理 解。在开发大型软件时更能体现高级语言的优势

49、,包括 c 编辑器。宏汇编器, 连接/定位器,目标代码到 hex 的转换器。 图 5-1 vision2 界面 5.2.35.2.3、硬件软件联调、硬件软件联调 将调试好的硬件和软件进行联调,主要调试系统的实现功能。 5.35.3、测试结果、测试结果 此次系统设计结果较好,led 显示屏能很好的显示信息。led 显示屏由 4 块 8*8 的 led 小模块组成,整个显示屏可以显示一个 16*16 的汉字,汉字从右 到左移动显示,显示亮度也正好。 图 5-2 结结 束束 语语 在 led 点阵汉字显示屏的设计过程中,学到了很多东西,基本了解了整 个嵌入式开发的流程。例如,在进行整个设计之前,应该

50、先根据需求分析,对 单片机进行选型,然后对各个硬件模块在面包板进行搭试时候,要注意基本的 布板原则。在焊接电路板的时候,应该从最基本的最小系统开始, 分模块, 逐个进行焊接测试。在对各个硬件模块进行测试时,要保证软件正确的情况下 去测试硬件,要不然发生错误时,不知道到底是哪一方出错了。在进行搭试点 阵块的时候,因为电压过高,导致点阵模块损坏。这次设计开发,本人受益非 浅,在以后的开发过程中一定吸取教训。 参参 考考 文文 献献 1 张毅刚.单片机原理与应用m.北京:高等教育出版社,2003. 2 张大明,彭旭昀,尚静基.单片微机控制应用技术m.北京:机械工业出版社, 2006. 3 付家才.单

51、片机控制工程实践技术m.北京:化学工业出版社,2004. 4 . 5 戴佳,戴卫恒.51 单片机 c 语言应用程序设计实例精讲m.北京:电子 工业出版社,2006. 6 彭为,黄科,雷道仲.单片机典型系统设计实例精讲m.北京:电子工 业出版社,2006. 7 杨将新,李华军,刘东骏.单片机程序设计及应用从基础到实践m.北 京:电子业出版社工,2006. 8 赵亮,侯国锐.51 单片机 c 语言编程与实例m. 北京:人民邮电出版 社.2003。 9 韩志军,沈晋源. 单片机应用系统设计m.北京:机械工业出社, 2003。 10 睢丙东,魏泽鼎.单片机应用与实例m.北京:电子业出版社工, 2004。 11 李玉梅.基于 mcs-51 系列单片机原理的应用设计m. 北京: 国防工 业出版社,2006。 12 阎石.数字电子技术基础m.北京:高等教育出版社,2000。 13 潘永雄.新编单片机原理与应用m.西安:西安电子科技大学出版社, 2007。 14 戴胜华,蒋大明,杨世武.单片机原理与应用m.北京:清华大学出版 社,2005。 附录附录 1 1 电路设计总原理图电路设计总原理图 vcc 40 p2.6 27 p0.0 39 p0.6 33 p0.1 38 p0.2 37 p0.5 34 p0.4 35 p0.3 36 p0.7 32 /ea 31 ale 30 /psen

温馨提示

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

评论

0/150

提交评论