微机原理电子钟设计汇编语言_第1页
微机原理电子钟设计汇编语言_第2页
微机原理电子钟设计汇编语言_第3页
微机原理电子钟设计汇编语言_第4页
微机原理电子钟设计汇编语言_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、成绩 课程设计报告题 目 可调时电子钟的设计 课 程 名 称 微机原理及应用 院 部 名 称 专 业 工程及其自动化 班 级 工程及其自动化 学 生 姓 名 学 号 课程设计地点 课程设计学时 指 导 教 师 摘 要运用了8086 CPU芯片以及8259A芯片、8253芯片和显示器等辅助硬件电路,进行了可调时电子钟的设计。进行了软件设计并编写了源程序。该电子钟具有时、分、秒计时、显示功能,并且通过定义键盘的字母,可对电子钟进行时分秒时间调整。 关键词:可调时电子钟;8259A;8253;8086微机系统目 录一 、设计任务与要求1二 、总体设计方案与说明1三 、系统硬件部分设计2 3.1 80

2、86微处理器的工作原理2 3.2 8259A芯片的工作原理3 3.3 8253芯片的工作原理4 3.4 LED显示器5 3.5 系统原理图 6四 、系统软件部分设计 7 4.1 系统软件流程图74.2 源程序9五 、系统调试 17六 、课程设计体会 17七 、参考文献 17 17一、设计任务与要求设计一个可调时电子钟,要求:1)给出系统设计方案;画出硬件连线图,并说明工作原理;2)画出程序框图并编写程序完成如下功能:6位七段LED数码管可显示时、分、秒,并按正常时间显示方法工作;二、总体设计方案与说明本实验利用8253做定时器,用定时器输出的脉冲控制8259产生中断。在8259中断处理程序中,

3、对时、分、秒进行计数,在等待中断的循环中用LED显示时间。8253用定时器/计数器1,8253片选接CS4,地址为0C000H。8253时钟源CLK1接分频电路的F/64输出。分频器的FIN接4MHZ时钟。8253的GATE1接VCC。8259中断INT0接8253的OUT1,片选接CS5,地址为0D000H。显示电路的KEY/LED CS 接CS0,地址为08000H。系统工作框图如下:8259A82538086CPU显示电路图1系统框图三、系统硬件部分设计 31、8086微处理器 8086微处理器是16位机,1 6 位微处理器比 8 位微处理器有更大的寻址空间、 更强的运算能力、 更快的处

4、理速 度和更完善的指令系统。1 6 位微处理器比 8 位微处理器有更大的寻址空间、 更强的运算能力、 更快的处理速 度和更完善的指令系统。芯片引脚为40根,20根地址线,16根数据线,其最大的地址空间为1MB。 8086从功能上来说可以分成两个大部分,总线接口单元BIU和执行单元EU。BIU:负责与存储器或I/O接口交换信息,即8086与存储器或I/O接口之间的信息传送,都是由BIU负责进行的,即:(1)BIU从内存的指定部分取出指令,送到指令队列排队。(2)取出执行指令时所需的操作数,送至EU部分。EU:负责指令的执行。特点:将CPU分为两个单元,可以使取指令和执行指令同进行,减少了CPU为

5、取指令而等待的时间,从而提高了CPU的利用率,提高了系统的运行速度。 8086微处理器的引脚功能可分3部分:地址总线、数据总线、控制总线。(1)地址/数据总线AD15-AD0 AD15-AD0:地址/数据复用引脚,双向,三态。 地址/数据总线分时复用。在总线周期开始时(T1),用作地址总线的16位,给出内存单元的地址;其他时间为数据总线,用于数据传输。(2)地址/状态总线A19/S6-A16/S3 A19/S6-A16/S3:地址/状态总线复用引脚,输出,三态。A19-A16:输出访问存储器的20位地址的高4位地址A19-A16。8086的20条地址线访问存储器时可寻址1MB内存单元;访问外部

6、设备时,只用16条地址A15-A0,可寻址64K个I/O端口。图2 8086CPU3.2、8259A芯片的内部结构及引脚中断控制器8259A是Intel公司专为控制优先级中断而设计开发的芯片。它将中断源优先排队、辨别中断源以及提供中断矢量的电路集中于一片中。因此无需附加任何电路,只需对8259A编程,就可以管理8级中断,并选择优先模式和中断请求方式,即中断结构可以由用户编程来设定。在MD微机系统中,8259芯片工作于单片方式。 8259引脚图如图3,各引脚功能如下。D7D0八条双向数据线;WR(低电平有效)写输入信号;RD(低电平有效)读输入信号;CS(低电平有效)片选输入信号;A0地址信号;

