




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
青 岛 农 业 大 学理学与信息科学学院微 机 接 口 课 程 设 计 报 告设 计 题 目 电子时钟的设计 学生专业班级 计算机科学与技术1002 学生姓名(学号) 张守阳 (20102973) 设计小组其他同学姓名(学号) 邵晨钰 邵恺 指 导 教 师 李韶静 完 成 时 间 2013年6月17日 实 习(设计)地点 信息楼526 2013年6月17日电子时钟的设计一、课程设计目的和任务利用8253定时器、8259、8255设计一个具有时、分、秒显示的电子时钟,在LED上进行时、分、秒显示,并定义一个启动键,当按下该键时时钟从当前设定值(可在显示缓冲区中预置)开始走时;定义一个设置键,可以通过对设置键的操作实现对时功能。设计电路并在实验箱上连接线路同时编程实现其功能。二、分析与设计 时钟就是对时间进行累计的工具,即计时。计时的本质就是计数,只不过这里的数的单位是时间单位,如果把一小片一小片的计时单位累计起来,就可获得一段时间。因此使用计数器对脉冲进行计数,就是时钟实现的计本原理;再用LED数码管显示出来,并设计出一个启动键对时钟进行调整,这样,一个完整的时钟就设计完成了。1设计任务分析与论证:(一)主要分三个模块:(1) 显示模块利用数码管的显示功能来设计。数码管是由八个条形发光二极管组成的,这些发光二极管的阴极是互相连接在一起的,所以称为共阴极数码管。通过在这八个发光二极管的阳极加+5 V或0 V的电压使不同的二极管发光,形成不同的字符和数字。电子时钟用到的是0到9十个数字,他们所对应的字符表依次是3FH、06H、5BH、4FH、66H、6DH、7DH、07H、7FH、6FH。该模块主要是将时钟运算模块和对时模块运算出来并存放在内存单元里的十六进制表示的时位和分位数据转化为十进制,并通过四个数码管显示出来。该模块实现的硬件是TND86/88的LED-KEYBOARD UNIT。(2) 时钟运算模块该模块的主要功能是对时、分、秒的运算,并把运算出的最终结果存到事先已经开辟的内存单元里,以便显示模块即时地显示出来。该模块可以细分为秒定时模块和运算模块。秒定时模块负责提供中断信号,由于CPU运算模块中的指令消耗一定的时间,所以中断信号最好通过硬件来实现,可以选择TND86/88实验箱中的8253定时/计数器来提供,但又因为8253所能提供的信号的周期时毫秒级的,因此必须通过软件的方法在运算模块中设置一个统计中断次数的变量,并且这一变量必须事先在内存里开辟存储单元。中断信号是8253的通道2工作方式为方式3时,产生一个40ms的脉冲信号。运算模块负责时、分、秒的计算,该模块主要通过8259的IRQ7号中断来实现,首先将秒定时模块提供的中断信号为8259的IRQ7中断请求信号。但由于每40ms一次中断请求。所以在中断服务程序必须利用已申请内存单元count来统计中断请求的次数,只有当count的值为25时,才能让秒单元内的数值加1。另外,在中断服务程序里,必须对秒、分和时的单元内的数值进行判断,当秒加到60时,分必须加1 、秒清零;当分加到60时,时加1、分清零。当时加到24时,直接清零。(3) 对时模块该模块主要功能是修改时、分内存单元的数值。在对时的时候,秒和分都应停止不变,并且在对分进行调整的时,时和秒单元内的数值都保持不变。由以上分析可见,对时、分的调整用两个优先级高于IRQ7的中断来完成。因此,可以用8259的IRQ2中断来实现,两个中断源的中断请求信号只需直接接在两个按键即可起到对时作用。(二)所用到的各芯片的功能:8259A的主要功能:(1)每片8259A可管理8级优先级中断源,通过开关,最多可管理64级优先权的中断源。(2)对任何一个级别的中断源都可单独进行屏蔽,使该级中断请求暂时被挂起,直到取消屏蔽时为止。(3)能向CPU提供可编程的标识码。(4)具有多种中断优先权管理方式。有完全嵌套方式、自动循环方式、特殊循环方式、特殊屏蔽方式和查询方式五种。这些管理方式均可通过程序动态地进行变化。在本设计中用到了这四种功能,电子时钟的灵活调时功能就是通过对级别的屏蔽或开启来实现的。8255A的主要功能:可编程外设接口芯片可由程序改变其功能,通用性强、使用灵活。通过8255A,CPU可直接同外设相连接,其负责CPU和外设之间的数据传送。8253的主要功能:可编程定时器/计数器,其定时与计数功能可由程序灵活地设定,设定后与CPU并行工作,不占用CPU的时间。通道2工作在3方式下,提供计算一秒的中断请求信号。 2、硬件设计:3程序流程图:YesNoNoNoNoYes中断服务程序IRQ7YesYesIRQ7中断COUNT=25?S=S+1COUNT=0S=60?M=M+1S=0M=60?H=H+1M=0H=24?H=0IRETCOUNT=COUNT+1 程序框图:显示模块程序图 时、分转化为十进制,存到内存单元中计算时、分的各位数值在TABLE中对应编码结束开始依次在61H段输出到LED显示 OFF=1?IRETOFF=0 屏蔽IRQ6中断,开IRQ2和IRQ7中断OFF=3?中断服务程序IRQ2IRQ2中断OFF=OFF+1OFF=2?NoNoNoYesOFF=0 屏蔽IRQ7中断,开IRQ2和IRQ6中断YesYes YesYesIRQ6中断M=M+1M=60?M=0IRET中断服务程序IRQ6OFF=1?NoOFF=2?H=H+1H=24?YesH=0YesNoNoNo四、各个芯片的初始化过程:1、 初始化8255可并行通信接口8255的控制字是方式选择控制字,控制端口地址为81H,A口工作在方式0(即基本输入输出方式)下,并且为输出状态,B口工作在方式0下,为输出口,C口为输出口,其初始化为:MOV AL, 81HOUT 63H, AL MOV AX, 0000H2、 初始化8253做为计数器的计数器/定时器8253,在设置好计数初值(即定时常数)后,便开始减1计数,为0时,输出一个信号;模式选择为模式3(即方波发生器),读写指示位为先写低8位字节,在读写高8位字节,计数器选择计数器0。其中8253的计数初值为0B68H,当接1.20MHZ的脉冲时,计数周期为40mS。8253的初始化为:MOV AL, 0B6H OUT 43H, AL MOV AL, 68H OUT 42H, AL MOV AL, 0BAH3、初始化 8259开7号和2号中断,7号终端控制秒的数值加一,当计数25次,即有一秒时间后,IQ7产生一次中断,秒加一;当要对时时,按下k2键产生IQ2中断。初始化过程:MOV AL, 7BH OUT 21H, AL初始化向量中断表:MOV AX, OFFSET IRQ2 ADD AX,2000H MOV SI, 0028H MOV SI, AX MOV AX, 0000H MOV SI, 002AH MOV SI, AX MOV AX, OFFSET IRQ6 ADD AX, 2000H MOV SI, 0038H MOV SI, AX MOV AX, 0000H MOV SI, 003AH MOV SI, AX MOV AX, OFFSET IRQ7 ADD AX, 2000H MOV SI, 003CH MOV SI, AX MOV AX, 0000H MOV SI, 003EH MOV SI, AX五、程序源代码如下:STACK SEGMENT STACK DW 64 DUP(?) STACK ENDSDATA SEGMENT H DW 000CH M DW 0000H S DW 0000HCOUNT DW 0000HOFF DW 0000HTABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHDATA ENDSCODE SEGMENT ASSUME CS:CODE, DS:DATASTART: MOV AX, DATAMOV DS, AX PUSH DS*;初始化8255 MOV AL, 81HOUT 63H, AL *;初始化向量中断表 MOV AX, 0000H MOV DS, AX MOV AX, OFFSET IRQ2 ADD AX,2000H MOV SI, 0028H MOV SI, AX MOV AX, 0000H MOV SI, 002AH MOV SI, AX MOV AX, OFFSET IRQ6 ADD AX, 2000H MOV SI, 0038H MOV SI, AX MOV AX, 0000H MOV SI, 003AH MOV SI, AX MOV AX, OFFSET IRQ7 ADD AX, 2000H MOV SI, 003CH MOV SI, AX MOV AX, 0000H MOV SI, 003EH MOV SI, AX*;初始化8253 MOV AL, 0B6H OUT 43H, AL MOV AL, 68H OUT 42H, AL MOV AL, 0BAH OUT 42H, AL POP DS*;初始化8259 MOV AL, 7BH OUT 21H, ALBEGIN: CALL DIS STI ;中断标志置为1 JMP BEGIN;7号中断的处理程序,当count计数到25时,秒的值加一IRQ7: INC COUNT CMP COUNT, 25 JNZ RETURN MOV AX, 0 MOV COUNT, AX MOV AX, S INC AX MOV S, AX CMP AX, 003CH JNZ RETURN MOV AX, 0 MOV S, AX MOV BX, M INC BX MOV M, BX CMP BX, 003CH JNZ RETURN MOV BX, 0 MOV M, BX MOV DX, H INC DX MOV H, DX CMP DX, 0018H JNZ RETURN MOV DX, 0 MOV H, DX*RETURN: MOV AL, 7BH ;开中断 OUT 21H, AL MOV AL, 20H OUT 20H, AL IRET ;中断返回;只有产生IQ2中断时,IQ6中断才会打开,通过OFF的值判断是对时还是对分的调整IRQ6: MOV AX, OFF CMP AX, 0001H JNZ HR MOV BX, M INC BX MOV M, BX CMP BX, 003CH ;分钟的值满60 就清零 JNZ R0 MOV BX, 0 MOV M, BX JMP R0HR: CMP AX, 0002H JNZ R0 MOV BX, H INC BX MOV H, BX CMP BX, 0018H ;当小时的计数值满24 就清零 JNZ R0 MOV BX, 0 MOV H, BXR0: MOV AL, 0BBH ;开IQ2和IQ7中断 OUT 21H, AL MOV AL, 20H OUT 20H, AL IRET *;当按下kk2时,产生IQ2中断,并且OFF值加1IRQ2: INC OFF MOV BX, OFF CMP BX, 0003H JZ R1 CMP BX, 0001H JZ R2 CMP BX, 0002H JZ R2R1: MOV BX, 0000H MOV OFF, BX MOV AL, 7BH OUT 21H, AL MOV AL, 20H OUT 20H, AL IRETR2: MOV AL, 0BBH OUT 21H, AL MOV AL, 20H OUT 20H, AL IRET*;显像管的显示 DIS: PUSH AX MOV SI, 3000H MOV AX, M MOV BL, 0 DIV BL MOV SI, AH MOV SI+1, AL MOV AX, H MOV BL, 10 DIV BL MOV SI+2, AH MOV SI+3, ALMOV DL, 0F7HMOV AL, DLAGAIN: OUT 60H, A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 期中专题复习-词汇句型训练-2025-2026学年 译林版2024 英语七年级上册 原卷
- 20xx教师节感谢信3篇
- 文化遗产法律政策与文化产业发展研究-洞察及研究
- 【2025年秋七上语文阶段测试】第2单元学业质量评价01(解析版)
- 车驾管窗口业务课件培训
- 基于区块链的分布式能源交易场景下的仪表数据确权机制
- 基于人工智能的刺五加提取物多靶点作用机制预测模型构建
- 城市热岛效应缓解工程中列管散热器的分布式微气候调控效能评估
- 国际安全认证体系下扳手抗冲击测试标准与本土化适配冲突
- 四方结构力学性能优化与用户使用习惯冲突
- 新生儿低钙血症
- 熔化和凝固 全国公开课一等奖
- 人工智能训练师基础(上册)
- 中国驻外领使馆地区分类
- 粘多糖贮积症专家讲座
- 教学课件 国际结算(第七版)苏宗祥
- 成都燃气公司招聘笔试题
- 某铁路站房钢筋工程技术交底
- SMM英国建筑工程标准计量规则中文版全套
- 颈动脉保护装选择
- 水泥熟料生产工艺及设备课件
评论
0/150
提交评论