16乘16点阵的毕业设计利用单片机原理_第1页
16乘16点阵的毕业设计利用单片机原理_第2页
16乘16点阵的毕业设计利用单片机原理_第3页
16乘16点阵的毕业设计利用单片机原理_第4页
16乘16点阵的毕业设计利用单片机原理_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、16*16点阵显示设计班级:通信12-1班 学号:5121968132 姓名:王昂 摘要:单片机是为各类专用控制器而设计的通用或专用的微型计算机系统,高密度集成了普通计算机微处理系统,一定容量的RAM和ROM以及输入/输出接口,定时器等电路于一块芯片上构成的。它的优点是体积小、重量轻、抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易。在现代工业控制和一些智能化仪器仪表中,越来越多的场所需要用点阵图形来显示汉字,汉字显示屏也广泛应用到汽车报站器,广告屏等。LED显示屏分为图文显示屏和视频显示屏,均由LED矩阵块组成。用点阵方式构成图形或文字,是非常灵活的,可以根据需要任意

2、组成和变化,只要设计好合适的数据文件,就可以得到满意的显示效果,因而采用点阵式图文显示屏显示经常需要变化的信息是非常有效的。本次课程设计实现LED点阵屏核心功能即汉字的多样化显示。加深对单片机课程的全面认识和掌握,对单片机课程的应用进一步的了解。关键词:单片机,LED显示屏,点阵0引言单片微型计算机简称单片机,它是为各类专用控制器而设计的通用或专用的微型计算机系统。自20世纪70年代问世以来,以极其高的性价比受到人们的重视和关注,所以应用很广,发展很快。在现代工业控制和一些智能化仪器仪表中,越来越多的场所需要用点阵图形来显示汉字,汉字显示屏也广泛应用到汽车报站器,广告屏等。所以研究LED显示有

3、实用意义。现代LED的发展很快,很多研究领域已经非常深刻,实际情况是:很多相关的知识已经远远超出我们在校学生的能力范围,所以在本设计中只是简单的研究一下用单片机驱动的LED显示移动的汉字。共有两个目的:一是制作一个简单实用的显示文字的LED点阵;二是通过制作LED点阵增强对LED点阵的了解和应用,以及复习和巩固单片机知识。1 芯片介绍 LED点阵总体框图如图1所示,点阵电路大体上可以分成微机本身的硬件、显示驱动电路、控制信号电路三部分。控制电路部分包括一个51CUP和一些外围电路。在整个电路当中此控制电路部分相当于一个上位机,它负责控制整个电路以及相应的程序的运行、与PC机的串行通讯、以及给屏

4、体电路部分发送命令。点阵显示屏体以及它的行和列的各个驱动电路。由于两部分的电路在制板时可以放在一起,所以可以将其字库放到控制电路部分使用串行通讯方式来与屏体电路部分进行数据和命令的传送。此显示电路采用扫描方式进行显示时,每行有一个行驱动器,各行的同名列共用一个列驱动器。由行译码器给出的行选通信号,从第一行开始,按顺序依次对各行扫描(把该行与电源的一端接通)。另一方面,根据各列锁存的数据,确定相应的列驱动器是否将该列与电源的另一端接通。接通的列就在该行该列点燃相应的LEDl未接通的列所对应的LED熄灭。可通过扫描输出口的控制实现颜色的转换。图1 点阵的总体框图1.1 51系列单片机简介单片机(M

5、icrocontroller,又称微处理器)是在一块硅片上集成了各种部件的微型机,这些部件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器和多种I/O接口电路。8051单片机的基本结构见图2。图2 8051单片机的基本结构8051系列的内部结构可以划分为CPU、存储器、并行口、串行口、定时器/计数器、中断逻辑几部分。11.1中央处理器8051的中央处理器由运算器和控制器构成,其中包括若干特殊功能寄存器(SFR)。算术逻辑单元ALU能对数据进行加、减、乘、除等算术运算;“与”、“或”、“异或”等逻辑运算以及位操作运算。ALU只能进行运算,运算的操作数可以事先存放到累加器A

6、CC或寄存器TMP中,运算结果可以送回ACC或通用寄存器或存储单元中,累加器ACC也可以写成A。B寄存器在乘法指令中可以用来存放一个乘数,在除法指令中用来存放除数,运算后B中为部分运算结果。ALU主要用于完成二进制数据的算术和逻辑运算,并通过对运算结果的判断影响程序状态字寄存器PSW中有关位的状态。 CY:进位标志。在进行加法或减法运算时,若运算结果的最高位有进位或借位,CY=1,否则CY=0,在执行位操作指令时,CY作为位累加器。AC:辅助进位标志。在进行加法或减法运算时,若低半字节向高半字节有进位或借位, AC=1,否则AC=0,AC还作为BCD码运算调整时的判别位。F0:用户可设定的标志