7、INT中断请求信号;INTA(低电平有效)中断响应信号;CAS0CAS2级联信号,形成一条专用8259A总线,以便多片8259A的级联;SP/EN从编程/允许级联。在缓冲方式中,可用做输出信号以控制总线缓冲器的接收和发送。在非缓冲方式中,作为输入信号用于表示主片还是从片;IR0IR7外部中断请求输入线。要求输入的中断请求信号是由低电平到高电平的上升沿(并保持高电平到CPU响应时为止)或者是高电平。 8259A中断矢量表中断序号01234567功能调用08H09H0AH0BH0CH0DH0EH0FH矢量地址20H23H24H27H28H2BH2CH2FH30H33H34H37H38H3BH3CH

8、3FH说明时钟键盘可用可用串行口可用可用可用3.3、可编程定时器/计数器82538253的功能用途是:(1)延时中断(2)可编程频率发生器(3)事件计数器(4)二进倍频器(5)实时时钟(6)数字单稳(7)复杂的电机控制器8253有六种工作方式:(1)方式0:计数结束中断(2)方式1:可编程频率发生器(3)方式2:频率发生器(4)方式3:方波频率发生器(5)方式4:软件触发的选通信号(6)方式5:硬件触发的选通信号图4 8253引脚信号图8253引脚图如图3.3示,各引脚功能如下。D7D0八条双向数据线;WR(低电平有效)写输入信号;RD(低电平有效)读输入信号;CS(低电平有效)片选输入信号;

9、A0、A1片内寄存器地址输入信号;CLK计数输入,用于输入定时基准脉冲或计数脉冲;OUT输出信号,以相应的电平指示计数的完成,或输出脉冲波形;GATE选通输入(门控输入),用于启动或禁止计数器的操作,以使计数器和计测对象同步。 8253端口地址表2、8253端口地址信号线寄存器编址IOY20#计数器40H1#计数器41H2#计数器42H控制寄存器43H 3.4、LED显示器LED显示器有静态显示与动态显示两种方式。我们使用的为动态显示 LED动态显示方式。 在多位LED显示时,为了简化电路,降低成本,将所有位的段选线并联在一起,由一个8位I/O口控制,而共阴极点或共阳极点分别由响应的I/O口线

10、控制。显示模块是将显示缓冲区的数值送到LED显示的功能模块,显示缓冲区是由六个字节构成,分别保存小时的高位和低位,分钟的高位和低位,秒钟的高位和低位。硬件上由六个LED构成,软件上由扫描显示的方法实现。35系统原理图 四、系统软件部分设计4.1 系统软件流程图1、主程序流程图设置初始常数置定时器模式及常数启动定时器读取小时值显示数据送缓冲开始转换成显示数据读取分钟值显示数据送缓冲转换成显示数据读取秒值显示数据送缓冲转换成显示数据调用显示子程序主程序框图、100us定时中断服务程序否否否中断入口保护现场是是否10000次计数值减1设置下次10000次计数值秒值加1秒值清0,分钟加1分值清0,小时

11、加1小时值清0恢复现场中断返回计数值为0到60秒到60分钟到24小时100us定时中断服务程序4.2源程序:CONTROL EQU 0C003HCOUNT0 EQU 0C000HCOUNT1 EQU 0C001HCOUNT2 EQU 0C002HMD8255 EQU 82H ; 8255 工作方式PA8255 EQU 8000H ; 8255 PA口输出地址CTL8255 EQU 8003H ; 8255 控制口地址OUTBIT EQU 08002H ; 位控制口OUTSEG EQU 08004H ; 段控制口ICW1 EQU 00010011B ; 单片8259, 上升沿中断, 要写ICW4

12、ICW2 EQU 00100000B ; 中断号为20HICW4 EQU 00000001B ; 工作在8086/88 方式OCW1 EQU 11111110B ; 只响应INT0 中断CS8259A EQU 0D000H ; 8259地址CS8259B EQU 0D001HDATA SEGMENTCNT DB 0LEDBUF DB 6 DUP (?) ; 显示缓冲NUM DB 1 DUP (?) ; 显示的数据DELAYT DB 1 DUP (?)HOUR DB 0MINUTE DB 0SECOND DB 0LEDMAP: ; 八段管显示码 DB 3FH, 06H, 5BH, 4FH, 66

