微机原理与接口设计课程设计闹钟设计_第1页
微机原理与接口设计课程设计闹钟设计_第2页
微机原理与接口设计课程设计闹钟设计_第3页
微机原理与接口设计课程设计闹钟设计_第4页
微机原理与接口设计课程设计闹钟设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、微机原理与接口设计课程设计闹钟设计 微机原理与接口技术实验报告 学院:计算机科学与技术学院 班级:计算机科学与技术0903班 姓名: 一、课程题目:闹钟设计二、设计任务:利用唐都实验箱,完成以下功能:(1)设计一个钟表。在数码管上显示时间。(2)定时时间到,屏幕显示“get up!”字符串。(3)显示同时,流水灯闪烁,蜂鸣器响1秒钟。三、设计方案:1.主程序 在内存里存两个数,分别除10,用于数码管显示。 2.8253定时器的设计 用通道2做计数,clk接cpclk,1.193MHZ,工作在方式2,每次技术完毕进入IRQ7子程序。1s的最大计数初值为:1s/1/1193000s1193000D

2、由于AL最多8位,最大记到65536,小于1s的最大计数初值,所以给初值为11930D,在IRQ7子程序中给出计数次数100D,小于100时,中断返回,继续计数。当等于100时响应中断。3.8255输入输出B口输出,用于输出数码管的数;A口输出,低四位用于数码管片选,最高位用于蜂鸣器响,其他三位用于流水灯;C口输入,用于接收开关的数,通过除以60分别与内存中的分和秒比较4.8259中断 IRQ0 给内存中的数UU置1,从而控制在IRQ7中接收数据并比较,蜂鸣器响,流水灯亮。如果比较相等给AA置1,从而给UU,AA置0。 IRQ7用于定义8253的计时个数,修改时间,1s内存中的秒加1,直到60

3、,分加1。5.接收数据用8253的C口接收数据,接收的是秒,除以60,余数是秒,商是分,分别和内存中的分和秒比较,都相等时,屏幕上显示get up,给DI和AA置1,控制蜂鸣器和流水灯。6.蜂鸣器,流水灯 在IRQ7中的UU等于 1时,也就是按下了开关,响应了IRQ0中断之后,每次中断都扫描开关,看是否到达给定的时间,到了的话给DI和AA置1,DI控制蜂鸣器和哪个流水灯亮,AA1时给UU和AA复位为0,以便下一次中断使用。IRQ7中每次都call 流水灯,只有当DI大于等于1时,DI才加1,第一次DI0时跳出流水灯程序;在主程序的display中,由于A口低四位同时片选,为了让蜂鸣器响1s钟并

4、且给流水灯加延时,所以要对A口进行与控制,不对其控制时A口高四位输出全为1。当DI等于2时蜂鸣器响,同时流水灯第一个灯亮,给AL与上10111111B,当DI等于3时,已经是下一秒钟了,蜂鸣器不响下一个流水灯亮,AL与上01011111B,同理DI等于4时AL与上01101111B,否则,就是其他数,蜂鸣器不响,流水灯全灭,当下一次中断时,再给DI置1。四、硬线连接图:用protues画出了基本的连线五、程序流程图:主程序IRQ0IRQ7接收数据流水灯六、源程序:STACK SEGMENT STACKDW 64DUP ?STACK ENDSDATASEGMENTTABLE DB3FH,06H,

5、5BH,4FH,66H,6DH,7DH,07H,7FH,6FHGETDB'GET UP! ',0AH, 0DH, 00HDW0000HWWDW0000HBMDB00HBFDB00HUUDB00HAADB00HDATA ENDS CODE SEGMENTASSUMECS:CODE,DS:DATASTART:MOV AX,DATAMOVDS,AXPUSHDS;8259MOVAX,0000HMOVDS,AXMOVAX,OFFSET IRQ7 ;IRQ7的中断初始化ADDAX,2000HMOVSI,003CHMOVSI,AXMOVAX,0000HMOVSI,003EHMOVSI,AXM

6、OVAX,OFFSET IRQ0 ;IRQ0的中断初始化ADDAX,2000HMOVSI,0020HMOVSI,AXMOVAX,0000HMOVSI,0022HMOVSI,AXCLIPOPDSMOVAL,00HOUT21H,ALMOVAL,89H ;8255OUT63H,ALMOVCX,0000H ;JISHUMOVDI,0000HMOVAL,10110100B;8253DINGSHIOUT 43H, ALMOVAX,11930DOUT42H, ALMOVAL,AHOUT42H,ALMAIN:CALLDISPLAYCALLCLEARJMPMAINDISPLAY:STI ;数码管显示PUSHAX

7、PUSHBXMOVSI,3000HMOVAX,MOVBL,10DDIVBLMOVSI,AHMOVSI+1,ALMOVAX,WWMOVBL,10DDIVBLMOVSI+2,AHMOVSI+3,ALMOVDL,0F7HMOVAL,DLAGAIN:CMPDI,0002H;控制流水灯与掉其他位JNZTT1PUSHAXANDAL,10111111BORAL,00110000BOUT60H,ALPOPAXJMPTIAOTT1:CMPDI,0003HJNZTT2PUSHAXANDAL,01011111BORAL,01010000BOUT60H,ALPOPAXJMPTIAOTT2:CMPDI,0004HJNZ

8、TTTPUSHAXANDAL,01101111BORAL,01100000BOUT60H,ALPOPAXJMPTIAOTTT:PUSHAXANDAL,7FHORAL,01110000BOUT60H,ALPOPAXTIAO:MOVAL,SIMOVBX,OFFSETTABLEANDAX,00FFHADDBX,AXMOVAL,BXOUT61H,ALCALLCLEARMOVAL,DLTESTAL,01HJZJIESHUINCSIRORAL,1MOVDL,ALJMPAGAINJIESHU:POPBXPOPAXRET;数码管全灭CLEAR:MOVAL,00HOUT61H,ALRETIRQ7:INCCX ;

9、8253定时个数CMPCX,100DJZXIANSHIMOVAL,20HOUT20H,ALIRET;数码管显示数据XIANSHI:PUSHAXPUSHBXMOVAX,INCAXMOV,AXCMPAX,003CHJNZCHULAIMOVAX,0MOV,AXMOVBX,WWINCBXMOVWW,BXCMPBX,003CHJNZCHULAIMOVBX,0MOVWW,BXCHULAI:MOVCX,0000H ;JISHUMOVAL,20HOUT20H,ALCMPUU,01HJNZUUUCALLJIESUUU:POPBXCMPAA,01HJNZHHMOVUU,00HMOVAA,00HHH:CALLLSDPOPAXIRET;从开关接受时间JIES:PUSHAXPUSHBXIN AL,62H;JIESHOUSHIJIANANDAX,00FFHMOVBL,60DDIVBLMOVBM,AHMOVBF,AL;比较秒MOVAL,BMANDAX,00FFHCMPAX, JNZPP;比较分MOVAL,BFANDAX,00FFHCMPAX,WWJNZPP;A口高位输出为1,蜂鸣器响;MOVAL,0F0H;ORAL,00110000B;OUT60H,ALCALLGETUPMOVDI,0001HMOVAA,01HPP:;CALLLSDPOPBXPOPAXRET;流水灯LSD:PUSHAXCM

温馨提示

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

评论

0/150

提交评论