您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 微机原理数字钟的设计
目录一、设计要求...............................................................................................................1二、设计目的...............................................................................................................1三、设计的具体实现...................................................................................................11、系统概述.............................................................................................................12、单元电路设计.....................................................................................................22.1、8255初始化:............................................................................................32.2、8253初始化:............................................................................................32.3、8259初始化:............................................................................................43、软件程序设计和调试.........................................................................................53.1、主程序流程图:.........................................................................................53.2、电子时钟中断处理程序流程图:.............................................................63.3、显示模块流程图:.....................................................................................73.4、程序代码:.................................................................................................7四、结论与展望.........................................................................................................14五、心得体会及建议.................................................................................................14六、附录.....................................................................................................................15七、参考文献.............................................................................................................151电子时钟的设计报告一、设计要求利用8259A中断控制器、8253定时/计数器、8255A接口芯片以及键盘和数码显示电路,设计一个电子时钟,由8253中断定时,小键盘控制电子时钟的启停及初始值的预置。电子时钟的显示格式HH:MM:SS由左到右分别为时、分、秒,最大记时59:59:59超过这个时间时分秒位都清零从00:00:00重新开始。1.电子时钟具有二十四小时循环记时功能,走时要准。2.显示格式,时:分:秒。3.利用8253作为定时器。二、设计目的通过本次课程设计学习和掌握计算机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使设计者的设计水平和对所学知识的应用能力以及分析问题解决问题的能力得到全面提高。1.熟练掌握8086/88教学系统的基本操作和调试程序的各种指令。2.掌握8259中断控制器的工作原理和应用编程方法,练习编写中断程序的方法。3.掌握8255的各种工作方式及其应用编程。4.掌握8253定时/计数器的工作原理、工作方式及其应用编程。5.熟悉编程及调试程序的方法。6.练习LED-KEYBOARDUNIT的使用方法和数码管的显示编程方法。三、设计的具体实现1、系统概述基本工作原理:系统设计的电子时钟主要由显示模块、时钟控制模块和时钟运算模块三大部分组成。以8086微处理器作CPU,用8253做定时器产生时钟频率提供一个频率为10kHz的时钟信号,要求每隔10ms完成一次扫描键盘的工作。在写入控制字与计数初值后,每到10ms定时器就启动工作,即当计数器减到1时,输出端OUT0输出一个CLK周期的低电平,向CPU申请中断,当达到100次时,则输出端OUT1输出1s,向CPU申请中断,由8255控制一个数码2管显示,当计数到60s时,则输出端OUT2向CPU申请中断,由另一数码管显示1min,同理由数码管显示1h.CPU处理,使数码管的显示发生变化。本设计由8259A中断控制器、8253定时/计数器、8255A接口芯片、LED数码显示管和两个按键组成。主要用8259A的IRQ7的中断服务程序完成秒、分、时的运算即计时功能,IRQ6的中断服务程序完成调时、调分功能。8253用来产生50ms的脉冲信号作为IRQ7的中断请求信号。按键KK1+和KK2+分别作为IRQ2和IRQ6的中断请求信号。按键KK1+启动/关闭对时功能。它决定是否屏蔽IRQ7和IRQ6中断源。8255A负责将内存里的时位和分位值输出到数码管。电子时钟的显示格式HH:MM:SS由左到右分别为时、分、秒,每百分之一秒对百分之一秒寄存器的内容加一,并依次对秒、分、小时寄存器的内容加一,六个数码管动态显示时、分、秒的当前值。最大记时59:59:59超过这个时间时分秒位都清零从00:00:00重新开始。2、单元电路设计8259A的主要功能:(1)每片8259A可管理8级优先级中断源,通过开关,最多可管理64级优先权的中断源。(2)对任何一个级别的中断源都可单独进行屏蔽,使该级中断请求暂时被挂起,直到取消屏蔽时为止。(3)能向CPU提供可编程的标识码。(4)具有多种中断优先权管理方式。有完全嵌套方式、自动循环方式、特殊循环方式、特殊屏蔽方式和查询方式五种。这些管理方式均可通过程序动态地进行变化。在本设计中用到了这四种功能,电子时钟的灵活调时功能就是通过对级别的屏蔽或开启来实现的。8255A的主要功能:可编程外设接口芯片可由程序改变其功能,通用性强、使用灵活。通过8255A,CPU可直接同外设相连接,其负责CPU和外设之间的数据传送。8253的主要功能:可编程定时器/计数器,其定时与计数功能可由程序灵活地设定,设定后与CPU并行工作,不占用CPU的时间。通道2工作在3方式下,提供计算一秒的中断请求信号。该系统是一个简单的利用8253定时器、8255可并行通信接口和中断控制器8259设计的电子时钟系统,在该系统中设有一个启动键,启动键未按下时,显示初始化界面“HELLO”;3当按下启动键时,8253定时器开始计时(8253的初值为10000,接1MHz的脉冲,即当8253计满100时正好是1S),当计时计满100时,8259便产生一次中断,在LED显示器便显示系统预先设计好的初始值“02.59.55”便开始从秒位开始加1,当加到10S时,10s位加1,加到60S时分位加1,同时秒位清零。该系统主要接口部件有:可并行通信接口8255一片,计数器/定时器8253一片,中断控制器8259一片,七段LED数码管显示器6个以及译码电路等。其中各个部件的初始化如下:2.1、8255初始化:可并行通信接口8255的控制字是方式选择控制字,A口工作在方式0(即基本输入输出方式)下,并且为输出状态,B口工作在方式0下,为输出口,C口为输出口,其初始化为:8255控制口地址为20bhA端口地址为208hB端口地址为209hC端口地址为20ahmovdx,20bhmoval,10000001boutdx,al2.2、8253初始化:做为计数器的计数器/定时器8253,在设置好计数初值(即定时常数)后,便开始减1计数,为0时,输出一个信号;控制字设置:BCD为设置为计数值为二进制格式,模式选择为模式2(即为分频器,当控制字写入后,输出段OUT变为高电平作为初始状态,当计数初值写入初值寄存器后,下一个时钟脉冲时,计数初值被写到计数执行部件,然后计数执行部件做减1计数,减到1时,输出端OUT变为低电平;完成一次计数过程后,输出端OUT又变为高电平,开始一个新的计数过程,由此可以周而复始的进行下去),读写指示位为先写低8位字节,在读写高8位字节,计数器选择计数器0。其中8253的计数初值为10000d,当接1MHZ的脉冲时,分频后的输出值为0.01S。8253的初始化为:8253控制端口地址为203h计数器0端口地址为200hmoval,34hmovdx,203houtdx,al4movdx,200hmovax,10000doutdx,almoval,ahoutdx,al2.3、8259初始化:中断控制器8259的初始化为:ICW1,用来指示ICW1的标志的D4=1,LTIM为0(即中断请求为边沿触发方式),系统只用一片8259,所以SNGL为1,因为初始化程序将用到ICW4,所以,IC4为为1;ICW2设置中断类型码的初始化命令字,必须写到8259的奇地址端口中,ICW2是任选的,而ICW2一旦确定下来,8259的8个中断请求信号输入引脚IR0~IR7所对应的8个中断类型码也确定了;ICW4方式控制初始化命令字,它也要求写入奇地址端口,不过ICW4并不总是需要写入的,只有在ICW1的第0位为1时,才有必要设置ICW4,其中,D7~D5三为总是为0,作为ICW4的标识码,SFNM位为0,BUF位为0,M/S位为0,AEOL位为0,D0为为1表示8259当前所在的系统为16位或32位系统;OCW1中断屏蔽操作命令字,要求写入8259的奇地址端口;moval,13hmovdx,210houtdx,al;ICW1初始化moval,08hmovdx,211houtdx,al;ICW2初始化moval,01houtdx,al;ICW4初始化inal,dxandal,0fehoutdx,al该系统的主要工作原理为:在主程序中,要对各个用到的芯片进行初始化,在对8253进行初始化时,使它用方式2,每10ms产生一次脉冲。在系统总8253的输入时钟频率为1MHZ
本文标题:微机原理数字钟的设计
链接地址:https://www.777doc.com/doc-7827302 .html