微机原理与接口技术课程设计简单电子时钟设计.doc

上传人:仙人指路1688 文档编号:2882063 上传时间:2023-03-01 格式:DOC 页数:27 大小:2.33MB
返回 下载 相关 举报
微机原理与接口技术课程设计简单电子时钟设计.doc_第1页
第1页 / 共27页
微机原理与接口技术课程设计简单电子时钟设计.doc_第2页
第2页 / 共27页
微机原理与接口技术课程设计简单电子时钟设计.doc_第3页
第3页 / 共27页
微机原理与接口技术课程设计简单电子时钟设计.doc_第4页
第4页 / 共27页
微机原理与接口技术课程设计简单电子时钟设计.doc_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《微机原理与接口技术课程设计简单电子时钟设计.doc》由会员分享,可在线阅读,更多相关《微机原理与接口技术课程设计简单电子时钟设计.doc(27页珍藏版)》请在三一办公上搜索。

1、微机原理与接口技术课程设计报告书题目:简单电子时钟设计姓名:学号:P081512961 P081512970 P081512989 P081512960 P081512980班级:2008级计算机科学与技术1班指导教师: 设计时间:2011年3月 7月西北民族大学数学与计算机学院目 录1.引言21.1.背景和编写目的21.2.设计思想与原理21.3.术语与缩写32.系统组成33.硬件设计44.软件编程135.系统调试166.总结167.附录161. 引言1.1背景和编写目的本次课程设计主要利用8253定时器设计一个具有时、分、秒显示的电子时钟,并定义一个启动键,当按下该键的时候,时钟从当前的设

2、定值(可以在缓冲区中设置)开始走。同时,再定义三个按键,分别对时、分、秒进行校正。通过本次课程设计我们应掌握8279、8259、8253等芯片的使用方法和编程方法,进一步理解所学的相关芯片的原理、内部结构、使用方法等,学会相关芯片实际应用及编程。1.2设计思想与原理1.2.1设计思想在本系统设计的电子时钟以8088微处理器作为CPU,用8253做定时计数器产生时钟频率,8279做可编程并行接口显示时钟和键盘电路,8259做中断控制器产生中断。在此系统中,8253的功能是定时,接入8253的CLK信号为周期性时钟信号。8253采用计数器0,工作于方式2,使8253的OUT0端输出周期性的负脉冲信

3、号。即每隔20ms,8253的OUT0端就会输出一个负脉冲的信号,此信号接8259的IR2,当中断到50次数后,CPU即处理,使液晶显示器上的时间发生变化。其中8259只需初始化ICW1,其功能是向8259表明IRx输入是电瓶触发方式还是上升沿触发方式,是单片8259还是多片8259。8259接收到信号后,产生中断信号送CPU处理。1.2 .2工作原理利用定时器8253和8259以及键盘和数码显示电路,设计一个电子时钟,由8253中断定时,小键盘控制电子时钟的启停及初始值的预置。电子时钟的显示格式HH:MM:SS由左到右分别为时、分、秒,最大记时59:59:59超过这个时间时分秒位都清零从00

4、:00:00重新开始。设计一个定时显示装置,用六个数码管显示时间,用小键盘控制计时,设置和显示时间。系统一运行就从00点00分00秒开始计时,并在数码管上显示时、分、秒当前值,而且,可以用键盘设置当前时间。基本工作原理:每百分之一秒对百分之一秒寄存器的内容加一,并依次对秒、分、小时寄存器的内容加一;六个数码管动态显示时、分、秒的当前值。C键:置初值,显示00:00:00G键:显示动态变化(启动表);D键:显示静态不变(表停止);E键:终止程序,返回DOS;P键:设置时:分:秒的值1.3 术语与缩写 可编程并行芯片8279 定时/计数器8253 中断控制器8259七段数码显示管 延时 计数 比较

