单片机自动控制滚动广告屏.doc_第1页
单片机自动控制滚动广告屏.doc_第2页
单片机自动控制滚动广告屏.doc_第3页
单片机自动控制滚动广告屏.doc_第4页
单片机自动控制滚动广告屏.doc_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

毕 业 设 计 类类 别 别 专专 业 业 班班 级级 姓姓 名 名 毕业设计题目 毕业设计题目 单片机自动控制滚动广告屏单片机自动控制滚动广告屏 指导教师姓名 指导教师姓名 2010 年年 4 月月 2 摘 要 我国开始使用单片机是在 1982 年 20 世纪 90 年代中期单片 机技术和市场发展非常迅速 近年来 单片机已经成为科技领域 的有力工具 人类社会生活的得力助手 它的广泛应用 不仅仅 体现在工业控制 机电应用 智能仪表 实时控制 航空航天 尖端武器等行业和领域的智能化 高精度化 而且在人类日常生 活中也随处可见它的身影 洗衣机 电冰箱 电子玩具 收录机 等家用电器配上单片机后 不仅提高了智能化程度 增强了功能 也使人类生活更加方便 舒适 丰富多彩 20 世纪 90 年代后 嵌入式系统设计由以嵌入式微处理器为核 心的 集成电路 级设计 逐渐转向 集成系统 级设计 在 MCU 提出了系统芯片 SoC System on a Chip 的基本概念 例如 ARM 公司的 ARM HP 公司的 PARISC 及 Sun 公司的 Sparc 等等 它 们为高性能嵌入式系统开发提供了功能丰富的硬件平台 也为实 时嵌入式操作系统的广泛应用奠定了基础 这些高性能微处理器 的推广应用是否就意味着单片机即将退出嵌入式微处理器的舞台 呢 目前 单片机正朝着高性能和多品种方向发展 其趋势将进 一步向着 CMOS 化 低功耗 小体积 大容量 高性能 低价格和 外围电路内装化等几个方面发展 其功能也将越来越丰富 速度 也越来越快 甚至有些方面并不逊于 ARM 或 DSP 还有最为重要的 是生产成本问题 普通 ARM 或 DSP 的价格是一般单片机的几倍甚 至数 10 倍 因此在大批量工业生产时 这也成为了厂商选择的重 要因素 据相关部门统计 我国的单片机年容量已达 1 亿 3 亿片 且每年以大约 16 的速度增长 所以综合单片机技术和市场需求等 多方面情况来看 它仍然有自己广阔的应用前景 随着 LED 显示屏在广告传媒领域逐渐崭露头角 其控制系统 也如雨后春笋 层出不穷 由于它的控制系统均是基于嵌入式微 3 处理器开发 所以单片机在其中也占有一席之地 但是 由于 LED 显示屏控制较复杂 特别是对于显示特殊效果 如循环移动 覆 盖 霓虹灯效果 要求处理器运算速度快 执行效率高 所以很 多控制卡生产厂家采用高端嵌入式系统进行设计 这样做虽然能 在一定程度上提高数据处理速度 但是并不能完全满足所有显示 效果要求 而且开发和产品成本也会随之成倍增加 甚至由于其 设计不当可能在显示时出现抖动 闪烁 重影等现象 归根结底 LED 显示屏控制卡的设计中硬件是一方面因素 同时还要考虑到显 示数据组织方式 通过软硬结合的方法才能设计出一款性价比较 高的控制卡 单片机控制的循环移动 滚动 广告屏也就应运而生 他不 仅制作简单 而且美观大方是企事业单位等宣传其产品的一种高 效而具体化的工具 相信在不久的未来其应用前景会更加广阔 无线发射机硬 件控制模块 无线接收机硬 件控制模块 RS 232 串口通信 发射信息 PC 机控制系统 单片机系统LED 点阵显示屏 行列扫描驱动 4 目 录 第一章第一章 概概 述述 1 1 1 单片机概述 1 1 1 1 汇编语言及其优点 2 1 2 LED 点阵数码显示屏概述 3 1 2 1 LED 的简介 3 1 2 2 点阵的概述 3 1 2 3 LED 电子屏参数与术语 4 1 3 LED 点阵数码显示屏的前景和发展 6 第第 2 2 章章 硬件介绍硬件介绍 7 2 1 MSC 51 系列 AT89S51 单片机 7 2 1 1 AT89S51 单片机的内部结构 8 2 1 2 MCS 51 的引脚说明 11 2 2 带锁存器输出的 8 位移位寄存器 74HC595 13 2 2 1 输出能力 14 2 2 2 引脚说明 14 2 2 3 功能表 14 2 38 8 的 LED 1588 点阵模块 15 2 3 1 产品内部电路图 16 2 3 2 PIN 连接说明 16 2 3 3 产品描述 17 第第 3 章章 硬件设计硬件设计 22 5 3 1 硬件设计主框图 22 3 2 LED 显示屏的驱动原理 23 3 3 8 8 LED 点阵连接成显示屏的硬件连接 23 3 4 单片机与 74HC595 的硬件连接 24 3 5 89S51 单片机 显示模块及驱动模块的连接 26 第第 4 4 章章 软件设计软件设计 26 4 1 显示原理 26 4 1 1LED 的显示原理 26 4 1 2 点阵的显示原理 28 4 2 设计思路 29 4 3 16 16 点阵字库字模的提取 30 4 5 主程序流程图 32 4 6 汇编程序 33 参考文献参考文献 36 感感 谢谢 辞辞 37 1 第一章第一章 概概 述述 1 1 1 1 单片机概述单片机概述 单片微型计算机 single chip microcomputer 简称单片机 它是为各类专用控制器而设计的通用或专用微型计算机系统 高 密度集成了普通计算机微处理器 一定容量的 RAM 和 ROM 以及输 入 输出接口 定时器等电路于一块芯片上构成的 1976 年 Intel 公司推出的 MCS 48 系列 8 位单片机 以其体 积小 功能全 价格低等特点赢得了广泛的应用 MCS 48 为单片 机的发展奠定了基础 成为单片机发展过程中的一个重要阶段 在 MCS 48 成功的激励下 许多半导体公司和计算机公司竞 相研制和开发自己的单片机系列 其中包括 MOTOROLA Zilog Philips Atmel 等公司的产品 尽管目前单片机品种繁多 但其中最具有典型性的当数 Intel 公司的 MCS 51 系列 MCS 51 系列是在 MCS 48 系列的基础上于 80 年代发展起来的 虽然它仍然是 8 位单片机 但其功能较 MCS 48 有很大的增强 此外 它还具有品种全 兼容性强 软硬 件资源丰富的特点 因此应用较为广泛 成为继 MCS 48 之后最 重要的单片机品种 直到现在 MCS 51 仍不失为一种单片机是主 流芯片 在 8 位单片机之后 16 位的单片机也有很大的发展 例如 1983 年 Intel 公司的 MCS 96 系列单片机就是其中的典型代表 与 MCS 51 相比 MCS 96 不但字长增加了一倍 而且还具有 4 路 或 8 路的 10 位的 A D 转换功能 此外 在其他性能方面也有一定 的提高 在单片机的基础上发展起来的嵌入式系统已成功进入商业市 场 嵌入式计算机系统是以应用为中心 以计算机技术为基础 软 硬件可裁减 适应应用系统对功能 可靠性 成本 体积 功耗等严格要求的专用计算机系统 1981 年 Ready Systen 开发 出世界上第一个商业嵌入式实时内核 这个实时内核包含了许多 传统操作系统的特征 包括任务间通信 同步与相互排斥 中断 支持 内存管理等功能 此后一些公司也纷纷推出了自己的嵌入 式操作系统 这些嵌入式操作系统都具有嵌入式的典型特点 它 们均采用占先式的调度 响应时间短 任务执行的时间可以确定 2 系统内核很小 具有可裁减性 可扩充性和可移植性 可移植到 各种处理器上 较强的实时性和可靠性 适合嵌入式应用 如今 实时内核逐渐发展为多任务操作系统 并作为一种软件平台逐步 成为目前国际嵌入式系统的主流 嵌入式系统由软件和硬件两大部分组成 从硬件方面来讲 嵌入式系统的核心部件是嵌入式处理器 据不完全统计 全世界 嵌入式处理器的品种数量已经超过 1000 多种 其中 8051 体系占 大多数 嵌入式系统的软件一般由嵌入式操作系统和应用软件组 成 操作系统是连接计算机硬件与应用程序的系统程序 操作系 统有两个基本功能 使计算机硬件便于使用 高效组织和正确使 用计算机系统 如今 嵌入式系统主要应用于工业控制 交通管理 信息家 电 家庭智能管理系统 POS 网络及电子商务 环境监测 机器人 等领域 单片机具有以下特点 1 小巧灵活 成本低 易于产品化 它能方便的组合成各种 智能化的控制设备及各种智能仪器与仪表 2 面向控制 能针对性的解决从简单到复杂的各类控制任务 因而能获得最佳的价格性能比 3 抗干扰能力强 适应温度范围宽 在各种恶劣环境下都能 可靠性工作 这是其它机种无法比拟的 4 可以很方便的实现多机和分布控制 使整个控制系统的效 率和可靠性大幅度提高 单片机具有体积小 功耗低 价格便宜等优点 近年来还还 开发了一些以单片机母片为核 如 80C51 在 片中嵌入更多功能 的专用型单片机 或者叫专用微控制器 因此单片机在计算机控 制领域中应用越来越广泛 8051 是 MCS51 系列单片机的一个产品 MCS51 系列单片机是 Intel 公司推出的通用型单片机 在本设计中我选用的是 89S51 1 1 11 1 1 汇编语言及其优点汇编语言及其优点 本设计采用的是汇编语言编程 所以下面我们对汇编语言及 其优点做一些简介 汇编语言 Assembly Language 是面向机器的程序设计语言 在汇编语句中 用助记符 Memoni 代替操作码 用地址符号 Symbol 或标号 Label 代替地址码 这样符号代替机器语言的用 3 二进制码 就把机器语言变成了汇编语言 于是汇编语言亦称为 符号语言 使用汇编语言编写的程序 机器不能直接识别 要由 一种程序将汇编语言翻译成机器语言 这种起翻译作用的程序叫 汇编程序 汇编程序是系统软件中语言处理系统软件 汇编语言 把汇编程序翻译成机器语言的过程称为 f 汇编 作为最基本的编 程语言之一 汇编语言虽然应用的范围不算很广 但重要性却勿 庸置疑 因为它能够完成许多其它语言所无法完成的功能 汇编语言的主要优点有 1 速度快 可以直接对硬件进行操 作 这对诸如图形处理等关键应用是非常重要的 2 能够直接访 问与硬件相关的存储器或 I O 端口 3 能够不受编译器的限制 对生成的二进制代码进行完全的控制 4 能够对关键代码进行更准 确的控制 避免因线程共同访问或者硬件设备共享引起的死锁 5 能够根据特定的应用对代码做最佳的优化 提高运行速度 6 能够 最大限度地发挥硬件的功能 1 21 2 LEDLED 点阵数码显示屏概述点阵数码显示屏概述 1 2 11 2 1 LEDLED 的简介的简介 LED 是英文 light emitting diode 发光二极管 的缩写 发光 二极管的核心部分是由 p 型半导体和 n 型半导体组成的晶片 在 p 型半导体和 n 型半导体之间有一个过度层 p n 结 注入的少数载 流子复合时会把多余的能量以光的形式释放出来 从而把电能直 接转换为光能 LED 在我们日常生活的电器中随处可见 极为普通也广为人知 LED 具有效率高 光线质量高 能耗小 寿命长等特点 主要可用 于平面显示领域 便携设备显示屏 照明以及红外线 LED 领域等 下游应用产品市场 与传统的照明工具相比 LED 照明产品 尤其是氮化镓基 GaN 白光 LED 照明光源体积小 重量轻 方向性好并可耐各种 恶劣条件 在功耗 寿命以及环保等方面均有不可比拟的优越性 4 1 2 21 2 2 点阵的概述点阵的概述 LED 点阵显示器 以发光二极管为像素 它用高亮度发光二极 管芯阵列组合后 环氧树脂和塑模封装而成 具有高亮度 功耗 低 引脚少 视角大 寿命长 耐湿 耐冷热 耐腐蚀等特点 点阵显示器有单色和双色两类 可显示红 黄 绿 橙等 LED 点 阵有 4 4 4 8 5 7 5 8 8 8 16 16 24 24 40 40 等多种 根据像素的数目分为等 双基色 三基色等 根据像素颜色 的不同所显示的文字 图象等内容的颜色也不同 单基色点阵只 能显示固定色彩如红 绿 黄等单色 双基色和三基色点阵显示 内容的颜色由像素内不同颜色发光二极管点亮组合方式决定 如 红绿都亮时可显示黄色 如果按照脉冲方式控制二极管的点亮时 间 则可实现 256 或更高级灰度显示 即可实现真彩色显示 LED 点阵显示器单块使用时 既可代替数码管显示数字 也可 显示各种中西文字及符号 如 5 x 7 点阵显示器用于显示西文字 母 5 8 点阵显示器用于显示中西文 8 x 8 点阵用于显示中文 文字 也可用于图形显示 用多块点阵显示器组合则可构成大屏 幕显示器 但这类实用装置常通过微机或单片机控制驱动 1 2 31 2 3 LEDLED 电子屏参数与术语电子屏参数与术语 1 LED 亮度 发光二极管的亮度一般用发光强度 Luminous Intensity 表 示 单位是坎德拉 cd 1000ucd 微坎德拉 1 mcd 毫坎德拉 1000mcd 1 cd 室内用单只 LED 的光强一般为 500ucd 50 mcd 而 户外用单只 LED 的光强一般应为 100 mcd 1000 mcd 甚至 1000 mcd 以上 2 LED 象素模块 LED 排列成矩阵或笔段 预制成标准大小的模块 室内显示屏 常用的有 8 8 象素模块 8 字 7 段数码模块 户外显示屏象素模块 有 4 4 8 8 8 16 象素等规格 户外显示屏用的象素模块因为其 5 每一象素由两只以上 LED 管束组成 固又称其为集管束模块 3 象素 Pixel 与象素直径 LED 电子屏中每一个可被单独控制的 LED 发光单元 点 称为象 素 或象元 象素直径 是指每一象素的直径 单位是毫米 对于室内显示屏 一般一个为单个 LED 外形为圆形 室内显 示屏象素直径校常见的有 3 0 3 75 5 0 8 0 等 其中 以 3 75 和 5 0 最多 在户外环境 为提高亮度 增加视距 一个象素含有两只以 上集束 LED 由于两只以上集束 LED 一般不为圆形 固户外显示屏 象素直径一般用两两象素平均间距表示 10 11 5 16 22 25 4 点间距 象素密度与信息容量 LED 显示屏的两两象素的中心距或点间距 Dot Pitch 单位 面积内象素的数量称为象素密度 单位面积内所含显示内容的数 量称为信息容量 这三者本质是描述同一概念 点间距是从两两 象素间的距离来反映象素密度 点间距和象素密度是显示屏的物 理属性 信息容量则是象素密度的信息承载能力的数量单位 点间距越小 象素密度越高 信息容量越多 适合观看的距 离越近 点间距越大 象素密度越低 信息容量越少 适合观看的距 离越远 5 分辨率 LED 电子屏象素的行列数称为 LED 电子屏的分辨率 分辨率是 显示屏的象素总量 它决定了一台显示屏的信息容量 6 LED 电子屏 LED Panel 将 LED 象素模块按照实际需要大小拼装排列成矩阵 配以专 用显示驱动电路 直流稳压电源 软件 框架以及外装饰等 即 构成一台 LED 电子屏 7 灰度 6 灰度是指象素发光明暗变化的程度 一种基色的灰度一般有 8 级至 1024 级 例如 若每种基色的灰度为 256 级 对于双基色 彩色屏 其显示颜色为 256 256 64K 色 亦称该屏为 256 色显示 屏 8 双基色 现今大多数彩色 LED 电子屏是双基色彩色屏 即每一个象素 有两个 LED 管芯 一为红光管芯 一为绿光管芯 红光管芯亮时 该象素为红色 绿光管芯亮时该象素为绿色 红绿两管芯同时亮 时则该象素为黄色 其中红 绿称为基色 9 全彩色 红绿双基色再加上蓝基色 三种基色就构成全彩色 由于构 成全彩色的蓝色管和纯绿色管芯较贵 故目前全彩色屏相对较少 1 31 3 LEDLED 点阵数码显示屏的前景和发展点阵数码显示屏的前景和发展 LED 电子显示屏是随着计算机及相关的微电子 光电子技术的 迅猛发展而形成的一种新型信息显示媒体 它利用发光二极管构 成的点阵模块或像素单元组成可变面积的显示屏幕 以可靠性高 使用寿命长 环境适应能力强 性能价格比高 使用成本低等特 点 在短短的十来年中 迅速成长为平板显示的主流产品 在信 息显示领域得到了广泛的应用 LED 点阵电子显示屏是集微电子 技术 计算机技术 信息处理技术于一体的大型显示屏系统 它 以其色彩鲜艳 动态范围广 亮度高 寿命长 工作稳定可靠等 优点而成 为众多显示媒体以及户外作业显示的理想选择 同时也 可广泛应用到军事 车站 宾馆 体育 新闻 金融 证券 广 告以及交通运输等许多行业 目前大多数的 LED 点阵显示系统自带字库 其显示和动态效 果 主要是显示内容的滚动 的实现主要依靠硬件扫描驱动 该 7 方法虽然比较方便 但显示只能按照预先 的设计进行 而实际上 经常会遇到一些特殊要求的动态显示 比如电梯运行中指示箭头 的上下移动 某些智能仪表幅值的条形显示 广告中厂家的商标 显示等 这时 一般的显示系统就很难达到要求 另外 由于受到 存储器本身的局限 其特殊字符或图案也往往难以显示 同时显 示内容也不能随意更改 本文提出一种利用 PC 机 和单片机控制 的 LED 显示系统通讯方法 该方法可以对显示内容 包括汉字和 特殊图符 进行实时控制 从而实现诸如闪动 滚动 打字等多 种动态显示效果 该 方法同时还可以调节动态显示的速度 同时 用户也可以在 PC 机上进行显示效果的预览 显示内容亦可以即时 修改 另外 通过标准的 RS232 485 转换模块还可以实现对显示 系统的远程控制 在我国改革开放之后 特别是进入 90 年代国民经济高 速增长 对公众场合发布信息的需求日益强烈 LED 显示屏的出现正好适 应了这一市场形势 因而在 LED 显示屏的设计制造技术与应用水平上都得 到了迅速的提高 生产也得到了迅速的发展 并逐步形成产业 成为光电 子行业的新兴产业领域 第第 2 2 章章 硬件介绍硬件介绍 2 12 1 MSC 51MSC 51 系列系列 AT89S51AT89S51 单片机单片机 89S51 是 INTEL 公司 MCS 51 系列单片机中最基本的产品 它 采用 INTEL 公司可靠的 CHMOS 工艺技术制造的高性能 8 位单片机 属于标准的 MCS 51 的 HCMOS 产品 它结合了 HMOS 的高速和高密 度技术及 CHMOS 的低功耗特征 它继承和扩展了 MCS 48 单片机的 体系结构和指令系统 89S51 内置中央处理单元 128 字节内部数据存储器 RAM 32 个双向输入 输出 I O 口 2 个 16 位定时 计数器和 5 个两级中断 8 结构 一个全双工串行通信口 片内时钟振荡电路 此外 89S51 还可工作于低功耗模式 可通过两种软件选择空 闲和掉电模式 在空闲模式下冻结 CPU 而 RAM 定时器 串行口和 中断系统维持其功能 掉电模式下 保存 RAM 数据 时钟振荡停 止 同时停止芯片内其它功能 89S51 有 PDIP 40pin 和 PLCC 44pin 两种封装形式 表 2 1 89S52 的主要功能特性 2 1 12 1 1 AT89S51AT89S51 单片机的内部结构单片机的内部结构 89S51 单片机包含中央处理器 程序存储器 ROM 数据存储 器 RAM 定时 计数器 并行接口 串行接口和中断系统等几大 单元及数据总线 地址总线和控制总线等三大总线 现在我们分 别加以说明 主要功能特性 标准 MCS 51 内核和指令 系统 4kB 内部 ROM 外部可扩展 至 64kB 32 个可编程双向 I O 口 128x8bit 内部 RAM 可扩充 64kB 外部存储器 2 个 16 位可编程定时 计数器 时钟频率 0 16MHz 5 个中断源 5 0V 工作电压 可编程全双工串行通信 口 布尔处理器 2 层优先级中断结构 电源空闲和掉电模式 快速脉冲编程 2 层程序加密位 PDIP 和 PLCC 封装形式 兼容 TTL 和 CMOS 逻辑电平 9 中央处理器 中央处理器 中央处理器 CPU 是整个单片机的核心部件 是 8 位数据宽度 的处理器 能处理 8 位二进制数据或代码 CPU 负责控制 指挥和 调度整个单元系统协调的工作 完成运算和控制输入输出功能等 操作 数据存储器数据存储器 RAM RAM 89S51 内部有 128 个 8 位用户数据存储单元和 128 个专用寄存 器单元 它们是统一编址的 专用寄存器只能用于存放控制指令 数据 用户只能访问 而不能用于存放用户数据 所以 用户能 使用的的 RAM 只有 128 个 可存放读写的数据 运算的中间结果 或用户定义的字型表 程序存储器程序存储器 ROM ROM 89S51 共有 4096 个 8 位掩膜 ROM 用于存放用户程序 原始 数据或表格 定时定时 计数器计数器 ROM ROM 89S51 有两个 16 位的可编程定时 计数器 以实现定时或计数 产生中断用于控制程序转向 并行输入输出并行输入输出 I O I O 口 口 89S51 共有 4 组 8 位 I O 口 P0 P1 P2 或 P3 用于对外部 数据的传输 全双工串行口 全双工串行口 89S51 内置一个全双工串行通信口 用于与其它设备间的串行 数据传送 该串行口既可以用作异步通信收发器 也可以当同步 移位器使用 中断系统 中断系统 10 89S51 具备较完善的中断功能 有两个外中断 两个定时 计 数器中断和一个串行中断 可满足不同的控制要求 并具有 2 级 的优先级别选择 时钟电路 时钟电路 89S51 内置最高频率达 12MHz 的时钟电路 用于产生整个单 片机运行的脉冲时序 但 8051 单片机需外置振荡电容 单片机的结构有两种类型 一种是程序存储器和数据存储器分开 的形式 即哈佛 Harvard 结构 另一种是采用通用计算机广泛使 用的程序存储器与数据存储器合二为一的结构 即普林斯顿 Princeton 结构 INTEL 的 MCS 51 系列单片机采用的是哈佛结构 的形式 而后续产品 16 位的 MCS 96 系列单片机则采用普林斯顿 结构 下图是 MCS 51 系列单片机的内部结构示意 图 11 图 2 1 2 1 22 1 2 MCS 51MCS 51 的引脚说明的引脚说明 MCS 51 系列单片机中的 8031 8051 8751 及 89S51 均采用 40Pin 封装的双列直接 DIP 结构 右图是它们的引脚配置 40 个 引脚中 正电源和地线两根 外置石英振荡器的时钟线两根 4 组 8 位共 32 个 I O 口 中断口线与 P3 口线复用 现在我们对这 些引脚的功能加以说明 Pin20 接地脚 Pin40 正电源脚 正常工作或对片内 EPROM 烧写程序时 接 5V 电源 Pin19 时钟 XTAL1 脚 片内振荡电路的输入端 12 Pin18 时钟 XTAL2 脚 片内振荡电路的输出端 89S51 的时钟有两种方式 一种是片内时钟振荡方式 但需在 18 和 19 脚外接石英晶体 2 12MHz 和振荡电容 振荡电容的值一般 取 10p 30p 另外一种是外部时钟方式 即将 XTAL1 接地 外部时 钟信号从 XTAL2 脚输入 输入输出 I O 引脚 Pin39 Pin32 为 P0 0 P0 7 输入输出脚 Pin1 Pin8 为 P1 0 P1 7 输入输出脚 Pin21 Pin28 为 P2 0 P2 7 输入输出脚 Pin10 Pin17 为 P3 0 P3 7 输入输出脚 这些输入输出脚的功能说 明将在以下内容阐述 Pin9 RESET V pd 复位信号复用脚 当 89S51 通电 时钟电 路开始工作 在 RESET 引脚上出现 24 个时钟周期以上的高电平 系统即初始复位 初始化后 程序计数器 PC 指向 0000H P0 P3 输出口全部为高电平 堆栈指钟写入 07H 其它专用寄存器被清 0 RESET 由高电平下降为低电平后 系统即从 0000H 地址开始 执行程序 然而 初始复位不改变 RAM 包括工作寄存器 R0 R7 的状态 89S51 的初始态如下表 13 图 2 2 89S51 的双列直插式封装 14 Pin30 ALE 当访问外部程序器时 ALE 地址锁存 的输出用 于锁存地址的低位字节 而访问内部程序存储器时 ALE 端将有一 个 1 6 时钟频率的正脉冲信号 这个信号可以用于识别单片机是 否工作 也可以当作一个时钟向外输出 更有一个特点 当访问 外部程序存储器 ALE 会跳过一个脉冲 如果单片机是 EPROM 在编程其间 将用于输入编程脉冲 Pin29 当访问外部程序存储器时 此脚输出负脉冲选通信号 PC 的 16 位地址数据将出现在 P0 和 P2 口上 外部程序存储器则把 指令数据放到 P0 口上 由 CPU 读入并执行 Pin31 EA V pp 程序存储器的内外部选通线 8051 和 8751 单片机 内置有 4kB 的程序存储器 当 EA 为高电平并且程序地址 小于 4kB 时 读取内部程序存储器指令数据 而超过 4kB 地址则 读取外部指令数据 如 EA 为低电平 则不管地址大小 一律读取 外部程序存储器指令 显然 对内部无程序存储器的 8031 EA 端 必须接地 在编程时 EA V pp 脚还需加上 21V 的编程电压 2 22 2 带锁存器输出的带锁存器输出的 8 8 位移位寄存器位移位寄存器 74HC59574HC595 74HC595 是硅结构的 CMOS 器件 兼容低电压 TTL 电路 遵守 JEDEC 标准 74HC595 是具有 8 位移位寄存器和一个存储器 三 态输出功能 移位寄存器和存储器是分别的时钟 数据在 SCHcp 的上升沿输入 在 STcp 的上升沿进入的存储寄存器中去 如果两 个时钟连在一起 则移位寄存器总是比存储寄存器早一个脉冲 移位寄存器有一个串行移位输入 Ds 和一个串行输出 Q7 和一个异步的低电平复位 存储寄存器有一个并行 8 位的 具备 三态的总线输出 当使能 OE 时 为低电平 存储寄存器的数据 输出到总线 8 位串行输入 输出或者并行输出移位寄存器 具有高阻关断状态 三 态 2 2 12 2 1 输出能力输出能力 并行输出 总线驱动 串行输出 标准中等规模集成电路 15 74HC595 移位寄存器有一个串行移位输入 Ds 和一个串行输出 Q7 和一个异步的低电平复位 存储寄存器有一个并行 8 位 的 具备三态的总线输出 当使能 OE 时 为低电平 存储寄存 器的数据输出到总线 2 2 22 2 2 引脚说明引脚说明 符号 引脚 描述 Q0 Q7 15 1 7 并行数据输出 GND 8 地 Q7 9 串行数据输出 MR 10 主复位 低电平 SHCP 11 移位寄存器时钟输入 STCP 12 存储寄存器时钟输入 OE 13 输出有效 低电平 DS 14 串行数据输入 VCC 16 电源 2 2 32 2 3 功能表功能表 输入 SHCP STCP OE MR DS Q7 Qn L L NC MR 为低电平 时间紧影响移位寄存器 L L L L 空移位寄存器到输出寄存器 H L L Z 清空移位寄存器 并行输出为高阻状态 L H H Q6 NC 逻辑高电平移入移位寄存器状态 0 包含所有的移 位寄存器状态 移入 例如 以前的状态 6 内部 Q6 出现在串行输出位 L H NC Qn 移位寄存器的内容到达保持寄存器并从并口输出 输出 功能 16 L H Q6 Qn 移位寄存器内容移入 先前的移位寄存器的内容 到达保持寄存器并出 H 高电平状态 L 低电平状态 上升沿 下降 沿 Z 高阻 NC 无变化 无效 当 MR 为高电平 OE 为低电平时 数据在 SHCP 上升沿进入移位寄 存器 在 STCP 上升沿输出到并行端口 2 32 38 88 8 的的 LED 1588LED 1588 点阵模块点阵模块 2 3 12 3 1 产品内部电路图产品内部电路图 17 2 3 22 3 2 PINPIN 连接说明连接说明 PI N 序 号 ROW COMMON ANODE PIN 序号 ROW COMMON ANODE 18 1Anode Row 813Cathode Column 8 Red 2Anode Row 714Cathode Column 7 Red 3Anode Row 615Cathode Column 6 Red 4Anode Row 516Cathode Column 5 Red 5Cathode Column 1 Green 17Cathode Column 4 Red 6Cathode Column 2 Green 18Cathode Column 3 Red 7Cathode Column 3 Green 19Cathode Column 2 Red 8Cathode Column 4 Green 20Cathode Column 1 Red 9Cathode Column 5 Green 21Anode Row 4 10Cathode Column 6 Green 22Anode Row 3 11Cathode Column 7 Green 23Anode Row 2 12Cathode Column 8 Green 24Anode Row 1 2 3 32 3 3 产品描述产品描述 黑面 白胶 红色 绿色光 组共阳 动态驱动连接 晶片材质 磷化镓 磷化镓 红色 黄绿色 19 产品光电参数值 测试环境温度为 产品光电参数值 测试环境温度为 2525 C C 参数 l 符号 测试条件 最小 值 典型 值 最 大 值 单位 每点亮度 红色 Iv IF 20m A 91011mcd 每点亮度 黄绿色 Iv IF 20m A 111213mcd 主波长 红色 D IF 20m A 640643646nm 主波长 黄绿色 D IF 20m A 571572573nm 每段正向电压 红色 VF IF 20m A 1 61 92 4V 每段正向电压 黄 绿色 VF IF 20m A 1 82 22 5V 每段反向电流 IRVR 5V 50 A 点与点之间亮度比 Iv m IF 20m A 1 1 1 参数符号 Ratings 单位 20 SGM 直流电流 IF20mA 脉冲电流 IFP100mA 单个字节功耗 PD100mW 反向电压 VR5V 反向电流 Ir20uA 静电电压人体放电模式 ESD1000V 工作温度 Topr 25 85 储存温度 Tstg 25 85 在水平位置下的 1 16 英寸处焊接温度为 260 时间 3 秒 信靠性测试信靠性测试 1 测试项目和结果 21 测试项目 测试标 准测试条件备注允收水准 波峰焊 JEITA ED 4701 300 302 Tsld 260 5 10sec 3mm from the base of the epoxy bulb 1time0 100 手动焊接 JEITA ED 4701 300 303 Tsld 235 5 5sec using flux 1time over 95 0 100 冷热冲击 JEITA ED 4701 300 307 20 15min 80 15min 100cycles0 100 冷热循环 JEITA ED 4701 100 105 负 40 30min 25 5min 100 30min 25 5min 100cycles0 100 耐湿循环 JEITA ED 4701 200 203 25 65 10 90 RH 24hrs 1cycle10cycles0 100 强度测试 弯曲模式 JEITA ED 4701 400 401 Load 5N 0 5kgf 0 90 0 bend 2 times No noticeable damage0 100 强度测试 拉伸模式 JEITA ED 4701 400 401 Load 10N 1kgf 10 1sec No noticeable damage0 100 高温储存 JEITA ED 4701 200 201 Ta 100 1000hrs 0 100 高温高湿 储存 JEITA ED 4701 100 103 Ta 60 RH 90 1000hrs 0 100 低温储存 JEITA ED 4701 200 203 Ta 20 1000hrs 0 100 22 稳定操作 温度寿命 Ta 25 IF 20mA 1000hrs 0 100 t 稳定高温 高湿操作 温度寿命 60 RH 90 IF 20 mA500hrs 0 100 稳定低温 操作温度 寿命 Ta 20 IF 20mA1000hrs 0 100 抗紫外能 力 365nm 75W mm192hrs 0 100 2 缺失判定标准 判定标准 项目符号测试条件最小值最大值 Forward VoltageVfIF 20mA U S L x 1 1 Reverse CurrentIrVR 5V U S L x 2 0 Luminous Intensity IvIF 20mA Inifial value x 0 7 U S L Upper Standard Level L S L Lower Standard Level 23 第第 3 章章 硬件设计硬件设计 3 13 1 硬件设计主框图硬件设计主框图 图 3 1 主设计流程图 单片机的 P1 P2 口控制 8 8 点阵行信号 P0 0 作为 74HC595 DS 扫描信号的输入 P0 1 P0 2 作为 SCK 和 RCK 时钟脉冲信号的 输入 SCK 为串行输入右移寄存器的时钟信号 RCK 为并行输出时 钟脉冲 SHCP 上升沿进入移位寄存器 在 STCP 上升沿输出到并行 端口 24 3 23 2 LEDLED 显示屏的驱动原理显示屏的驱动原理 24 片 8 8LED 点阵 成两行 12 列 组成 6 位 16 16 显示单元 每一只 74HC595 驱动一片 8 8LED 点阵 74HC595 的 8 位并口 Q0 Q7 分别对应 8 8LED 点阵公共阳极 A1 A8 我们是通过列扫描 实现全屏显示 同一时刻只能将信号加到某一列 使该列的 LED 通过所对应的信号将其点亮 我们要把信号加到指定的那一列是 由 74HC595 的移位脉冲控制的 当我们高电平脉冲移到下一位时 我们的 LED 点阵下一位公共阳极就被驱动 信号也就加到了该列 这样便实现了扫描 每一只二极管的驱动电流是 10mA 当某一列的 二极管全点亮时 驱动电流 I 10 X 8mA 80mA 我们的 74HC595 能够满足驱动力 不会影响当某一列全点亮时所至该列亮度偏暗 3 33 3 8 88 8 LEDLED 点阵连接成显示屏的硬件连接点阵连接成显示屏的硬件连接 因为要显示 6 个字并且我使用 16 16 点阵的方法 所以需 要 24 块 1588 点阵模块 1588 是红绿双色点阵 共有 24 个 PIN 脚 在本次设计当中我们只使用的红色 LED 也就是没有接绿 色 LED 的 PIN 脚 通过单片机 P1 口和 P2 口作为行信号与 1588 的行连接 通过 74HC595 对 1588 的列进行扫描 每块 1588 都 对应一块 74HC595 25 图 3 2 1588 8 8LED 点阵连接成显示屏的硬件连图 3 3 4 4 单片机与单片机与 74HC59574HC595 的硬件连接的硬件连接 26 图 3 3 单片机与 74HC595 的硬件连接图 单片机的 P0 0 端口与第一块 74HC595 的 DS 串行移位输入 相连 第一块 74HC595 的 Q7 端口 串行输出 与第二块的 74HC595 的 DS 相连 用以当列扫描信号移位到第一块 74HC595 的 Q7 时驱动第二块 74HC595 同理第二块的 74HC595 的 Q7 端口 串行输出 与第一块的 74HC595 的 DS 相连依次下去 单片机 P0 1 端口与 74HC595 的 SHCP 移位寄存器时钟 输入相连 通过软件的置一和清零给 74HC595 送入移位寄存器时钟信号 然后在 STCP 的上升沿送到存储寄存器端口 单片机的 P0 2 端口与 74HC595 的 MR 复位 相连 当给 P0 2 低电平时 74HC595 都处于复位状 态 27 3 5 89S51 单片机 显示模块及驱动模块的连接单片机 显示模块及驱动模块的连接 图 3 4 89S51 单片机 显示模块及驱动模块的硬件连接图 单片机 P1 口和 P2 口作为行信号与点阵的行连接 P0 口的 0 1 2 端口与 74HC595 相连 通过控制 74HC595 对点阵的列 进行扫描 然后通过 P1 口和 P2 口输入的行信号点亮 第第 4 4 章章 软件设计软件设计 4 4 1 1 显示原理显示原理 4 1 1LED4 1 1LED 的显示原理的显示原理 数码管是由 8 个发光二极管构成的显示器件 如下图 1 为发 28 光亮段 可显示 0 9 十个数字 在数码管中 若将二极管的阳极 连接在一起 称为共阳极数码管 若将二极管的阴极连接在一起 称为共阴极数码管如图 2 当发光二极管导通时 它就会发光 每 个二极管就是一笔画 若干个二极管发光时 就构成了一个显示 字符 1 2 图 4 1 共阳 阴数码管内部示意图 将单片机的 I O 口与数码管的 a g 及 h 相连 高电平的位对 应的发光二极管亮 这样 由 I O 口输出不同的大妈 就可以控 制数码管的显示不同的字符 例如 当 I O 口输出的代码为 0011 1111 时 数码管显示的字符为 0 这样形成的显示字符的代码称 为显示代码或段选码 数码管显示器有两种工作方式 即静态显示方式和动态显示 方式 在静态显示方式下 每位数码管的 a g 和 h 端与一个 8 位的 I O 口相连 要在某一位数码管上显示字符 只要从对应的 I O 口 输出并锁存其显示代码即可 其特点为 数码管中的发光二极管 恒定的导通和截止 直到显示字符改变为止 29 动态显示方式的每位数码管都需要一个数据锁存器 因此 其硬件电路较为复杂 但它的显示程序非常简单 在动态显示方式中 各位数码管的 a g 和 h 端并连在一起 与单片机系统的一个 I O 口相连 从该 I O 口输出显示代码 每 只数码管的共阳级或共阴极与另一 I O 口相连 控制被电亮的位 动态显示的特点 每一时刻只能有一位数码管被点亮 各位依次 轮流被点亮 对于每一位来说 每隔一段时间点亮一次 为了每位数码管 能充分被点亮 二极管应持续发光一段时间 利用发光二极管的 余辉和人眼的驻留效应 通过适当调整每位数码管被点亮的时间 间隔 可以观察到稳定的显示输出 4 1 24 1 2 点阵的显示原理点阵的显示原理 图 4 2 点阵图和显示原理 在 UCDOS 中文宋体字库中 每一个字由 16 行 16 列的点阵组 成显示 如果用 8 位我们以 UCDOS 中文宋体字库为例 每一个字 由 16 行 16 列的点阵组成显示 即国标汉字库中的每一个字均由 256 点阵来表示 我们可以把每一个点理解为一个像素 而把每一 个字的字形理解为一幅图像 事实上这个汉字屏不仅可以显示汉 30 字 也可以显示在 256 像素范围内的任何图形 我们以显示汉的 89S51 单片机控制 由于单片机的总线为 8 位一个字需要拆分为 2 个部分 一般我们把它拆分为上部和下部 上部由 8 16 点阵组 成 下部也由 8 16 点阵组成 在本例中单片机首先显示的是左上 角的第一列的上半部分 即第列的 p00 p07 口 方向为 p00 到 p07 显示汉字 大 时 p05 点亮 由上往下排列 为 p0 0 灭 p0 1 灭 p0 2 灭 p0 3 灭 p0 4 灭 p0 5 亮 p0 6 灭 p0 7 灭 即二进制 00000100 转换为 16 进制为 04h 上半部第一列完成 后 继续扫描下半部的第一列 为了接线的方便 我们仍设计成 由上往下扫描 即从 p27 向 p20 方向扫描 从上图可以 列 仍 为 p05 点亮 为 00000100 即 16 进制 04h 这一列完成后继续进 行下半部分的扫描 p21 点亮 为二进制 00000010 即 16 进制 02h 依照这个方法 继续进行下面的扫描 一共扫描 32 个 8 位 可以得出汉字 大 它的扫描代码为 04H 00H 04H 02H 04H 02H 04H 04H 04H 08H 04H 30H 05H 0C0H 0FEH 00H 05H 80H 04H 60H 04H 10H 04H 08H 04H 04H 0CH 06H 04H 04H 00H 00H 由这个原理可以看出 无论显示何种字体或图像 都可以 用这个方法来分析出它的扫描代码从而显示在屏幕上 4 24 2 设计思路设计思路 本设计是一个用 LED 点阵显示 16 16 点阵汉字 显示屏长为 六个汉字 高为一个汉字 总共显示 河工院付韦娟 六位汉字 从右到左滚动显示 设计思路 实现六个汉字从右到左滚动显示 这一动作而且给人以连续显示不闪烁的感觉 就必须要求每帧的 频率大于 25HZ 由于屏幕较大 所以我们就必须放弃直观简单的 静态扫描 而使用动态扫描 将点阵显示屏逐列显示 由于人眼 惰性 在很短的的时间下从左到右将点阵逐列点亮 就会使人感 31 觉一整屏在显示 我们采用的是 8 8 的 LED 点阵 8 个共阳极 COM 端 A1 A8 每一个公共端都对应一列的 LED 共 8 只 本设计的屏幕需要 24 块的 LED 点阵 即 16 行 96 列 显示信号 从行输入 低电平有效 分别用单片机的 P1 P2 输出 列我们用 移位寄存器 74HC595 作为列扫描和驱动 该芯片主要功能能将串 行数据移位后 8 位并行输出 移位时钟脉冲 SHcp 控制串行 DS 移 位输入 此时的输入的数据被放在芯片内的寄存器里 STcp 寄存 器输出到端口锁存器 当我们把一个脉冲从 DS 输入 把 SHcp 和 STcp 接在一起每移位一个脉冲都从寄存器输出到并行端口 实现 扫描 移位脉冲由程序控制它和该列的信号同步一一对应 DS 脉 冲的宽度比移位小于或等于移位脉冲的宽度 周期为 96 个移位脉 冲的周期 即一帧的时间 滚动显示由于每帧的画面都在向左移 动变化 把每帧的图片连续起来就成了一滚动的效果 4 34 3 16 1616 16 点阵字库字模的提取点阵字库字模的提取 如果通过描点来造字的话 任务量太大 现在有很多现成的 汉字字模生成软件 我们就不必自己去画表格算代码了 软件打 开后输入汉字 点 生成字模 十六进制数据的汉字代码即可自 动生成 但是我们要根据自己硬件的连接方式来在选项中选择取 码方式为从上到下或从下到上的方式 然后把我们所需要的竖排 数据复制到我们的程序中即可 我们把行列总线接在单片机的 IO 口 然后把上面分析到的扫描代码送入总线 就可以得到显示的 汉字了 通过软件提取了 河工院付伟娟 这六个字的字模 为后面 的单片机编程打下基础 提取此软件是我们完成本设计的一个重 要的辅助软件 它能够很容易的将我们需要的汉字翻译成 16 16 的汉字字模 32 六字的图片如下 33 图 4 3 河工院付伟

温馨提示

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

评论

0/150

提交评论