点阵LED电子显示屏[单片机课程设计]_第1页
点阵LED电子显示屏[单片机课程设计]_第2页
点阵LED电子显示屏[单片机课程设计]_第3页
点阵LED电子显示屏[单片机课程设计]_第4页
点阵LED电子显示屏[单片机课程设计]_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

本科生课程设计 题题 目目 名名 称称 点阵点阵 LED 电子显示屏电子显示屏 专专 业业 电气工程及其自动化电气工程及其自动化 班班 级级 0909 级级 2 2 班班 学学 生生 姓姓 名名 赵晨赵晨 王琛王琛 张显飞张显飞 王永涛王永涛 陈志华陈志华 联联 系系 方方 式式 20122012年年 6 6 月月 目录目录 概述概述 1 一 设计要求与总体分析一 设计要求与总体分析 1 1 1 设计要求 1 1 2 基本工作原理及框图 1 二 硬件电路设计及说明二 硬件电路设计及说明 2 2 1 AT89C51 芯片 2 2 2 74HC138 译码器 3 2 3 16 16 点阵 4 三 软件设计分析三 软件设计分析 6 3 1 设计基本思路 6 3 2 软件设计流程图 6 3 3 程序 6 四 系统仿真与结果分析四 系统仿真与结果分析 10 4 1 PROTEUS软件基本概述 10 4 2 PROTEUS软件仿真电路图及结果 10 4 3 软件仿真分析 11 五 课程设计总结五 课程设计总结 12 概述概述 随着电子技术 特别是随大规模集成电路的产生而出现的微型计算机技术 的飞速发展 人类生活发生了根本性的改变 如果说微型计算机的出现使现代 科学研究得到了质的飞跃 那么可以毫不夸张地说 单片机技术的出现则是给 现代工业测控领域带来了一次新的技术革命 目前 单片机以其体积小 重量 轻 抗干扰能力强 对环境要求不高 高可靠性 高性能价格比 开发较为容 易 在工业控制系统 数据采集系统 智能化仪器仪表 办公自动化等诸多领 域得到极为广泛的应用 并已走人家庭 从洗衣机 微波炉到音响 汽车 到 处都可见到单片机的踪影 因此 单片机技术开发和应用水平已逐步成为一个 国家工业发展水平的标志之一 本课题研究的内容就是以单片机为主要控制元 件 驱动 LED 点阵显示所想要现实的汉字 一 设计要求与总体分析一 设计要求与总体分析 1 11 1 设计要求设计要求 1 设计 4 个 16 16 的 LED 电子显示屏 能稳定 清晰地显示图形或文字 2 图形或文字显示通过编程能实现静止 左移和右移等多种显示方式 3 采用动态扫描方式 保证在目测条件 LED 显示屏可亮度均匀地显示图形和 文字 并且稳定 清晰 无串扰 1 21 2 基本工作原理及框图基本工作原理及框图 LED 点阵总体框图如图 1 1 所示 点阵电路大体上可以分成微机本身的硬 件 显示驱动电路 控制信号电路三部分 控制电路部分包括一个 51CUP 和一 些外围电路 在整个电路当中单片机负责控制整个电路以及相应的程序的运行 与 PC 机的串行通讯 以及给屏体电路部分发送命令 点阵显示屏体 以及它的 行和列的各个驱动电路 2 此显示电路采用扫描方式进行显示时 每行有一个行驱动器 各行的同名 列共用一个列驱动器 由行译码器给出的行选通信号 从第一行开始 按顺序 依次对各行进行扫描 把该行与电源的一端接通 另一方而 根据各列锁存的 数据 确定相应的列驱动器是否将该列与电源的另一端接通 接通的列 就在 该行该列点燃相应的 LED 未接通的列所对应的 LED 熄灭 可通过扫描输出口 的控制实现颜色的转换 图 1 1 基本工作原理框图 二 硬件电路设计及说明二 硬件电路设计及说明 2 12 1 AT89C51AT89C51 芯片芯片 AT89C51 是美国 ATMEL 公司生产的低电压 高性能 CMOS 8 位单片机 片内 含 4k bytes 的反复擦写的 Flash 只读程序存储器和 128 bytes 的随机存取数据 存储器 RAM 器件采用 ATMEL 公司高密度 非易失性存储技术生产 兼容标 准 MCS 51 指令系统 片内置通用 8 位中央处理器 CPU 和 Flash 存储单元 功能强大 AT89C51 单片机可为您提供许多高性价比的应用场合 可灵活应用于 各种控制领域 AT89C51 引脚如图 2 1 所示 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0 0 AD0 39 P0 1 AD1 38 P0 2 AD2 37 P0 3 AD3 36 P0 4 AD4 35 P0 5 AD5 34 P0 6 AD6 33 P0 7 AD7 32 P1 0 1 P1 1 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 P3 0 RXD 10 P3 1 TXD 11 P3 2 INT0 12 P3 3 INT1 13 P3 4 T0 14 P3 7 RD 17 P3 6 WR 16 P3 5 T1 15 P2 7 A15 28 P2 0 A8 21 P2 1 A9 22 P2 2 A10 23 P2 3 A11 24 P2 4 A12 25 P2 5 A13 26 P2 6 A14 27 U1 AT89C51 3 单片机是在一块硅片上集成了各种部件的微型机 这些部件包括中央处理 器 CPU 数据存储器 RAM 程序存储器 ROM 定时器 计数器和多种 I O 接口 电路 8051 单片机的基本结构见图 2 2 图 2 2 8051 单片机的基本结构 2 22 2 74HC13874HC138 译码器译码器 4HC138 是一款高速 CMOS 器件 74HC138 引脚兼容低功耗肖特基 TTL LSTTL 系列 74HC138 译码器可接受 3 位二进制加权地址输入 A0 A1 和 A3 并当使 能时 提供 8 个互斥的低有效输出 Y0 至 Y7 74HC138 特有 3 个使能输入端 两个低有效 E1 和 E2 和一个高有效 E3 除非 E1 和 E2 置低且 E3 置高 否则 74HC138 将保持所有输出为高 利用这种复合使能特性 仅需 4 片 74HC138 芯片和 1 个反相器 即可轻松实现并行扩展 组合成为一个 1 32 5 线到 32 线 译码器 任选一个低有效使能输入端作为数据输入 而把其余的使 能输入端作为选通端 则 74HC138 亦可充当一个 8 输出多路分配器 未使用的 使能输入端必须保持绑定在各自合适的高有效或低有效状态 图 2 3 74HC138 封装图 图 2 1 AT89C51 引脚 图 4 2 32 3 16 1616 16 点阵点阵 16 16LED 点阵其实就是 4 块 8 8 点阵 LED 级联而成的 因此特给出 8 8 点阵 LED 的工作原理 图 2 4 为 8 8 点阵 LED 外观及引脚图 其等效电 路如图 2 5 所示 只要其对应的 X Y 轴顺向偏压 即可使 LED 发亮 例如如果 想使左上角 LED 点亮 则 Y0 1 X0 0 即可 应用时限流电阻可以放在 X 轴或 Y 轴 而 16 16 就是在 8 8 原理的基础上将四块 8 8 级联而成 如图 2 6 图 2 4 8 8 点阵 LED 外观及引脚图 图 2 5 8 8 点阵 LED 等效电路 5 图 2 6 四块 8x8 点阵 LED 级联成 16x16 点 LED 驱动显示采用动态扫描方法 动态扫描方式是逐行轮流点亮 这样扫 描驱动电路就可以实现多行的同名列共用一套列驱动器 以 16 16 点阵为例 把所有同一行的发光管的阴极连在一起 把所有同一列的发光管的阳极连在一 起 共阴的接法 先送出对应第 1 列发光管亮灭的数据并锁存 然后选通第 1 列使其燃亮一定的时间 然后熄灭 再送出第 2 列的数据并锁存 然后选通第 2 列使其燃亮相同的时间 然后熄灭 第 16 列之后 又重新燃亮第 1 列 反复轮回 当这样轮回的速度足够快 每秒 24 次以上 由于人眼的视觉暂留 现象 就能看到显示屏上稳定的图形 显示数据可通过单片机的 P0 P2 口接驱 动电路传输到点阵行引脚 点阵的移动列扫描方式左移动 列向组字显示字符水平方向的移动 将原来字符点阵数组的 16 个数据重复一遍延长 点阵数组的数据个数为 32 个 每扫描一帧取 8 个数据显示 下一帧取数要在数组中后移一个数取数 循环一遍扫 16 帧 可以假想有两块 16 16 的点阵模块 共 32 帧 水平平行排 列 用一个恰好能罩住 16 列点阵的中空方框去罩这个点阵 第 1 第 1 帧 罩 住最左边数起第一列开始的 16 列 就扫描显示这 16 列 第 2 次 第 2 帧 使 方框右移一列 罩住做左边数起第 2 列开始的 16 列 就扫描显示这 16 列 这样每扫描完一帧使方框右移一列 最后第 16 次 第 16 帧 时 罩住左边数起的第 16 列开始的 16 列 就扫描显示这 16 列 如此完成 16 帧画面的扫描显示 也就完成了整个一次移动循环扫描 之后反复循环 即可 呈现显示字符沿水平向左移动的图像 因为是列向组字 列扫描方式 点阵数据为行码 上边为低位下面为高位 希望显示移动的一个字符 第 1 次扫描从行码的点阵数组中取第 1 16 个数 据 送行码输出口 对应于这 8 个数据 同时用列码输出口输出列码 分别控 制第 1 16 列 扫描完前 16 个数据之后 第 2 次扫描从点阵数组中取第 3 18 个数据 第 18 个数据与第 1 个数据同 送行码输出口 对应于这 16 个数据 同时用列码输出口输出列码 仍分别控制扫第 1 16 列 第 3 次扫描从点阵数 组中取第 5 20 个数据 第 20 个数据码与第 2 个数据码相同 扫 描 如此实现字符向左移动 6 以上完成一个图形移动的方法 也可以看成是移动 16 个不同的字形 首 先扫描第一个字型 同样是 16 行 16 次扫描 16 次显示 完成一个字型的扫 描以后 再扫描第二个字型 完成第二个字型的扫描之后 再扫描第三个字 型 依此类推 即可产生该文字的左移的感觉 三 软件设计分析三 软件设计分析 3 13 1 设计基本思路设计基本思路 在硬件方面基于 AT89C51 单片机的基础上 采用动态扫描的方式对 LED 点 阵进行扫描显示 运用 74HC138 对点阵进行列驱动 通过加上拉电阻对点阵进 行行驱动 在软件方面 通过定时中断让显示的文字更加稳定 更加清晰 由 字模生成软件得到所要的文字 图片在 LED 点阵中显示的代码 不断扫描各行 各列 通过人的视觉误差达到文字 图片的稳定显示 3 23 2 软件设计流程图软件设计流程图 3 33 3 程序程序 include 7 define uchar unsigned char define uint unsigned int define ulong unsigned long uchar flag uchar n uchar code table 32 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x0 0 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x 00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 xF0 0 x1F 0 x20 0 x12 0 x20 0 x12 0 x20 0 x12 0 x20 0 x1 2 0 xFC 0 xFF 0 x22 0 x12 0 x22 0 x12 0 x22 0 x12 0 x22 0 x12 0 xF2 0 x1F 0 x02 0 x 00 0 x0E 0 x00 0 x00 0 x00 电 0 16 X 16 新宋体 0 x00 0 x01 0 x00 0 x02 0 x00 0 x0C 0 xFE 0 x3F 0 x00 0 xE0 0 x00 0 x50 0 x7E 0 x1 5 0 x44 0 x15 0 x44 0 x95 0 x44 0 x75 0 x44 0 x55 0 x44 0 x15 0 x7E 0 x15 0 x00 0 x 10 0 x00 0 x10 0 x00 0 x00 信 1 16 X 16 新宋体 0 x00 0 x00 0 x08 0 x00 0 x08 0 x20 0 x08 0 x20 0 x08 0 x20 0 x08 0 x20 0 x08 0 x2 0 0 x08 0 x20 0 x08 0 x20 0 x08 0 x20 0 x08 0 x20 0 x08 0 x60 0 x08 0 x20 0 x18 0 x 00 0 x08 0 x00 0 x00 0 x00 二 2 16 X 16 新宋体 0 x08 0 x42 0 x08 0 x42 0 xF0 0 x7F 0 x11 0 x42 0 x92 0 x42 0 x04 0 x07 0 x18 0 x0 0 0 xE0 0 xFF 0 x04 0 x00 0 x04 0 x42 0 x04 0 x42 0 xFC 0 x7F 0 x04 0 x42 0 x04 0 x 42 0 x04 0 x42 0 x00 0 x00 班 3 16 X 16 新宋体 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x0 8 0 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x00 0 x 00 0 x00 0 x00 0 x00 0 x00 void delay void ulong offset void main void uchar i uchar p flag 0 x10 n 0 TMOD 0 x01 TH0 0 xb0 TL0 0 xf0 ET0 1 EA 1 TR0 1 p while 1 for i 0 i 8 i 显示左半边屏幕 P0 p offset 2 i P2 i 0 x08 P2 4 0 P2 3 1 选中 U2 输出扫描码给 U6 delay P0 0 x00 P0 p offset 2 i 1 P2 i 0 x10 P2 4 1 P2 3 0 选中 U3 输出扫描码给 U7 delay 9 P0 0 x00 for i 8 i 16 i 显示右半边屏幕 P0 p offset 2 i P2 i 8 0 x20 P2 5 1 P2 4 0 P2 3 0 选中 U4 输出扫 描码 U8 delay P0 0 x00 P0 p offset 2 i 1 P2 i 8 0 x40 P2 6 1 P2 5 0 P2 4 0 选中 U5 输出扫 描码 U9 delay P0 0 x00 void delay void uchar i j for i 0 i 100 i for j 0 j 100 j void timer0 interrupt 1 using 3 TF0 0 TH0 0 xb1 10 TL0 0 xf0 if n160 offset 0 n 0 四 系统仿真与结果分析四 系统仿真与结果分析 4 14 1 ProteusProteus 软件基本概述软件基本概述 Proteus 软件是英国 Labcenter electronics 公司出版的 EDA 工具软件 它不仅具有其它 EDA 工具软件的仿真功能 还能仿真单片机及外围器件 它 能从原理图布图 代码调试到单片机与外围电路协同仿真 一键切换到PCB 设计 真正实现了从概念到产品的完整设计 是目前世界上唯一将电路仿真 软件 PCB 设计软件和虚拟模型仿真软件三合一的设计平台 其处理器模型支 持 8051 HC11 PIC10 12 16 18 24 30 DsPIC33 AVR ARM 8086 和 MSP430 等 4 24 2 ProteusProteus 软件仿真电路图及结果软件仿真电路图及结果 仿真电路图如下图 5 1 所示 11 图 5 1 仿真电路图 仿真结果如图 5 2 所示 仿真结果 4 34 3 软件仿真分析软件仿真分析 基于 Proteus 软件的模拟仿真

温馨提示

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

评论

0/150

提交评论