5、 定时 中断2. 系统组成程序由以下模块组成:系统共有5个功能模块,分别为,主控模块,显示模块,定时模块,中断模块,小键盘模块。系统总体框图如下:键盘读入的数显示缓冲的值秒脉冲显示模块主控模块中断模块定时模块小键盘模块六个LED小键盘8279825382593. 硬件设计3.1 设计所用芯片结构简介3.1.1、8259A芯片的内部结构及引脚中断控制器8259A是Intel公司专为控制优先级中断而设计开发的芯片。它将中断源优先排队、辨别中断源以及提供中断矢量的电路集中于一片中。因此无需附加任何电路,只需对8259A编程,就可以管理8级中断,并选择优先模式和中断请求方式,即中断结构可以由用户编程来

6、设定。8259引脚图如图3.1.1,各引脚功能如下8259引脚图如图3.3,各引脚功能如下。D7D0八条双向数据线;WR(低电平有效)写输入信号;RD(低电平有效)读输入信号;CS(低电平有效)片选输入信号;A0地址信号;INT中断请求信号;INTA(低电平有效)中断响应信号;CAS0CAS2级联信号,形成一条专用8259A总线,以便多片8259A的级联;SP/EN从编程/允许级联。在缓冲方式中,可用做输出信号以控制总线缓冲器的接收和发送。在非缓冲方式中,作为输入信号用于表示主片还是从片;IR0IR7外部中断请求输入线。要求输入的中断请求信号是由低电平到高电平的上升沿(并保持高电平到CPU响应

7、时为止)或者是高电平。8259中断矢量地址与中断信号之间的关系如表3.1.1所示: 表3.1.1 8259中断矢量表中断序号01234567功能调用08H09H0AH0BH0CH0DH0EH0FH矢量地址20H23H24H27H28H2BH2CH2FH30H33H34H37H38H3BH3CH3FH说明时钟键盘可用可用串行口可用可用可用3.1.2、8279芯片的内部结构及引脚Intel8279是一种通用的可编程序的键盘、显示接口器件,单片器件就能够完成键盘输入和显示控制两种功能。 键盘部分提供一种扫描的工作方式,可以和具有64个按键的矩阵键盘相连接,能对键盘不断扫描,自动消抖,自动识别按下的键

8、并给出编码,能对双键或n键同时按下实行保护。 显示部分为发光二极管、荧光管及其它显示器提供了按扫描方式工作的显示接口,它为显示器提供多路复用信号,可以显示多达16位的字符或数字。DB0DB7:双向数据总线,用来传送8279与CPU之间的数据和命令。 CLK:时钟输入线,用以产生内部定时的时钟脉冲。 RESET:复位输入线,8279复位后被置为字符显示左端输入,二键闭锁的触点回弹型式,程序时钟前置分频器被置为31,RESET信号为高电平有效。 CS:片选输入线,低电平有效,单片机在CS端为低时可以对8279读/写操作。 A0:缓冲器低位地址,当A0为高电平时,表示数据总线上为命令或状态,当为低电

9、平时,表示数据总线上为命令或状态,当为低电平时,表示数据总线上为数据。 RD:读信号输入线,低电平有效,将缓冲器读出,数据送往外部总线。 WR:写信号输入线,低电平有效,将缓立器读出,将数据从外部数据总线写入8279的缓冲器。3.1.3 8253芯片的内部结构及引脚8253可编程定时/计数器是Intel公司生产的通用外围芯片之一,有3个独立的十六位计数器,技术频率范围为02MHZ,它所有的技术方式和操作方式都通过编程控制。8253的功能用途是:(1)延时中断(2)可编程频率发生器(3)事件计数器(4)二进倍频器(5)实时时钟(6)数字单稳(7)复杂的电机控制器8253有六种工作方式:(1)方式