7、位,可置位/复位,也可供测试。 OV:溢出标志。当两个带符号的单字节数进行运算,结果超出-128+127的范围时,OV=1,表示有溢出,否则OV=0表示无溢出。 P:奇偶校验标志。每条指令指行完毕后,都按照累加器A中“1”的个数来决定P值,当“1”的个数为奇数时,P=1,否则P=0。 PSW中的D1位为保留位,对于8051来说没有意义,对于8052来说为用户标志,与F0相同。 控制器包括程序计数器PC、指令寄存器、指令译码器、数据指针DPTR、堆栈指针SP、缓冲器以及定时与控制电路等。控制电路完成指挥控制工作,协调单片机各部分正常工作。程序计数器PC:当一条指令按PC所指向的地址从程序存储器中

8、取出之后,PC的值会自动增量,即指向下一条指令。堆栈指针SP:用来指示堆栈的起始地址。80C51单片机的堆栈位于片内RAM中,而且属于“上长型”堆栈,复位后SP被初始化为07H,使得堆栈实际上由08H单元开始。指令译码器:当指令送入指令译码器后,由译码器对该指令进行译码,CPU根据译码器输出的电平信号使定时控制电路产生执行该指令所需要的各种控制信号。数据指针寄存器DRTR:它是一个16位寄存器,由高位字节DPH和低位字节DPL组成,用来存放16位数据存储器的地址,以便对片外64kB的数据RAM区进行读写操作。片内RAM有256个字节,其中00H7FH地址空间是直接寻址区,该区域内从00H1FH

9、地址为工作寄存器区,安排了4组工作寄存器,每组都为R0R7,在某一时刻,CPU只能使用其中任意一组工作寄存器,由程序状态字PSW中RS0和RS1的状态决定。1.1.2存储器组织8051单片机在物理上有三个存储空间:片内数据存储器RAM 、片外数据存储器RAM 、程序存储器ROM 。程序存储器ROM地址空间为64kB,片外数据存储器RAM也有64kB的寻址区,在地址上是与ROM重迭的。8051单片机通过不同信号来选通ROM或RAM。当从外部ROM中取指令时,采用选通信号PSEN,而从外部RAM中读写数据时则采用读RD和写WR信号或来选通,因此不会因地址重迭而发生混乱。 片内RAM的20H2FH地

10、址单元为位寻址区,其中每个字节的每一位都规定了位地址。每个地址单元除了可进行字节操作之外,还可进行位操作。片内RAM的80HFFH地址空间是特殊功能寄存器SFR区,对于51子系列在该区域内安排了21个特殊功能寄存器,对于52子系列则在该区域内安排了26个特殊功能寄器,同时扩展了128个字节的间接寻址片内RAM,地址也为80FFH,与SFR区地址重迭。8051的存储器组成结构如图3所示。图3 8051的存储器组成结构11.3管脚说明VCC:供电电压。GND:接地。P0口(P0.0P0.7):该端口为漏极开路的8位准双向口,它为外部低8位地址线和8位数据线复用端口驱动能力为8个LSTTL负载。P1