13、H, 6DH, 7DH, 07H DB 7FH, 6FH, 77H, 7CH, 39H, 5EH, 79H, 71HDATA ENDSCODE SEGMENT ASSUME CS:CODE, DS: DATADELAY PROC NEAR PUSH AX ; 延时子程序 PUSH CX MOV AL, 0 MOV CX, AX LOOP $ POP CX POP AX RETDELAY ENDPDISPLAYLED PROC NEAR MOV BX, OFFSET LEDBUF MOV CL, 6 ; 共6个八段管 MOV AH, 00100000B ; 从左边开始显示DLOOP: MOV D

14、X, OUTBIT MOV AL, 0 OUT DX,AL ; 关所有八段管 MOV AL, BX MOV DX, OUTSEG OUT DX, AL MOV DX, OUTBIT MOV AL, AH OUT DX, AL ; 显示一位八段管 PUSH AX MOV AH, 1 CALL DELAY POP AX SHR AH, 1 INC BX DEC CL JNZ DLOOP MOV DX, OUTBIT MOV AL, 0 OUT DX,AL ; 关所有八段管 RETDISPLAYLED ENDPIENTER PROC NEAR PUSH AX PUSH DX INC SECOND M

15、OV AL, SECOND CMP AL, 60 JNE EXIT MOV SECOND, 0 INC MINUTE MOV AL, MINUTE CMP AL, 60 JNE EXIT MOV MINUTE, 0 INC HOUR MOV AL, HOUR CMP AL, 24 JNE EXIT MOV HOUR, 0EXIT: MOV DX, CS8259A MOV AL, 20H ; 中断服务程序结束指令 OUT DX, AL POP DX POP AX IRETIENTER ENDPIINIT PROC MOV DX, CS8259A MOV AL, ICW1 OUT DX, AL M

16、OV DX, CS8259B MOV AL, ICW2 OUT DX, AL MOV AL, ICW4 OUT DX, AL MOV AL, OCW1 OUT DX, AL RETIINIT ENDPSTART PROC NEAR MOV AX, DATA MOV DS, AX MOV HOUR, 0 MOV MINUTE, 0 MOV SECOND, 0 CLI MOV AX, 0 MOV DS, AX MOV AL, 76H; 01110110B ; 计数器1,16位,方式3,二进制 MOV DX, CONTROL OUT DX, AL MOV AX, 62500 MOV DX, COUN

17、T1 OUT DX, AL ; 计数器低字节 MOV AL, AH OUT DX, AL ; 计数器高字节 MOV AL, MD8255 MOV DX, CTL8255 OUT DX, AL MOV BX, 4*ICW2 ; 中断号 MOV AX, CODE SHL AX, 1 ; X 16SHL AX, 1 SHL AX, 1 SHL AX, 1 ADD AX, OFFSET IENTER ; 中断入口地址(段地址为0) MOV BX, AX MOV AX, 0 INC BX INC BX MOV BX, AX ; 代码段地址为0 CALL IINIT MOV AX, DATA MOV DS

18、, AX MOV CNT, 0 ; 计数值初始为0 MOV AL, CNT MOV DX, PA8255 OUT DX, AL STILP: ; 等待中断,并计数。 MOV AL, HOUR MOV AH, 0 MOV CL, 10 DIV CL MOV CH, AH MOV AH, 0 MOV BX, OFFSET LEDMAP ADD BX, AX MOV AL, BX MOV LEDBUF, AL MOV BX, OFFSET LEDMAP MOV AL, CH MOV AH, 0 ADD BX, AX MOV AL, BX OR AL, 80H MOV LEDBUF+1, AL MOV

19、 AL, MINUTE MOV AH, 0 MOV CL, 10 DIV CL MOV CH, AH MOV AH, 0 MOV BX, OFFSET LEDMAP ADD BX, AX MOV AL, BX MOV LEDBUF+2, AL MOV BX, OFFSET LEDMAP MOV AL, CH MOV AH, 0 ADD BX, AX MOV AL, BX OR AL, 80H MOV LEDBUF+3, AL MOV AL, SECOND MOV AH, 0 MOV CL, 10 DIV CL MOV CH, AH MOV AH, 0 MOV BX, OFFSET LEDMAP ADD BX, AX MOV AL, BX MOV LEDBUF+4, AL MOV BX, OFFSET LEDMAP MOV AL, CH MOV AH, 0 ADD BX, AX MOV AL, BX OR AL, 80H MOV LEDBUF+5, AL CALL DISPLAYLED JMP LP

温馨提示

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

评论

0/150

提交评论