10、0:计数结束中断(2)方式1:可编程频率发生器(3)方式2:频率发生器(4)方式3:方波频率发生器(5)方式4:软件触发的选通信号(6)方式5:硬件触发的选通信号8253引脚图如图3.3示,各引脚功能如下。D7D0八条双向数据线;WR(低电平有效)写输入信号;RD(低电平有效)读输入信号;CS(低电平有效)片选输入信号;A0、A1片内寄存器地址输入信号;CLK计数输入,用于输入定时基准脉冲或计数脉冲;OUT输出信号,以相应的电平指示计数的完成,或输出脉冲波形;GATE选通输入(门控输入),用于启动或禁止计数器的操作,以使计数器和计测对象同步。 8253端口地址的端口地址如表3.1.3所示表3.

11、1.3 8253端口地址表信号线寄存器编址IOY20#计数器40H1#计数器41H2#计数器42H控制寄存器43H3.2分模块介绍3.2.1主控模块 主控模块是系的核心模块,对8253、8279进行初始化,设置中断向量,扫描键盘根据按键值作相应的处理。主要由软件实现。它的主要功能是调用其它模块对系统工作进行协调,它的主要功能是读小键盘输入键值并执行要做的工作,如果键值为C则将显示初始值00:00:00置入显示缓冲,并调用显示模块显示。如果键值为G则开中断,(中断程序为秒最低位加一)。如果键值为D则关中断,停止动态显示。如键值为P则连续六次调用小键盘模块,将键值依次存入显示缓冲。并调用显示模块显

12、示。如果健值为E,则终止程序,返回DOS。3.2.2定时模块定时模块是为8259提供中断请求信号的。由一片8253实现,选用定时器0#,工作在方式3,由于时钟应该1秒走动一次,所以输出值应为1S,其输出信号可作为8259的中断请求信号。定时模块原理图如图3.2.2所示图3.2.23.2.3中断处理模块中断模块实现动态显示的,硬件为一片8259,由于中断请求信号为每秒一次,中断程序该为时间按秒增加,并显示,只要开中断,便可实现每秒显示时间增加一秒,从而达到动态显示的效果。 中断模块原理图如图3.2.3所示3.2.4显示模块和小键盘模块显示模块是将显示缓冲区的数值送到LED显示的功能模块,显示缓冲

13、区是由六个字节构成,分别保存小时的高位和低位,分钟的高位和低位,秒钟的高位和低位。硬件上由六个LED构成,软件上由扫描显示的方法实现。小键盘模块送入主控模块的子功能模块。由软件和硬件实现,硬件上由小键盘和8279互连,将小键值由8279送入主控模块。软件上使用行扫描法获得键值并送回主控模块。本课题只考虑去抖动。执行一个约10ms的延时程序后再扫描键盘,若F0=1表示真正有键按下,从而消除了抖动影响。其中8279接口电路如图3.2.4所示图3.2.3中断模块原理图显示模块原理图如下图所示键盘部分原理图4. 软件编程4.1主程序流程图4.2定时中断服务程序流程图:保护现场秒单元+1N秒单元=60?

14、秒单元清零,分单元+1分单元清零,小时单元+1分单元=60?时单元=24?小时单元=0显示时分秒恢复现场中断返回NNYYY5. 系统仿真调试 将编写好的源程序输入,编译后出现很多错误,只能部分修改正确,因此导致编译无法通过,无法生成.exe文件,同时也就不能加载到仿真软件中,致使无法仿真。6. 总结本次课程设计做的是电子时钟设计,本以为设计思路清楚,设计会简单,可是经过两周的时间,发现选择了一个相对比较难的题目,最终也没有将其完全设计出来,比较遗憾。 这个题目有几个难处,一,是汇编语言与微机原理的相结合部分比较难,导致部分代码不能正确写出:二,对实验箱了解不充分,设计起来对具体端口不理解。三,