11、口(P1.0P1.7):它是一个内部带上拉电阻的8位准双向I/O口,P1口的驱动能力为4个LSTTL负载。P2口(P2.0P2.7):它为一个内部带上拉电阻的8位准双向I/O口,P2口的驱动能力也为4个LSTTL负载。在访问外部程序存储器时,作为高8位地址线。P3口(P3.0P3.7):为内部带上拉电阻的8位准双向I/O口,P3口除了作为一般的I/O口使用之外,每个引脚都具有第二功能。P3口也可作为AT89C51的一些特殊功能口,如下所示:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(计时器0 外

12、部输入)P3.5 T1(计时器1 外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。时钟电路引脚XTAL1和XTAL2: XTAL1:接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,若使用外部TTL时钟时,该引脚必须接地。 XTAL2:接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出,若使用外部TTL时钟时,该引脚为外部时钟的输入端。地址锁存允许ALE: 系统扩展时,ALE用于控制地址锁存器锁存P0口输出的低8位地址,从而实现数据与低位地址的复用。外部程序存储器读选通信号PSEN

13、:PSEN是外部程序存储器的读选通信号,低电平有效。程序存储器地址允许输入端EA /VPP: 当EA为高电平时,CPU执行片内程序存储器指令,但当PC中的值超过0FFFH时,将自动转向执行片外程序存储器指令。当EA为低电平时,CPU只执行片外程序存储器指令。复位信号RST:该信号高电平有效,在输入端保持两个机器周期的高电平后,就可以完成复位操作。1.2 74LS154芯片介绍1.2.1 74LS154功能简介54/74154 为 4 线16 线译码器,当选通端(G1、G2)均为低电平时,可将地址端(ABCD)的二进制编码在一个对应的输出端,以低电平译出。 如果将G1和G2中的一个作为数据输入端

14、,由ABCD对输出寻址,74LS154还可作1线-16线数据分配器。图4是芯片74LS154管脚。图4 芯片74LS154管脚图1.3引脚功能介绍A、B、C、D 译码地址输入端(低电平有效);G1、G2 选通端(低电平有效);015 输出端(低电平有效)。1.4 74LS373芯片介绍该74HC/HCT04是高速的硅栅CMOS器件,并兼容低功耗肖特基的TTL( LSTTL )。他们中指明遵守JEDEC的没有标准。74HC/HCT04提供的6个颠倒缓冲器。74HC04是内含6组相同的反相器。即1A输入高电平,1Y输出低电平六反相器。04为六组反相器,共有54/7404、54/

15、74H04、54/74S04、54/74LS04四种线路结构形式,其主要电特性的典型值如下:型 号 tPLH tPHL PD5404/7404 12ns 8ns 60mW54H04/74H04 6ns 6.5ns 140mW54S04/74S04 3ns 3ns 113mW54LS04/74LS04 9ns 10ns 12mW其管脚图如图5。图5 74LS373管脚图极限值   电源电压7V输入电压54/7

16、404、54/74H04、54/74S045.5V    54/74LS047V    工作环境温度54XXX -5512574XXX 070存储温度 -65150硬件设计复位信号RST高电平有效,在输入端保持两个机器周期的高电平后,就可以完成复位操作。复位的实现通常用2种方式:开机上电复位和外部手动复位,本设计用的是外部手动复位。电路图6如下:图6 单片机复位图图7 单片机最小应用系统原理图最后,单片机硬件设计总电路图就并联多个8*8的LED组成16*16的点阵,则一个扫描信号同时要

17、驱动两行的LED。如下图8所示。在这个电路中驱动的扫描信号总共有16条,如果直接由8051输出,将占用2个PORT口,浪费资源不太理想,在此使用的是一个4对16位译码器(74LS154),这个译码器是将输入的16进位码输出低态的扫描信号。输出的低态扫描信号可直接接到PNP晶体管的基极,如果太大的话也可以先经过限流电阻在接到PNP晶体管的基极,信号最后经过晶体管的放大后即可推动16个LED点阵了。图8 总电路图3软件设计3.1单片机延时子程序延时子程序在单片机编程中使用非常广泛,也很重要。程序设计是单片机开发最重要的工作,而程序在执行过程中常常需要完成延时功能。在本设计中,行向的扫描要控制每行的

18、扫描时间,还有所有的字移动有一定的时间间隔,而在所有的字移动一遍结束的一瞬间到下一遍移动开始的一瞬间要有延时,这时的延时可以和移动的时间相同以保持移动的连贯性,也可以不同作为每次开始的停顿。3.1.1机器周期和指令周期机器周期是指单片机完成一个基本操作所花费的时间,一般要用微秒来计量单片机的运行速度,51单片机的一个机器周期包括12个时钟振荡周期,也就是说51单片机采用12MHZ晶振,那么执行一个机器周期就只需要1微秒;如果采用的是6MHZ的晶振,那么执行一个机器周期就只需要2微秒。指令周期是指单片机执行一条指令所需要的时间,一般利用单片机的机器周期来计量指令周期。在51单片机里有单周期指令(

19、执行这条指令只需一个机器周期),双周期指令(执行这条指令只需要两个机器周期),四周期指令(执行这条指令需要四个机器周期)。除了乘、除两条指令是四周期指令,其余均为单周期或双周期指令。也就是说,如果51单片机采用的是12MHZ晶振,那么它执行一条指令一般只需12微秒的时间;如果采用的是6MHZ晶振,那么它执行一条指令一般只需24微秒的时间。振荡周期、时钟周期、机器周期、指令周期的关系是:振荡周期:为单片机提供时钟信号的振荡源的周期。时钟周期:振荡源信号经二分频后形成的时钟脉冲信号,为振荡周期的2倍。 机器周期:完成一个基本操作所需的时间,通常为12个振荡周期。指令周期:指CPU执行一条指令所需要

20、的时间,一个指令周期通常含有14个机器周期。 3.2延时指令在单片机编程里面并没有真正的延时指令,从上面的概念中我们知道单片机每执行一条指令都需要一定的时间,所以要达到延时的效果,只须让单片机不断地执行没有具体实际意义的指令,从而达到了延时的效果。3.2.1数据传送指令MOV数据传送指令功能是将数据从一个地方复制、拷贝到另一个地方。3.2.2空操作指令NOP空操作指令功能只是让单片机执行没有意义的操作,消耗一个机器周期。3.2.3循环转移指令DJNZ循环转移指令功能是将第一个数进行减1并判断是否为0,不为0则转移到指定地点;为0则往下执行。除了可以给定地址标号让其跳转外,还可以将地址符号改成为,这样程序就跳回本指令执行。3.3程序流程图图9 程序流程图4调试或性能分析4.1调试主要分为硬件调试和软件调试硬件调试:在焊接电路板的时候,应该从最基本的最小系统开始,分模块,逐个进行焊接测试。在对各个硬件模块进行调试时,要保证软件正确的情况下去调试硬件,要不然发生错误时就不知道是哪一方出错了。当然,在设计的过程中也存在着失误和不足,在调试中进行修改了。软件调试:软

温馨提示

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

评论

0/150

提交评论