基于51单片机的点阵设计.doc
《基于51单片机的点阵设计.doc》由会员分享,可在线阅读,更多相关《基于51单片机的点阵设计.doc(40页珍藏版)》请在咨信网上搜索。
XXXXXXXXX学院 毕 业 论 文 题 目 基于STC89C52的16Χ16点阵屏设计 学生姓名 系部名称 专业班级 指导教师 起止时间 摘 要 伴随着科技的进步,LED点阵显示屏作为一种新兴的显示器件走进我们的视野,它是由多个独立的LED发光二极管封装而成。通过LED点阵显示屏可以显示数字、符号以及文字,通常用在广告,指示牌,公告牌上。 本设计利是一种基于STC89C52单片机的16*16点阵显示屏的设计,其中STC89C52单片机负责对整个系统进行总体控制,设计中使用4块8*8单红色点阵屏来组成16*16点阵屏,通过单片机串行输入八位并行输出的74LS595来控制点阵的行和列,通过快速的动态刷新来显示我们需要的内容,已达到动态显示的目的。 关键词:点阵 单片机 动态扫描 Abstract Along with the progress of science and technology, LED dot matrix display screen as a new display devices into our field of vision, it is composed of multiple independent packaged LED light-emitting diodes. Through the LED dot matrix display screen can display Numbers, symbols and words, usually used in advertising, signage, bulletin board. This design is based on an STC89C52 MCU 16 * 16 dot matrix display screen design, including STC89C52 microcontroller is responsible for overall control, the system used in the design of 4 pieces of 8 * 8 dot matrix screen to form a single red 16 * 16 dot matrix screen, by 74 single chip microcomputer serial input eight parallel output ls595 to control the row and column of the matrix, by using the fast dynamic refresh to display the contents of the we need, has reached the purpose of dynamic display. Keywords: dot matrix single-chip dynamic scan 目 录 摘 要 2 目 录 3 第1章 绪 论 4 1.1 课题的研究背景 4 1.1.1 LED电子显示屏概述 4 1.1.2 LED电子显示屏的分类 4 1.1.3 设计任务 5 1.2 MCS-51系统单片机简介 6 第2章 总体设计 7 2.1 系统概述 7 2.1.1 显示单元的选择 7 2.1.2 滚屏方式选择 7 2.1.3 关于屏幕的可扩展性 7 2.1.4 单片机控制器的考虑 8 2.1.5 关于点阵数据的存储方式 8 第3章 硬件电路设计 9 3.1 整体设计框图 9 3.2 主控电路 9 3.2.1 STC89C52 单片机简介 9 3.3 LED点阵显示电路 18 3.3.1 74LS595的总体特点和工作原理 18 3.4整体电路 19 第4章 软件实现 20 4.1 概述 20 4.2系统程序方案设计 20 4.2.1主程序设计 21 4.2.3延时函数 22 4.2.4行选列选控制 22 参考文献 24 附录1: 电路原理图 25 附录2: LED点阵显示源程序 26 元件清单 40 第1章 绪 论 1.1 课题的研究背景 本文主要围绕点阵的特点开展的点阵设计,设计中的难度诸多如限流电阻的计算,扫描时间的控制等,下面我们就介绍下点阵的概况。 1.1.1 LED电子显示屏概述 LED电子显示屏(Light Emitting Diode Panel)是由几百--几十万个半导体发光二极管构成的像素点,按矩阵均匀排列组成。利用不同的半导体材料可以制造不同色彩的LED像素点。目前应用最广的是红色、绿色、黄色。而蓝色和纯绿色LED的开发已经达到了实用阶段。 LED显示屏是一种通过控制半导体发光二极管的亮度的方式,来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。 LED显示屏分为图文显示屏和条幅显示屏,均由LED矩阵块组成。图文显示屏可与计算机同步显示汉字、英文文本和图形;而条幅显示屏则适用于小容量的字符信息显示。LED显示屏因为其像素单元是主动发光的,具有亮度高,视角广、工作电压低、功耗小、寿命长、耐冲击和性能稳定等优点。因而被广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。 LED显示屏的发展前景极为广阔,目前正朝着更高亮度、更高气候耐受性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。 1.1.2 LED电子显示屏的分类 按颜色分类 单基色显示屏:单一颜色(红色或绿色)。 双基色显示屏:红和绿双基色,256级灰度、可以显示65536种颜色。 全彩色显示屏:红、绿、蓝三基色,256级灰度的全彩色显示屏可以显示一千六百多万种颜色。 按显示器件分类 LED数码显示屏:显示器件为7段码数码管,适于制作时钟屏、利率屏等,显示数字的电子显示屏。 LED点阵图文显示屏:显示器件是由许多均匀排列的发光二极管组成的点阵显示模块,适于播放文字、图像信息。 按使用场合分类 室内显示屏:发光点较小,一般Φ3mm--Φ8mm,显示面积一般零点几至十几平方米。 室外显示屏:面积一般几十平方米至几百平方米,亮度高,可在阳光下工作,具有防风、防雨、防水功能。 按发光点直径分类 室内屏:Φ3mm、Φ3.75mm、Φ5mm、 室外屏:Φ10mm、Φ12mm、Φ16mm、Φ19mm、Φ21mm、Φ26mm 室外屏发光的基本单元为发光筒,发光筒的原理是将一组红、绿、蓝发光二极管封在一个塑料筒内共同发光增强亮度。 1.1.3 设计任务 本设计的任务就是完成一个16*16的点阵设计,并能滚动显示“你好!我是陆敏杰”内容。 任务要求: (1) 显示汉字左移、右移、上移、下移、逐个显示 (2) 能实现显示汉字无闪烁 (3) 能实屏幕亮度较高 1.2 MCS-51系统单片机简介 MCS-51系类单片机就有: 1.可靠性高:因为芯片是按工业测控环境要求设计的,故抗干扰的能力优于PC机。系统软件(如:程序指令,常数,表格)固化在ROM中,不易受病毒破坏。许多信号的通道均在一个芯片内,故运行时系统稳定可靠。 2.便于扩展:片内具有计算机正常运行所必需的部件,片外有很多工扩展用的(总线,并行和串行的输入/输出)管脚,很容易组成一定规模的就算计机应用系统。 3.控制功能强:具有丰富的控制指令:如:条件分支转移指令,I/O的逻辑操作指令,位处理指令。 4.实用性好:体积小,功耗低,价格便宜,易于产品化。 单片机的发展历史简介: (1) 第1阶段(1971年—1978年),以MCS-48系列为代表,称4位单片机。在片内:CPU有4位或8位;ROM有1KB或2KB;RAM有64B或128B;只有并行接口,无串行接口;只有1个8位的定时/计时器;中断源只有2个。在片外:寻址范围只有4KB;芯片引脚有40个。 (2) 第2阶段(1978年—1983年)以MCS-51系列为代表,称8位单片机。在片内:CPU有8位;ROM有4KB或8KB;RAM有128B或256B;有串/并行接口;有2个或者3个16位的定时/计时器;中断源有5至7个。在片外:寻址范围有64KB;芯片引脚有40个。 (3) 第3阶段(1983年以后),以MCS-96系列为代表,称16位单片机。在片内:CPU有16位;ROM有8KB;RAM有232B;有串/并行接口;有4个16位的定时/计时器;中断源有8个;增加了D/A和A/D转换电路。在片外:寻址范围有64KB;芯片引脚有48个或者68个。 以上是对MCS-51系列以其优良的性价比,在我国得到了广泛的应用。 第2章 总体设计 2.1 系统概述 一个完备的系统要考虑到多种问题的实现,点阵的设计也是如此,下面我详细说明我的设计过程。 2.1.1 显示单元的选择 显示一个简体汉字,至少需要16×16点阵来描述。为了在较远距离处获得清晰的视觉效果,本设计采用4个8×8点阵,像素直径5mm的红色LED模块拼接成16×16点阵的LED阵列。这样每个16×16汉字能够获得12×12cm的显示尺寸,因此在50米处仍能清晰阅读。本设计要求整个屏幕能显示“好好学习”一系列汉字,则需要用使用16*16红色点阵滚动显示。 2.1.2 滚屏方式选择 字符的位置在屏幕上实现移动,即术语“滚屏”。可以用硬件实现,但无疑增加了额外的硬件成本及设计难度。因此本设计采用软件算法实现左滚、右滚、上滚、下滚屏显示的常见滚屏方式。用软件来完成滚屏算法,其最大的优点在于成本低廉,而且可维护性、可升级性大大增强。 2.1.3 关于屏幕的可扩展性 除了基本要求外,本设计还要实现显示单元数目的随意扩展。在传统的并行传输方式中,因受到列数据锁存器地址线数目的制约,不能随意的增添显示单元,且每个显示单元的电路结构不同,PCB结构也不同,完全不符合模块化设计的要求。因此摒弃了传统的并行传输方式,而采用独特的串行锁存技术,通过控制五根总线就能实现各显示单元之间的列数据锁存。不仅板间连接简单,更是降低了PCB布局及布线的难度。每个显示单元的PCB都是完全一样的,便于量产。 2.1.4 单片机控制器的考虑 因本设计采用软件来实现滚屏,且传输方式为串行方式。所以对微控制器单元的处理速度要求较高,可供选择的有ARM7和高速8位单片机。ARM的处理速度极快,但对于条屏的应用,ARM内部的资源浪费严重,且成本较高。因此选择高速8位单片机作为控制器,常见的高速8位单片机有AVR系列单片机,C8051F系列单片机,STC89C52单片机。这几种单片机的处理速度均能达到1MIPS/MHz(在时钟频率为1MHz时处理能力为每秒100万条指令),但AVR系列单片机的极限时钟频率只能到16MHz,而C8051F系列SOC类似于ARM7,时钟速度可到100MHz,但会浪费其内部丰富的资源,而且价格昂贵,用在单色条屏的控制中颇感浪费。于是最佳选择为STC89C52系列单片机,其最高时钟能到40MHz,且有较丰富的接口及存储器资源,价格极其低廉,零售价仅为9元/片。大幅降低了产品成本。 2.1.5 关于点阵数据的存储方式 目前使用最广泛的技术是,通过上位机软件将待显示的字符串转换为对应的点阵字模数据,通过烧写的方式将这些字模数据按一定的顺序编址后存储在E2PROM中。在条屏显示的过程中按规定的方式取出E2PROM中的字模数据进行处理。对于一个16×16点阵的汉字字模数据,需要连续32字节的E2PROM空间来存储。照此计算,若有256个需要显示的字符,则至少需要32B×256=8192字节(8KB)的E2PROM存储空间。通常的单片机内部没有集成这么大容量的E2PROM。因此这种方案,需要在单片机外部扩展大容量的E2PROM,增加硬件成本。上位机程序设计由于涉及到汉字取模,取模算法的难度较大。在多字下载的时候传输时间也较长。诸多弊端使本设计放弃了传统方案。因为本设计只需要很少的显示内容所以直接保存在STC89C52中是足够的,因此没有使用外部设备。 第3章 硬件电路设计 3.1 整体设计框图 经过对此设计的分析,为了能够实现要求,利用单片机STC89C52作为本系统的主控模块。LED点阵显示屏作为显示模块,把单片机传来的数据显示出来,并且可以实现滚动显示。硬件整体设计框图如图1所示: STC89C52 芯片74595 16*16LED点阵 按键电路 复位电路 晶振电路 下面对硬件电路进行说明: 3.2 主控电路 此方案通过主控电路控制完成LED点阵显示屏的字符滚动显示,主控制器使用STC公司生产的单片机STC89C52。 3.2.1 STC89C52 单片机简介 STC89C52 是STC公司推出的一款超强抗干扰,加密性强,在线可编程,高速,低功耗CMOS 8位单片机。片内含 8k bytes 的可反复擦写Flash只读程序存储器和256 bytes 的随机数据存储器(RAM),器件采用STC公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容, 片内置通用8位中央处理器 (CPU)和Flash存储单元, 功能强大的STC89C52单片机适合于许多较为复杂控制应用场合。 1)STC89C52 外部结构及特性 其外形封装有两种方式:双列直插式40脚封装(DIP)和方形44脚封装 (PLCC),直插式40 脚封装(DIP)和外部总线结构如图2和图3所示: 图2 STC89C52引脚排列 图3外部总线 STC89C52的 4 个 8 位I/O口的功能说明如下: (1)P0口:P0 口是一个 8 位漏极开路的双向 I/O 口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。 当访问外部程序和数据存储器时,P0口也被作为低 8 位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash 编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。 (2)P1口:P1口是一个具有内部上拉电阻的8位双向 I/O口,p1输出缓冲器能驱动4个TTL 逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0 和 P1.2 分别作定时器/计数器 2 的外部计数输入(P1.0/T2)和定时器/计数器 2 的触发输入(P1.1/T2EX)。在 flash 编程和校验时,P1口接收低8位地址字节。 (3)P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动 4 个 TTL 逻辑电平。对 P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用 16 位地址读取外部数据存储器(例如执行MOVX @DPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送 1。在使用8 位地址(如 MOVX @RI)访问外部数据存储器时,P2 口输出 P2 锁存器的内容。在 flash 编程和校验时,P2 口也接收高 8 位地址字节和一些控制信号。 (4)P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,p2 输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在 flash 编程和校验时,P3 口也接收一些控制信号。P3 口亦作为AT89C52特殊功能(第二功能)使用,如下所示: l P3.0 RXD(串行输入口) l P3.1 TXD(串行输出口) l P3.2 INTO(外部中断0 输入口) l P3.3 INT1(外部中断 1 输入口) l P3.4 TO(定时器 0 外部输入) l P3.5 TI(定时器 1 外部输入) l P3.6 WR(外部数据存储器写选通信号) l P3.7(外部数据存储器读选通信号) 2)功耗特性 (1)掉电模式: 典型功耗 <0.1uA,可由外部中断唤醒,中断返回后,继续执行原程序 (2)空闲模式: 典型功耗 2mA (3)正常工作模式: 典型功耗 4mA-7mA (4)掉电模式可由外部中断唤醒,适用于水表,气表等电池供电系统及便携设备 3)STC单片机的命名规则 STC89 xx xx xx—40 x-xxxx 何种封装:如PDIP,PLCC,PQFP 工作温度范围: I:工业级,-40℃~+85℃ C:商业级,0℃~70℃ 工作频率: 25:工作频率可到25MHz 40:工作频率可到40MHz 50:工作频率可到50MHz RAM大小: RC:RAM为512 RD+:RAM为1280 程序空间大小,如: 51是4K字节,52是8K字节,53是15K字节, 54是16K字节,58是32K字节,516是64K字节 工作电压: C:5.5V~3.8V LE:2.4V~3.8V STC 12T/6T 8051 4)STC89C52的内部组成 STC89C52单片机在一块芯片中集成了 CPU、RAM、ROM、定时器/计数器、看门狗和多种功能的 I/O 口设备的等,相当于一台计算机所需要的基本功能部件。 STC89C52单片机内包含的具体部分如下: l 一个8 位 CPU。 l 一个片内振荡器及时钟电路。 l 8KB Flash 程序存储器。 l 256 B RAM 数据存储器。 l 三个16 位定时器/计数器。 l 可寻址 64KB 的外部数据存储器和 64KB 的外部程序存储器空间的控制电路。 32 条可编程的 I/O线(4组8 位并行 I/O端口)。 l 一个可编程全双工串口通信。 l 8 个中断源、两个优先级嵌套中断结构。 STC89C52单片机的框图如图4所示,各功能部件由内部总线连接在一起。 图4 STC89C52单片机框图 5)特殊功能寄存器SFR (1)单片机内核特殊功能寄存器 Mnemonic Add Name 7 6 5 4 3 2 1 0 RestValue ACC E0h Accumulator 0000,0000 B F0h B Register 0000,0000 PSW D0h ProgramStatusWord CY AC F0 RS1 RS0 OV F1 P 0000,0001 SP 81h StackPoint 0000,0111 DPL 82h DataPointerLowByte 0000,0000 DPH 83h DataPointerHighByte 0000,0000 (2)系统管理特殊功能寄存器 Mnemonic Add Name 7 6 5 4 3 2 1 0 RestValue PCON 87h PowerControl SMOD SMOD0 - P0F GF1 GF0 PD IDL 00x1,0000 AUXR 8Eh AuxiliaryRegister0 - - - - - - EXTRAM ALE0FF xxxx,xx00 AUXR1 A2h AuxiliaryRegister1 - - - - GF2 - - DPS xxxx,0xx0 (3)中断特殊功能寄存器 Mnemonic Add Name 7 6 5 4 3 2 1 0 RestValue IE A8h InterruptEnable EA - ET2 ES ET1 EX1 ET0 EX0 0000,0000 IP B8h InterruptPriorityLow - - PT2 PS PT1 PX1 PT0 PX0 xx00,0000 IPH B7h InterruptPriorityHigh PX3H PX2H PT2H PSH PT1H PX1H PT0H PX0H 0000,0000 TCON 88h Timer/Counter0and1Contrl TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 0000,0000 SCON 98h SerialContrl SM0/FE SM1 SM2 REN TB8 RB8 TI RI 0000,0000 T2CON C8h Timer/Counter2Control TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2# CP/RL2# 0000,0000 XICON C0h AuxiliaryInterrupControl PX3 EX3 IE3 IT3 PX2 EX2 IE2 IT2 0000,0000 6)STC89C52单片机定时器的使用 定时和计数功能由特殊功能寄存器TMOD的控制位C/`T进行选择,TMOD寄存器的各位信息如下表所列。可以看出,2个定时/计数器有4中操作模式,通过TMOD的M1和M0选择。2个定时/计数器的模式0、1和2都相同,模式3不同,各模式下的功能如图5所述: 图5 定时/计数器各模式功能 位 符号 功能 TMOD.7 GATE TMOD.7控制定时器1,置1时只有在INIT0脚为高及TR1控制位置1时才可打开定时器/计数器1 TMOD.3 GATE TMOD.3控制定时器0,置1时只有在`INIT1脚为高及TR0控制位置1才可打开定时器/计数器1 TMOD.6 C/`T TMOD.6控制定时器1用作定时器或计数器,清零则用作定时器(从内部系统时钟输入),置1用作计数器(从T1/P3.5脚输入) TMOD.2 C/`T TMOD.2控制定时器0用作定时器或计数器,清零则用作定时器(从内部系统时钟输入),置1用作计数器(从T0/P3.4脚输入) TMOD.5/ TMOD.4 M1 M0 定时器/计数器1模式选择 0 0 13位定时器/计数器,兼容8048定时器模式,TL1只用低5位参与分频,TH1整个8位全用 0 1 16位定时器/计数器,TL1、TH1全用 1 0 8位自动重装载定时器,当溢出时将TH1存放的值自动重装入TL1 1 1 定时器/计数器1此时无效(停止计数) TMOD.1/ TMOD.0 M1 M0 定时器/计数器0模式选择 0 0 13位定时器/计数器,兼容8048定时器模式,TL0只用低5位参与分频,TH1整个8位全用 0 1 16位定时器/计数器,TL0、TH0全用 1 0 8位自动重装载定时器,当溢出时将TH1存放的值自动重装入TL0 1 1 定时器0此时作为双8位定时器/计数器。TL0作为一个8位定时器/计数器,通过标准定时器0的控制位控制。TH0仅作为一个8位定时器,由定时器1的控制位控制。 (1)模式0 将定时器设置成模式0时,类似8048定时器,即8位计数器带32分频的预分频器。下图所示为模式0工作方式。此模式下,定时器配置为13位的计数器,由TLn的低5位和THn的8位所构成。TLn低5位溢出向THn进位,THn计数溢出置为TCON中的溢出标志位TFn(n=0,1)。GATE=0时,如TRn=1,则定时器计数。GATE=1时,允许由外部输入INIT1控制定时器1,INIT0控制定时器0,这样可实现脉宽测量。 图6 定时器/计数器0和定时器/计数器1的模式0 (2)模式1 模式1除了使用THn及TLn全部16位外,其他与模式0完全相同、 图7定时器/计数器0和定时器/计数器1的模式1 (3)模式2 此模式下定时器/计数器0和1作为可自动重装载的8位计数器(TLn),如下图所示,TLn的溢出不仅置位TFn,而且将THn内容重新装入TLn,THn内容由软件预置,重装时THn内容不变,模式2的操作对于定时器0及定时器1是相同的。 图8 定时器/计数器0和1的模式2 (4)模式3 对定时器1,在模式3时,,定时器1停止计数,效果与将TR1设置为0相同。 对定时器0,此模式下定时器0的TL0及TH0作为2个独立的8位计数器。下图为模式3时的定时器0逻辑图。TL0占用定时器0的控制位:C/`T、GATE、TR0、INT0及TF0。TH0限定为定时器功能(计数器周期),占用定时器1的TR1及TF1。此时,TH0控制定时器1中断。 模式3是为了增加一个附加的8位定时器/计数器而提供的,使单片机具有三个定时器/计数器。模式3只使用与定时器/计数器0,定时器T1处于模式3时相当于TR1=0,停止计数(此时T1可用来作串行口波特率发生器),而T0可作为两个定时器用。 图9 定时器/计数器0的模式3 3.3 LED点阵显示电路 本设计使用的是4块8*8单色点阵屏设计16*16点阵屏,采用单色显示,进行显示所要显示的字符,通过74LS154译码器来控制点阵的行方向的显示,而列方向的16条线则由74LS595的八位并行输出端控制。 3.3.1 74LS595的总体特点和工作原理 1)总体特点:74LS595是8位串行输入转并行输出移位寄存器,三态输出功能,具有数据存储寄存器,移位寄存器和存储器是分别的时钟。数据在SHcp的上升沿输入,在STcp的上升沿进入的存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。在移位的过程中,输出端的数据可以保持不变。这在串行速度慢的场合很有用处,数码管没有闪烁感。其DIP封装引脚图如图7所示: 图7 74LS595引脚图 各引脚及其功能: Q0~Q7 八位并行输出端 Ds 串行数据输入端 /OE 输出使能端 STcp 存储寄存器的时钟脉冲输入口 SHcp 移位寄存器的时钟脉冲输入口 /MR 芯片复位端 Q7' 并行数据输出口,即储寄存器的数据输出口 2)工作原理 每当SHcp上升沿到来时, Ds引脚当前电平值在移位寄存器中左移一位,在下一个上升沿到来时移位寄存器中的所有位都会向左移一位,同时Q7'也会串行输出移位寄存器中高位的值,这样连续进行8次,就可以把数组中每一个数(8位的数)送到移位寄存器;然后当STcp上升沿到来时,移位寄存器的值将会被锁存到锁存器里,并从Q1~7引脚输出。74LS595的主要优点是具有数据存储寄存器,在移位的过程中,输出端的数据可以保持不变。这在串行速度慢的场合很有用处,点阵没有闪烁感。 74HC595在5V供电的时候能够达到30MHz的时钟速度,每个并行输出端口均能承受20mA的灌电流和拉电流。这个特点保证了不用增加额外的扩流电路即可轻松的驱动LED。它输入端允许500nS的上升(下降)时间,对严重畸形的时钟脉冲仍能检测。这样就可以容纳较大的传输线对地电容,使本设计的抗干扰能力增强。 74HC595并行输出端与LED模块列线之间通过20Ω的电阻连接,这里电阻起到分压,去除红色LED的并联嵌位作用。使红绿两组LED均能正常发光。 由于LED显示屏的工作电流时刻在变化,造成了系统电压的波动。这种电压波动有高频成分,也有低频成分。轻则对周围无线电环境造成电磁污染,重则使系统时钟紊乱,逻辑错误。为避免此,在每个74HC595的电源VCC和GND旁边都并联了两个电容,用于滤波和退耦。稳定系统电压,旁路掉电源中的高频脉动成份。消除自激,减小对外杂散电磁辐射,提高EMI电磁兼容性。 3.4整体电路 见附录1(电路原理图) 第4章 软件实现 4.1 概述 整个系统的功能是由硬件电路配合软件来实现的,当硬件基本定型后,软件的功能也就基本定下来了。 从软件的功能不同可分为两大类: 一是监控软件 (主程序) ,它是整个控制系统的核心,专门用来协调各执行模块和操作者的关系。二是执行软件(子程序),它是用来完成各种实质性的功能。每一个执行软件也就是一个小的功能执行模块。这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义。各执行模块规划好后,就可以规划监控程序了。 首先要根据系统的总体功能选择一种最合适的监控程序结构,然后根据实时性的要求,合理地安排监控软件和各执行模块之间地调度关系。 4.2系统程序方案设计 系统程序主要包括了:主程序、点阵显示驱动程序。 主程序:主要控制整个显示部分的初始化,使系统在目测条件下LED显示屏各点亮度均匀、充足,可显示文字和数字,显示的文字和数字应稳定、清晰无串扰。文字显示可以移入移出。本设计的显示内容为“你好!我是陆敏杰”实现向右移动功能。 下面是主程序部分: 程序中首先对各个变量进行初始化,并对74HC595进行初始化,当时初始化过程完成后,开始显示处理。 //主函数 在主函数中完成函数的调用及字体的移动处理,所以使人们能看见可以移动字体显示。分别能实现字体的上移、下移、左移、右移、逐个显示。通过外部中断来实现各种方式的转移。 点阵显示驱动程序: 主要实现对74ls595的驱动编写,已实现画面的动态刷新。通过改变列值和行值来实现动态扫描。 根据电路行值为低电平,列值为高电平。则对应的led灯点亮,通过快速的扫描来实现扫描。 4.2.1主程序设计 通过主程序对74ls595的初始化和对子程序的调用完成单片屏幕的动态刷新以达到点阵的动态显示目的。 主程序流程图: 4.2.2子程序设计 将各个功能程序以子程序的形式写好, 当写主程序的时候, 只需要调用子程序,然后在寄存器的分配上作一下调整,消除寄存器冲突和 I/O 冲突即可。程序应该尽可能多的使用调用指令代替跳转指令。因为跳转指令使得程序难以看懂各程序段之间的结构关系。而调用指令则不同,调用指令使得程序结构清晰,无论是修改还是维护都比较方便。将功能程序段写成子程序的形式,除了方便调用之外,还有一个好处那就是以后写程序的时候如果要用到,就可以直接调用这个单元功能模块。下面对LED点阵显示屏的显示部分流程图做介绍: 4.2.3延时函数 因为显示原理是视觉暂留原理需要有延时控制显示。延时函数如下: //等待函数 void delay(uint z) { uint x,y; for(x=z;x>0;x--) for(y=7;y>0;y--); } 4.2.4行选列选控制 通过单片机IO口控制74595来分别控制列选和行选,在进行行扫描时,将行值从第一位到第16位逐行选通,同时将此时刻对应的列值送入。在下一个扫描时刻将此行关闭,下一行行选打开,列值送入对应的数值,以此类推直到所有的行都扫描完毕,行扫描从第一行开始。 同理,列扫描也从第一列扫描到最后一列,在列选通的时候将对应的行值送入。 总 结 经过近两个月的努力,终于顺利完成了毕业设计。在此LED点阵显示系统中,由于我采用了STC89C5单片机,并且采用串行移位寄存器74HC595作列线驱动,使本设计的硬件成本大幅下降,而又提高了显示单元的可扩展性。因为使用了高速单片机,使本系统的动态刷新率,移动速度等得到保障。本设计充分利用了单片机的E2PROM等片上资源,节约成本的同时使外围电路简洁美观,故障率降低。总体的性能指标均达到或超过了题目的要求。 毕业设计是每个大学生必须面临的一项综合素质的考验,如果说在过去四年里,我们的学习是一个知识的积累过程,那么现在的毕业设计就是对过去所学知识的综合运用,是对理论进行深化和重新认识的时间活动。在这近两个月的毕业设计中,我们有艰辛的付出,当然更多的是丰收的喜悦。知识固然得到了巩固和提高,但我相信在实践中的切身体会将会使我在以后的工作和学习中终身受用。 首先,学习能力得到了提高。在毕业设计中,自始至终独立完成硬件电路的设计、单片机软件编写等。在这些过程中,遇到许多困难,但通过书籍或网络查阅了很多相关文章和向导师请教后终于解决了。通过这次毕业设计,我不仅对理论有了更深一步的认识,增强了和外界技术的沟通,还培养了自学能力和分析解决问题的能力,更重要的是,培养了克服困难的勇气和信心。 其次,培养了自己的市场观念。一个商品是否能够抢占市场,除了必须的功能和质量要求外,其价格是最大的竞争优势。如何在保证质量和完成同等功能的情况下,把产品的成本降到最低。是每个设计人员在作出方案时首要考虑的因素。 再次,则是人际交流能力得到锻炼。人非生而知之者!人的学识总是不能面面俱到的,这就要求我们必须善于借鉴别人的成功经验或失败教训,使自己少走弯路。 总之,毕业设计完成了,但又面临着工作。我相信我会把自己的热情和所学奉献到自己的工作中,不断努力,不断进取! 参考文献 [1] 谭浩强. C程序设计(第二版)[M]. 北京:清华大学出版社,1999.12. [2] 彭为.单片机典型系统设计实例精讲[M].北京:电子工业出版社,2006.5. [3] 李良荣.现代电子设计技术-基于Multisim7[M].北京:机械工业出版社,2005.4. [4] 姜承昊. 最新LED驱动电路设计、应用与制造新技术新工艺实用手册[M].北京:中国科学技术文献出版社,2008.3. [5] 魏洪兴.嵌入式系统设计与实例开发实验教材I[M].北京:清华大学出版社,2005.9. [6] 童诗白.模拟电子技术基础(第三版)[M].北京:高等教育出版社,2001.1. [7] 阎石.数字电子技术基础(第四版)[M].北京:高等教育出版社,1998.11. [8] 中国集成电路大全编委会编.《中国集成电路大全——CMOS集成电路》[M]. 北京:国防工业出版社,1985. 附录1: 电路原理图 附录2: LED点阵显示源程序 //宏定义 #define uchar unsigned char #define uint unsigned int //包含头文件 #include <reg51.h> #include <intrins.h> #include <math.h> uchar i,flag,X,j,k; //管脚定义 //595 sbit SI=P0^6;//数据脚 sb- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 点阵 设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文