15、本次设计的大多数题目都能在网上找到可以借鉴的程序,而我们的虽然找到了,但是遇到了相当不擅长的端口问题,暴漏了平常学习的缺漏。四,总结,中断,计数,以及端口等的知识在学习中没有能够很好的学习,遇到具体细节问题时,解决不了,不过确实对微机原理的相关知识很有收获。7. 附录7.1参考文献1、马义德,张在峰,徐光柱,杜桂芳.微型计算机技术及应用(第3版).高等教育出版社,20072、周明德编著.微型计算机系统原理及应用(第四版).北京:清华大学出版社,20023、 李顺增,吴国东,赵河明等.微机原理及接口技术.北京:机械工业出版社,20064、杨立新.微型计算机原理和应用M.北京:科学技术文献出版社,

16、1986.11 5、李大友.微型计算机原理M.北京:清华大学出版社,1998.76、眭碧霞.微型计算机原理与组成M.人民邮电出版社,2003.8 7、阎石 主编.数字电子技术基础.高等教育出版社7.2总体原理图7.3 源程序清单D8279 equ 200HC8279 equ 202HC8253 equ 20bHD82530 equ 208HD82531 equ 209HC82590 equ 210HC82591 equ 211Hdata segmentHOUR db 00MINUTE db 00STAT db 00LED db 3fH,06H,5bH,4fH,66H,6dH,7dH,27H,7

17、fH,6fH,00H,00HDISBUF db 8 dup(0)data endsstack segment stack dw 100 dup(?)stack endscode segment assume cs:code,ds:datastart:MOV AX,DATA MOV DS,AX;=INIT 8259= CLI MOV AL,13H MOV DX,C82590 OUT DX,AL MOV AL,8 MOV DX,C82591 OUT DX,AL MOV AL,1 OUT DX,AL MOV AX,0 MOV ES,AX LEA AX,INT0 MOV ES:4*8,AX MOV A

18、X,CS MOV ES:4*8+2,AX;=INIT 8253= MOV DX,C8253 MOV AL,36H OUT DX,AL MOV DX,D82530 MOV AX,10000 OUT DX,AL MOV AL,AH OUT DX,AL MOV DX,C8253 MOV AL,36H OUT DX,AL MOV DX,D82531 MOV AX,100 OUT DX,AL MOV AL,AH OUT DX,AL;=INIT 8279= MOV DX,C8279 MOV AL,00H OUT DX,AL MOV AL,34H OUT DX,AL MOV AL,0D2H OUT DX,A

19、L MOV STAT,0 MOV DX,C82591 MOV AL,0FEH OUT DX,AL;=WAIT1:MOV DX,C8279 IN AL,DX MOV AH,AL AND AL,80H JNE WAIT1 MOV AL,AH AND AL,0FH CMP AL,00H JE WAIT1 MOV AL,40H OUT DX,ALCHK: MOV DX,D8279 IN AL,DX CMP AL,33H JNE BBB MOV DX,C82591 MOV AL,0FFH OUT DX,AL MOV AL,STAT INC AL MOV STAT,AL CMP AL,1 JNZ AA1

20、MOV SI,OFFSET DISBUF MOV CX,4 MOV AL,00BB0: MOV SI,AL INC SI LOOP BB0 CALL DISP JMP CHK;=AA1: MP AL,2 JNZ AA2 MOV SI,OFFSET DISBUF MOV AL,00 MOV SI,AL INC SI MOV SI,AL ADD SI,2 MOV SI,AL INC SI MOV SI,AL CALL DISP JMP CHK;=AA2: MP AL,3 JNZ AA3 MOV SI,OFFSET DISBUF+2 MOV CX,4 MOV AL,00BB1: MOV SI,AL

21、INC SI LOOP BB1 CALL DISP JMP CHK;=AA3: MOV STAT,00 MOV AL,0FEH MOV DX,C82591 OUT DX,AL CALL FULLSFM CALL DISP JMP CHK;=BBB: CMP AL,3BH JE BB0 JMP CCCBB0: MOV AL,STAT CMP AL,1 JNZ BBB1 MOV AL,HOUR ADD AL,1 DAA MOV HOUR,AL CALL FULLSHI CALL DISP JMP BBB;=BBB1: MOV AL,STAT CMP AL,2 JNZ BBB3 MOV AL,MIN

