电子时钟系统设计正文.doc
- 文档编号:264894
- 上传时间:2022-10-08
- 格式:DOC
- 页数:29
- 大小:360.50KB
电子时钟系统设计正文.doc
《电子时钟系统设计正文.doc》由会员分享,可在线阅读,更多相关《电子时钟系统设计正文.doc(29页珍藏版)》请在冰豆网上搜索。
清华大学课程设计说明书
目录
前言 1
1电子时钟功能介绍 2
2电子时钟系统总体方案设计 3
2.1方案比较 3
2.2方案选择 3
3电子时钟的工作原理 4
3.1实现时钟计时的基本方法 4
3.2电子钟的时间显示 4
3.3电子钟的启、停及时间调整 4
4硬件设计 5
4.1硬件设计电路图 5
4.1.1主电路模块 5
4.1.2LED显示模块 5
4.1.3按键模块 6
4.1.4总体电路图 6
4.2硬件设计所用芯片介绍 6
4.2.18088微处理器 6
4.2.28253芯片的内部结构及引脚 10
4.2.38255A芯片的内部结构及引脚 11
5软件设计 13
5.1电子时钟部分程序流程框图 13
5.1.1主程序流程框图 13
5.1.2键扫子程序流程框图 14
5.1.3中断处理程序流程框图 15
5.2电子时钟总体程序 15
6总结与体会 16
参考文献 17
附录1电子时钟总体电路图 18
附录2电子时钟程序 19
前言
课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识解决实际工程设计和应用问题的能力的重要教学环节,它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一种较好方法。
《微机接口技术》是一门应用性、综合性、实践性较强的课程,没有实际的有针对性的设计环节,学生就不能很好的理解和掌握所学的技术知识,更缺乏解决实际问题的能力。
所以通过有针对性的课程设计,使学生学会系统地综合运用所学的理论知识,提高学生在微机应用方面的开发与设计本领,系统的掌握微机硬软件设计方法。
在日常生活中,时钟随处可见;在微机系统中,时钟更是必不可少的!
时钟反映的是实时性,是日常生活中最普遍最常见的问题。
但时钟的功能是如何实现的呢?
它又是怎样被设计出来的呢?
时钟就是一种对时间进行累计的工具,即计时。
计时的本质就是计数,只不过这里的“数”的单位是时间单位,如果把一小片一小片计时单位累计起来,就可获得一段时间。
因此,使用计数器对时钟脉冲进行计数,就是时钟实现的基本原理;再用LED数码管显示出来,并设计出几个按键用于对时钟进行调整,这样,一个完整的时钟就设计完成了。
本次课程设计要求利用8253定时器设计一个具有时、分、秒显示的电子时钟,并定义一个启动键,当按下该键的时候,时钟从当前的设定值(可以在缓冲区中设置)开始走时。
同时,再定义三个按键,分别对时、分、秒进行校正。
1电子时钟功能介绍
可调整运行的电子钟具有三种工作状态:
“P.”状态、运行状态、调整状态。
(1)“P.”状态:
依靠上电进入,在此状态下,按B、C、D键均无效,按A键有效,进入运行状态;
(2)运行状态:
按奇数次A键进入,在此状态下,按B、C、D键均无效,只有按A键有效,按下A键后,退出运行状态,进入调整状态;
(3)调整状态:
按偶数次A键进入,在此状态下,按A、B、C、D键均有效。
如按下A键,则退出调整状态,进入运行状态;按下B、C、D键,则分别对时、分、秒加1,调整结束后必须按A键,即可退出调整状态,进入运行状态。
基本功能要求:
“P.”稳定地显示在LED显示器的最左端数码管上,无A键按下(在“P.”状态下,按下B、C、D键无效),则不进入电子钟的运行状态,继续显示“P.”。
按下A键后,电子钟从当前的设定值开始走时。
再次按下A键后,电子钟退出运行状态,进入调整状态,利用B、C、D键把电子钟的显示时间修改为当前实时时间,时间修改正确后可再次按下A键,电子钟则退出调整状态,进入运行状态。
2电子时钟系统总体方案设计
2.1方案比较
方案一:
利用AT89S52单片机内部的定时/计数器进行中断定时,配合软件延时实现时、分、秒的计时;AT89S52的P0口和P2口外接LED数码管构成显示器;P1口外接四个按键A、B、C、D构成键盘电路。
如图2-1所示。
图2-1AT89S52单片机设计方案框图
方案二:
以8088微处理器作为CPU,8253做定时计数器产生时钟脉冲,8255A做可编程并行接口,接LED显示时钟和扩展调整按键。
如图2-2所示。
图2-2以8088为CPU设计方案框图
2.2方案选择
就方案一用单片机来设计电子时钟,从主要芯片耗材上来说比方案二要少,但是用单片机来设计电子时钟,需要做的其他模块,如单片机最小系统,相对方案二要复杂很多,而且就程序上的编写来说,方案二也比方案一简单。
再者,设计要求使用8253定时器芯片,若在单片机系统中使用8253就显得有些浪费,因为单片机自身含有定时/计数器。
因此,本设计采用方案二来做。
3电子时钟的工作原理
3.1实现时钟计时的基本方法
利用8253的16位可编程定时/计数器及8086中断系统实现时钟计数。
(1)计数初值计算:
选用8253的定时/计数器1,把定时器设为工作方式2,输入250kHz,输出200Hz,定时时间为5ms,则计数溢出200次即得时钟计时最小单位--秒。
(2)采用中断方式进行溢出次数累计,计满200次为秒计时(1秒);
(3)从秒到分和从分到时的计时是通过累加和数值比较实现。
8253的初始化程序段:
设置8253,t1,方式2,输入250kHz,输出200Hz。
mov dx,233h
mov al,74h
out dx,al
mov dx,231h
mov ax,1250
out dx,al
mov al,ah
out dx,al
3.2电子钟的时间显示
电子钟的时钟时间在六位数码管上进行显示,因此,在内部RAM中设置显示缓冲区共6个单元。
3.3电子钟的启、停及时间调整
电子钟设置4个按键通过程序控制来完成电子钟的启、停及时间调整。
A键控制电子钟的启、停;
B键调整时;
C键调整分;
D键调整秒。
4硬件设计
4.1硬件设计电路图
4.1.1主电路模块
主电路模块由8088、8253、8255A构成,电路如图4-1所示。
图4-1主电路模块电路图
4.1.2LED显示模块
显示部分由6个LED组成,用8255A的A口作LED的段码输出口,B口作六个LED数码管的位控输出线。
电路如图4-2。
图4-2显示模块电路图
4.1.3按键模块
四个按键A、B、C、D,分别完成各自功能,由8255A的C口控制。
电路如图4-3。
图4-3按键模块电路
4.1.4总体电路图
总体电路图见附录1。
4.2硬件设计所用芯片介绍
4.2.18088微处理器
8088微处理器是Intel公司推出的一个准16位处理器,其内部结构基本上和8086相同,其引脚信号也和8086基本相同,只是各别的引脚的功能有所不同。
8088微处理器的工作方式:
(1)最小工作方式。
当8088CPU的MN/MX引脚接+5V电源时,8088CPU工作于最小方式,用于构成小型的单处理机系统。
(2)最大工作方式。
当8088CPU的MN/MX引脚接地时,8088CPU工作于最大方式,用于构成多处理机和协处理机系统。
8088引脚图以及功能说明:
图4-48088引脚图
AD7~AD0——八条地址/数据复用线;
A15~A8——单一的地址线;
SS0——状态信号线。
该引脚在最大工作方式下保持高电平,在最小方式下等效于最大方式下S0的作用,它与IO/M、DT/R组合以确定当前的总线周期;
A19/S6~A16/S3——地址/状态总线;
MN/MX——最小/最大方式控制;
RD——读控制;
TEST——等待测试控制;
READY——等待状态控制;
NMI——不可屏蔽中断请求;
INTR——可屏蔽中断请求;
CLK——系统时钟;
Vcc——+5V电源;
GND——接地;
最小方式信号:
HOLD——保持请求;
HLDA——保持响应;
WR——写控制;
IO/M——IO/存储器控制;
DT/R——数据发送/接收;
DEN——数据允许;
ALE——地址锁存允许;
INTA——中断响应;
最大方式信号:
RQ/GT1,0——请求/允许总线访问控制;
LOCK——总线优先权锁定控制
S2S1S0——总线周期状态;
QS1、QS0——指令队列状态;
(3)8086/8088CPU的功能结构
a、数据寄存器
AX、BX、CX、DX主要用以存放16位数据信息。
AH、AL、BH、BL、CH、CL、DH、DL主要用以存放8位数据信息。
[注]8位数据寄存器是从16位数据寄存器中分解开的,如AX―>AH、AL,反之AH、AL->AX。
注意它们的对应关系。
b、指针和变址寄存器
SP堆栈指针寄存器,其内容为16位偏移地址,用以指向堆栈当前栈顶的位置。
BP基址指针寄存器,其内容为16位地址,作为访问堆栈存储单元的偏移地址。
SI源变址寄存器,其内容为16位地址,作为访问数据单元的偏移地址。
DI目的变址寄存器,其内容为16位地址,作为访问数据单元的偏移地址。
[注]上述4个16位寄存器一般情况下,其内容均为地址信息,用以表示一个存储单元的偏移地址。
但也具有通用性,可以作为数据寄存器来使用;SI和DI二者在使用中通常是没有什么区别的,仅在串操作指令中有区别。
c、段寄存器
CS代码段寄存器均用以存放16位段地址
DS数据段寄存器
ES附加段寄存器
SS堆栈段寄存器
d、指令指针寄存器(IP)
IP用以存放一个16位的代码段(程序段)的偏移地址,它与CS的内容合并可以形成一个20位的物理地址,专门用来指向当前要执行的指令单元的位置。
e、标志寄存器F
标志寄存器F又称程序状态字寄存器PSW,是用以记录或存放状态标志和控制标志信息的。
①状态标志位(ZF、SF、PF、OF、CF、AF):
用以记录当前运算结果的状态信息。
ZF(零标志位)若当前运算结果为0,则ZF=1;若当前运算结果为1,则ZF=0。
SF(符号标志位)若当前运算结果为负数,则SF=1;若当前运算结果为正数,则SF=0。
PF(奇偶标志位)若当前运算结果为奇数个"1",PF=0;若当前运算结果为偶数个"1",则PF=1。
OF(溢出标志位)若当前运算结果产生溢出,则OF=1;反之,OF=0。
CF(进位标志位)若当前运算出现进位或借位,则CF=1;反之,CF=0。
AF(辅助标志位)若当前运算出现第3位向第4位进位或借位,则AF=1;反之,AF=0。
[注]
(1)状态标志位的设置一般是由CPU根据当前程序运行结果的状态自动完成的。
(2)状态标志位信息一般用作后续条件转移指令的转移控制条件。
②控制标志位(TF、IF、DF):
用以存放控制CPU工作方式的标志信息。
TF(跟踪标志位)当TF=1时,CPU每执行完一条指令就产生一个内部中断,处于暂停状态;当TF=0时,CPU处于正常工作状态。
IF(中断允许标志位)当IF=1时,允许CPU响应外部中断INTR的请求;当IF=0时,不允许CPU响应外部中断请求。
D
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子 时钟 系统 设计 正文