ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:154.95KB ,
资源ID:16760124      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16760124.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机设计报告LED数码管倒计时系统Word格式文档下载.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机设计报告LED数码管倒计时系统Word格式文档下载.docx

1、2)给出系统设计方案,画出硬件连线图,并说明工作原理;3)画出程序框图并编写程序。2 总体设计方案与说明2.1 系统总体设计方案本设计是基于Windows环境下的Proteus7.8软件,在其中进行硬件电路的的设计,汇编语言源程序的编写以及以上两部分工作完成后的软件系统的调试。本设计的处理控制系统由Intel8086微处理器在最小模式下组成的单处理器系统构成,用来进行对外围硬件电路进行信息采集、数据处理和控制。2.2 系统结构框图如图2-2 结构图2-2结构图3 系统硬件部分设计3.1 Intel8086微处理器的简介 Intel8086是Intel公司于1978年推出的16位微处理器。它采用

2、HMOS工艺制造,片内有2.9万个晶体管,单一电源+5V供电,时钟频率4.77-10MHz,片内数据总线、寄存器和外部数据总线都为16位,最大可寻址的物理地址为1M。要掌握一个CPU的工作性能及使用方法,首先应该了解它的编程结构。在8086CPU的编程结构上,从功能上,分为两部分,即总线接口部件(BIU)和执行部件(EU)。8086的逻辑地址为20位,物理地址为16位,对于编程员来说,只需要考虑逻辑地址即可。8086为40只引脚双列直插式封装。Intel可以工作在最大和最小两种模式下,最小模式和最大模式的确定是通过一条MN/MN所接的逻辑电平是“1”还是“0”来完成。在最小方式下,微处理器被用

3、来构成一个小规模的单处理机系统,微处理器本身必须提供全部的的控制信号给外围电路。微处理器被用来构成一个较大规模的多机系统。在最小模式下的信号如下:(1)AD15AD0(addressdatabus)地址/数据复用引脚(双向工作)分时复用的地址/数据线。(2)A19/S6A16/S3(Address/Status)输出,是分时复用的地址/状态线。用作地址线时,A19A16与A15A0一起构成访问存储器的20位物理地址。(3)BHE/S7(BusHighEnabale/Status)总线高字节有效信号。三态输出,低电平有效,用来表示当前高8位数据线上的数据有效。(4)NMI(NonMaskable

4、InterruptRequest)不可屏蔽中断请求信号。由外部输入,上升沿触发,不受中断允许标志的限制。(5)INTR(InterruptRequest)可屏蔽中断请求信号。由外部输入,电平触发,高电平有效。(6)RD(Read)读信号。三态输出,低电平有效,表示当前CPU正在读存储器或IO端口。(7)CLK(Clock)主时钟引脚(输入)。由8284时钟发生器输入。8286CPU可使用的最高时钟频率随芯片型号不同而异,8086为5MHz,8086-1为10MHz,8086-2为8MHz。(8)RESET(reset)复位信号。由外部输入,高电平有效。(9)READY(ready)准备就绪信号

5、。由外部输入,高电平有效,表示CPU访问的存储器或IO端口已准备好传送数据。(10)TEST测试信号。由外部输入,低电平有效。CPU执行WAIT指令时,每隔5个时钟周期对TEST进行一次测试,若测试TEST无效,则CPU处于踏步等待状态,直到TEST有效,CPU才继续执行下一条指令。(11)MN/MX工作模式选择信号。由外部输入,MN/MX为高电平时,CPU工作在最小模式;MN/MX为低电平时,CPU工作在最大模式。(12)GND/VCC电源地和电源。8086CPU只需要单一的+5V电源,由VCC引脚输入。(13)INTA中断响应信号。向外部输出,低电平有效。在中断响应周期,该信号表示CPU响

6、应外部发来的INTR信号,用作读中断类型码的选通信号。(14)ALE地址锁存允许信号。向外部输出,高电平有效。在最小模式系统中用作地址锁存器的片选信号。(15)DEN数据允许信号,三态输出,低电平有效。(16)DT/R数据发送/接收控制信号。(17)M/IO存储器/IO端口访问信号。(18)WR写信号。三态输出,低电平有效,表示当前CPU正在写存储器或IO端口。(19)HOLD总线请求信号。由外部输入、高电平有效。表示有其他共享总线的处理器/控制器向CPU请求使用总线。(20)HLDA总线请求响应信号。一旦测试到有HOLD请求,就在当前总线周期结束后,使HLDA有效,表示响应这一总线请求,并立

7、即让出总线使用权。在不要求使用总线的情况下,CPU中指令执行部件可继续工作。HOLD变为无效后,CPU也将HLDA置成无效,并收回对总线的使用权,继续操作。3.2 8255A芯片的工作原理8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。其各口功能可由软件选择,使用灵活,通用性强。8255可作为单片机与多种外设连接时的中间接口电路。8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。同时必须具有与外设连接的接口A、B、C口。由于8255可编程,所以必须具有逻辑控