22、UTE ADD AL,1 DAA MOV MINUTE,AL CALL FULLFEN CALL DISP JMP BBB;=BBB3: MOV AL,STAT CMP AL,3 JZ BBB4 JMP DDDBBB4: MOV AL,SECOND ADD AL,1 DAA MOV SECOND,AL CALL FULLMIAO CALL DISP JMP BBB;= CCC: CMP AL,3AH JE CC0 JMP DDDCC0: MOV AL,STAT CMP AL,1 JNZ CCC1 MOV AL,HOUR SUB AL,1 DAS MOV AL,HOUR SUB AL,1 DAS

23、 MOV HOUR,AL CALL FULLSH1 CALL DISP JMP CCCCCC1: MOV AL,STAT CMP AL,2 JNZ CCC3 MOV AL,MINUTE SUB AL,1 DAS MOV MINUTE,AL CALL FULLFEN CALL DISP JMP CCC CCC3: MOV AL,STAT CMP AL,3 JZ CCC4 JMP DDDCCC4: MOV AL,SECOND SUB AL,1 DAS MOV SECOND,AL CALL FULLMIAO CALL DISP JMP CCCDDD: MOV STAT,0 MOV AL,0FFH M

24、OV DX,C82591 OUT DX,AL CALL FULLSFM CALL DISP JMP CHKINT0: PUSH AX PUSH BX PUSH DI PUSH SI MOV AL,SECOND ADD AL,1 DAA MOV SECOND,AL CMP AL,60H JNZ FANHUI MOV SECOND,0 MOV AL,MINUTE ADD AL,1 DAA MOV MINUTE,AL CMP AL,60H JNZ FANHUI MOV MINUTE,0 MOV AL,HOUR ADD AL,1 DAA MOV HOUR,AL CMP AL,24H JNZ FANHU

25、I MOV HOUR,0 CALL FULLSFM CALL DISP POP SI POP DI POP BX POP AX IRETFULL SFM PROC NEAR LEA DI,DISBUF LEA BX,LED LEA SI,SECOND MOV CX,3AA4: MOV AL,SI AND AL,0FH XLAT MOV DI,AL INC DI MOV AL,SI PUSH CX MOV CL,4 SHR AL,CL AND AL,0FH XLAT MOV DI,AL INC DI POP CX INC SI LOOP AA4 RETFULL SFM ENDPFULL SHI

26、PROC NEAR LEA SI,DISBUF MOV AL,0 MOV CX,4CCC0: MOV SI,AL INC SI LOOP CCC0 LEA BX,LED MOV AL,HOUR AND AL,0FH XLAT MOV SI,AL XLAT MOV SI,AL MOV AL,HOUR MOV CL,4 SHR AL,CL AND AL,0FH XLAT INC SI MOV SI,AL RETFULL SHI ENDPFULL FEN PROC NEAR LEA SI,DISBUF MOV AL,0 MOV SI,AL INC SI MOV SI,AL INC SI LEA BX

27、,LED MOV AL,MINUTE AND AL,0FH XLAT MOV SI,AL MOV AL,MINUTE MOV CL,4 SHR AL,CL AND AL,0FH XLAT INC SI MOV SI,AL RETFULL FEN ENDPFULL MIAO PROC NEAR LEA SI,DISBUF LEA BX,LED MOV AL,SECOND AND AL,0FH XLAT MOV SI,AL MOV AL,SECOND MOV CL,4 SHR AL,CL AND AL,0FH XLAT INC SI MOV SI,AL MOV AL,0 INC SI MOV SI,AL INC SI MOV SI,AL INC SI MOV SI,AL INC SI MOV SI,AL RETFULL MIAO ENDPDISP PROC NEAR MOV CX,8 MOV DX,D8279 LEA SI,DISBUFDISI MOV AL,SI OUT DX,AL INC SI LOOP DISI RETCODE ENDS END START

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号