电子钟课程设计

上传人:汽*** 文档编号:553078717 上传时间:2022-11-07 格式:DOC 页数:9 大小:1.32MB
返回 下载 相关 举报
电子钟课程设计_第1页
第1页 / 共9页
电子钟课程设计_第2页
第2页 / 共9页
电子钟课程设计_第3页
第3页 / 共9页
电子钟课程设计_第4页
第4页 / 共9页
电子钟课程设计_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《电子钟课程设计》由会员分享,可在线阅读,更多相关《电子钟课程设计(9页珍藏版)》请在金锄头文库上搜索。

1、微机原理课程设计 一. 设计任务:电子表设计要求:1. 实现秒、分、时的计时,并显示于屏幕中央;2. 能够校时;3. 能够半点、整点报时。二. 设计原理:1.时钟起始时间的设置先调用设置光标子程序和清除屏幕子程序,调用DOS操作系统模块2,在显示屏上显示提示符“:”,再调用DOS操作系统模块10,提示要输入时钟的起始时间,输入时间的格式是“时:分:秒”。输入的时间以字符串形式放在已定义的存储器缓冲区,继而调用TRAN1和MUL10子程序,将存放在存储器缓冲区的ASCII字符转换成压缩BCD码,并将时、分、秒的值放置在寄存器CH、DH、DL中。2.延时程序调用TIME延时1S子程序(并未精确计算

2、),累加到存放秒值的寄存器DL中,并进行十进制调整。在累加的过程中,不断地对时、分、秒进行比较,秒不能等于60,分不能等于60,是不能等于24.秒等于限值时,则使分值为0时值加1;时等于限值时,就转显示屏输出。3.时间显示调用DOS操作系统模块9,可用来显示存储器内字符串。由于显示的字符串必须为ASCII编码,因为要调用TRAN2转换子程序将寄存器CH、DH、DL内压缩BCD码字符串转换成ASCII码字符串,字符串最后以字符“$”结束,并按时、分、秒的顺序送存储器缓冲区内。调用DOS操作系统模块9时,(DS:DX)应指向字符串首址。程序一旦进入运行,就将不间断地在显示屏显示时间,要想使程序停止

3、运行,可同时在键盘按下Ctrl和Break二键。4.校时校时系统我们采用了一个取键盘指令的中断,在发现时间不正确之后,可以通过键盘CPU一个中断请求,通过与键盘按键ASCII码的比较相同时返回初始化程序,重新输入时间,最终达到校时的目的。具体程序如下:MOV AH , 1INT 16HCMP AL,1BHJZ NEXT 5.半点、整点报时 当分达到30时,转到报时程序,当分到0时,转到报时程序。三框图:C秒和60相等?(DL)0(AL)(DH)分加1分和60相等?(DH)0(AL)(CH)时加1时和24相等?显示(DH)和0H相等报时字符显示A开始N(CH)(AL)置入时(BX)(BX)+1(

4、BX)(BX)+1(AL)BXBCD码转为压缩BCDNEXT:Y(DH)(AL)置入分 (BX)(BX)+1(BX)(BX)+1(AL)BXBCD码转为压缩BCD清屏光标置中DXBUFFER首地址键盘输入字符串到缓冲区BXBUFFER+2C延时键盘输入ESC,校时(AL)(DL)“秒”加1(DL)(AL)(DL)(AL)置入秒A(AL)BXBCD码转为压缩BCD(BX)(BX)+1(BX)(BX)+1ASCII码转为BCD码BXBUFFER+2ASCII码转为BCD码(BX)(BX)+1(BX)(BX)+1ASCII码转为BCD码NY(DH)和30H相等?(CH)0NYY四程序清单:DAT S

5、EGMENT BUFFER DB 20 DB ? DB 20 DUP (?)DAT ENDSSTA SEGMENT PARA STACK STACK STAPN DB 100 DUP (?) TOP EQU LENGTH STAPNSTA ENDSCOD SEGMENT STARTPROC FAR ASSUME CS:COD,DS:DAT,SS:STA MOV AX,DAT MOV DS,AX MOV AX,STA MOV SS,AX MOV AX,TOP MOV SP,AX NEXT: CALL IOCLR CALL IOSET MOV DX,OFFSET BUFFER MOV AH,10

6、INT 21H MOV BX,OFFSET BUFFER+2 CALL TRAN1 INC BX INC BX CALL TRAN1 INC BX INC BX CALL TRAN1 MOV BX,OFFSET BUFFER+2 MOV AL,BX CALL MUL10 MOV CH,AL INC BX INC BX MOV AL,BX CALL MUL10 MOV DH,AL INC BX INC BX MOV AL,BX CALL MUL10 MOV DL,AL AGAIN: CALL TIME MOV AH,1 INT 16H CMP AL,1BH JZ NEXT MOV AL,DL A

7、DD AL,1 DAA MOV DL,AL CMP AL,60H JNE DISPLAY MOV DL,0 MOV AL,DH ADD AL,1 DAA MOV DH,AL CMP AL,60H JNE DISPLAY MOV DH,0 MOV AL,CH ADD AL,1 DAA MOV CH,AL CMP AL,24H JNE DISPLAY MOV CH,0DISPLAY: MOV BX,OFFSET BUFFER INC BX INC BX CALL IOCLR CALL IOSET MOV AL,CH CALL TRAN2 INC BX MOV AL,: MOV BX,AL INC

8、BX MOV AL,DH CALL TRAN2 INC BX MOV AL,: MOV BX,AL INC BX MOV AL,DL CALL TRAN2 CMP DH,30H JNZ NEXT2 NEXT1: CMP DL,0 JNZ NEXT3 INC BX MOV AL,* MOV BX,AL INC BX MOV AL,: MOV BX,AL INC BX MOV AL,) MOV BX,AL INC BX MOV AL,07H MOV BX,AL JMP NEXT3 NEXT2: CMP DH,0 JNZ NEXT3 JMP NEXT1 NEXT3: INC BX MOV AL,$

9、MOV BX,AL PUSH BX PUSH CX PUSH DX MOV DX,OFFSET BUFFER MOV AH,9 INT 21H POP DX POP CX POP BX JMP AGAIN RET START ENDP MUL10 PROC ADD AL,AL DAA MOV CL,AL ADD AL,AL DAA ADD AL,AL DAA ADD AL,CL DAA MOV CL,AL INC BX MOV AL,BX ADD AL,CL RET MUL10ENDP TRAN1PROC MOV AL,BX AND AL,0FHMOV BX,ALINC BXMOV AL,BXAND AL,0FHMOV BX,ALRET TRAN1 ENDP TRAN2PROC MOV CL,AL SHR AL,1SHR AL,1SHR AL,1SHR AL,1OR AL,30HMOV BX,ALINC BXMOV AL,CLAND AL,0FHOR AL,30HMOV BX,ALRET TRAN2ENDP TIME PROC

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号