8、制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。1)与CPU连接部分根据定义,8255能并行传送8位数据,所以其数据线为8根D0D7。由于8255具有3个通道A、B、C,所以只要两根地址线就能寻址A、B、C口及控制寄存器,故地址线为两根A0A1。此外CPU要对8255进行读、写与片选操作,所以控制线为片选、复位、读、写信号。各信号的引脚编号如下:(1)数据总线DB:编号为D0D7,用于8255与CPU传送8位数据。(2)地址总线AB:编号为A0A1,用于选择A、B、C口与控制寄存器。(3)控制总线CB:片选信号、复位信号RST、写信号、读信号。当CPU要对

9、8255进行读、写操作时,必须先向8255发片选信号选中8255芯片,然后发读信号或写信号对8255进行读或写数据的操作。2)与外设接口部分根据定义,8255有3个通道A、B、C与外设连接,每个通道又有8根线与外设连接,所以8255可以用24根线与外设连接,若进行开关量控制,则8255可同时控制24路开关。各通道的引脚编号如下:(1)A口:编号为PA0PA7,用于8255向外设输入输出8位并行数据。(2)B口:编号为PB0PB7,用于8255向外设输入输出8位并行数据。(3)C口:编号为PC0PC7,用于8255向外设输入输出8位并行数据,当8255工作于应答I/O方式时,C口用于应答信号的通

10、信。3)控制器部分8255将3个通道分为两组,即PA0PA7与PC4PC7组成A组,PB0PB7与PC0PC3组成B组。如图7.5所示,相应的控制器也分为A组控制器与B组控制器,各组控制器的作用如下:(1)A组控制器:控制A口与上C口的输入与输出。(2)B组控制器:控制B口与下C口的输入与输出。引脚功能:RESET:复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输.RD:读信号线,当

11、这个输入引脚为低跳变沿时,即/RD产生一个低脉冲且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。WR:写入信号,当这个输入引脚为低跳变沿时,即/WR产生一个低脉冲且/CS=0时,允许CPU将数据或控制字写入8255。D0D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。8255具有3个相互独立的输入/输出通道端口,用+5V单电源供电,能在以下三种方式下工作。方式0基本输入输出方式;方式1选通输入/出方式;方式2双向选通输入/输出方式;PA0

12、PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。工作于三种方式中的任何一种;PB0PB7:端口B输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。不能工作于方式二;PC0PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器。端口C可以通过工作方式设定而分成2个4位的端口,每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。不能工作于方式一或二。A1,A0:地址选择线,用来选择8255的PA口,PB口,PC口和控制寄存器。当A1=0,A0=0时,PA口被选择;当A

13、1=0,A0=1时,PB口被选择;当A1=1,A0=0时,PC口被选择;当A1=1,A0=1时,控制寄存器被选择。3.3 多位数码管的工作原理led数码管由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。数码管实际上是由七个发光管组成8字形构成的,加上小数点就是8个。这些段分别由字母a,b,c,d,e,f,g,dp来表示。当数码管特定的段加上电压后,这些特定的段就会发亮,以形成我们眼睛看到的字样了。如:显示一个“2”字,那么应当是a亮b亮g亮e亮d亮f不亮c不亮dp不亮。LED数码管有一般亮和超亮等不同之分,也有0.5寸、1寸等不同的尺寸。

14、小尺寸数码管的显示笔画常用一个发光二极管组成,而大尺寸的数码管由二个或多个发光二极管组成,一般情况下,单个发光二极管的管压降为1.8V左右,电流不超过30mA。发光二极管的阳极连接到一起连接到电源正极的称为共阳数码管,发光二极管的阴极连接到一起连接到电源负极的称为共阴数码管。常用LED数码管显示的数字和字符是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。LED数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据LED数码管的驱动方式的不同,可以分为静态式和动态式两类。静态显示静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单

15、片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要58=40根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。动态显示LED数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,单片机对位选通COM端电路

16、的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。3.4 74LS273芯片简介74LS273是8位数据锁存器。主要用于数码管、按键等等的控制,其真值表如下:表1 74LS273真值表 DNLE

17、OEONHLQ0Z芯片管脚图如下:图1 74LS273引脚图 U2的功能是实现AD0.7的锁存,由于8086CPU的总线是地址/数据复用总线,因此需要在传送地址信号的时候,将数据信号锁存起来,即将数据信号锁存在74273触发器中,待地址传送完毕后再按需要将数据信号输出。3.5系统电路图设计系统总电路图如下图所示:图2 系统总电路图8086最小系统原理图如下所示:图3 8086最小系统原理图8086最小系统由Intel8086微处理器、74273TTL带公共时钟复位八D触发器、以及74154TTL 4线16线译码器等组成。8086有20位地址线,其中高4位A19-A16与状态线S6-S3分时复用

18、,低16位AD15-AD0与数据线分时复用。在总线周期的T1时将地址送出后,就必须用锁存器将它们锁存起来,以便在T2及以后搞死位地址线改为状态输出,低16位地址线该做数据线使用。另外,表明八位数据线是否起作用的数据总线允许信号是与状态线S7分时复用的,故也需要锁存。21条线需采用3片8位地址锁存器,这里采用74273。与外围硬件电路的连接的I/O部分由4线-16线译码器74154组成,用来分配I/O硬件地址。4 系统软件部分设计4.1 定义8255的工作方式MOV DX,KZ_8255 MOV AL,10001011BOUT DX,AL4.2 定义8253的工作方式以及时间分频MOV DX,K

19、Z_8253MOV AL,00110111BMOV DX,DSQ0_8253MOV AL,00HMOV AL,10H4.3 中断服务程序DEC MIAOCMP MIAO,-01DJZ TINGZHIJZHONGDUAN:JMP DISPLAY5 系统仿真过程与结果5.1系统调试将编写好的汇编语言源程序在Tangdu软件中进行汇编、连接生成可执行文件,并将其载入到8086芯片进行仿真。倒计时数码管显示8 如图5-1倒计时8图5-1 倒计时8倒计时数码管显示4 如图5-2倒计时4图5-2倒计时4倒计时结束,数码管显示0,如 图5-3倒计时0图5-3倒计时0通过以上的调试过程和仿真调试结果可知,所设

20、计的电路和所编写的程序满足实验要求。6 结论本次课程设计是要设计一个LED数码管倒计时系统,主要功能如上已有细述。在本次对LED数码管倒计时系统的设计过程中以此来加深对微机接口技术的理解,提高了自己的动手能力。首先着手对硬件电路的设计,本次课程设计主要采用了8255A接口电路。由于对各个芯片不熟悉,通过课本了解到了它们的引脚及功能、工作方式、内部结构和控制字。然后就是对程序的设计,想要设计出一个实用的控制系统需要了解程序流程,先画出了流程图,然后对代码进行编写,在编写过程中遇到了很多问题,对芯片的不了解也导致编程的很多的问题。最后经过一段时间的研究,查阅了很多资料并和同学讨论后终于一一解决。经

21、过为期一个星期的课程设计,我获益颇多。将微机接口技术中的理论与实践相结合起来,对芯片的功能也有了进一步认识理解。最后希望通过以后的学习,不断提升自身各方面的能力,如对专业知识的掌握程度,动手实践能力等。经过此次的课程设计,我们学会了合作。我们要形成自己的设计思想,以便在今后的专业课形成自己的风格。同时在多多锻炼自己的动手能力,以便在以后的工作能独立完成一些设计项目。附件:源程序及其说明AK_8255 EQU 11100000B ;定义A口和控制字端口,高四位决定片选CS0KZ_8255 EQU 11100110BKZ_8253 EQU 11110110B ;定义定时器8253控制字端口,定时器

22、0初值DSQ0_8253 EQU 11110000BDSEG SEGMENT ;自定义数据段PIANYI DW 0000HJIZHI DW 0000HMIAO DB 09DTABLEDU DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHDSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEG ;定义各段分别用哪个寄存器寻址START: MOV AX,DSEG ;初始化 MOV DS,AX CLI ;关中断 ;设置1时间 MOV DX,KZ_8255 ;8255写控制字 MOV AL,10001011B OUT DX,AL ;82

23、55,A口为方式0输出,B、C口暂时不使用为输入 MOV DX,KZ_8253 MOV AL,00110111B ;定时器0,16位读写,方式3,十进制 OUT DX,AL MOV DX,DSQ0_8253 ;分频1000倍 MOV AL,00H MOV AL,10H MOV PIANYI,OFFSET ZHONGDUAN MOV JIZHI,SEG ZHONGDUAN MOV AX,00H ;初始化中断服务函数 MOV ES,AX MOV BX,08H ;中断号02H*4送到BX,NMI非可屏蔽中断号02 MOV AX,PIANYI ;中断服务偏移值给AX MOV ES:BX,AX ;装入偏

24、移地址 MOV AX,JIZHI BX+2,AX ;装入段基址 MOV DX,AK_8255 ;数码管显示初始化 LEA BX,TABLEDU应将TABLE先送至BX寄存器中,然后将待查字节与其在表格中距表首地址位移量送AL,执行XLAT将使 待查内容送到累加器 DISPLAY: MOV AL,MIAO ;把待查表格的一个字节内容送到AL累加器中 XLAT MOV CX,30D ;经过测试,此处调用函数,无法正常显示,所以直接延时 W10MS: LOOP W10MS ;数码管每次赋值的延时 JMP DISPLAY ;程序在此进行死循环 TINGZHI: MOV MIAO,00D JMP JZHONGDUAN ;返回中断函数ZHONGDUAN PROC ;中断服务函数,经过测试,内部使用堆栈进行现场保护和还原现场,会出现无法正常使用的问题 DEC MIAO CMP MIAO,-01D JZ TINGZHI JZHONGDUAN: JMP DISPLAY ;中断返回,经过测试使用IRET会出现无法返回的问题,用跳转指令JMP代替,可正常使用,虽然不规范ZHONGDUAN ENDPCSEG ENDS END START

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1