汇编8279键盘显示控制文档格式.docx

上传人:b****1 文档编号:13298256 上传时间:2022-10-09 格式:DOCX 页数:6 大小:11.55KB
下载 相关 举报
汇编8279键盘显示控制文档格式.docx_第1页
第1页 / 共6页
汇编8279键盘显示控制文档格式.docx_第2页
第2页 / 共6页
汇编8279键盘显示控制文档格式.docx_第3页
第3页 / 共6页
汇编8279键盘显示控制文档格式.docx_第4页
第4页 / 共6页
汇编8279键盘显示控制文档格式.docx_第5页
第5页 / 共6页
点击查看更多>>
下载资源
资源描述

汇编8279键盘显示控制文档格式.docx

《汇编8279键盘显示控制文档格式.docx》由会员分享,可在线阅读,更多相关《汇编8279键盘显示控制文档格式.docx(6页珍藏版)》请在冰豆网上搜索。

汇编8279键盘显示控制文档格式.docx

输入时依次为分、秒、百分秒,同时应有判断输入错误的能力,若输入有错,则显示:

E-----,此时敲P键可重新输入预置值。

5.E键:

程序退出,返回DOS

接线方法

实验台上8253CLK0接1MHz,GATE0和GATE1接+5V,OUT0接CLK1,OUT1接IRQ.CS接

280H~287H.

三、编程提示

程序流程

秒表工作原理

中断处理子程序:

预置秒表各段高位子程序:

预置秒表各段低位子程序LOW0

源程序:

INTA00EQU20H;

8259A口地址

INTA01EQU21H;

PORT0EQU2B0H;

8279数据口

PORT1EQU2B1H;

8279控制口

TIME0EQU280H;

8253定时器0口地址

TIME1EQU281H;

8253定时器1口地址

TIMECEQU283H;

8253控制口地址

STACKSEGMENTSTACK

STADW512DUP(?

TOPEQULHNGTHSTA

STACKENDS

DATASEGMENT

BUFDB0;

计数单元

SIGHDB0;

计数标志

SEC1DB0;

秒高位

SEC2DB0;

秒低位

MIN1DB0;

分高位

MIN2DB0;

分低位

HOUR1DB0;

时高位

HOUR2DB0;

时低位

ERR1DB0;

出错标志

HMSDB0;

预置时、分、秒标志

LEDDB3FH,06,5BH,4FH,66H,6DH,7DH,07,7FH,6FH,79H,40H

MESDB…PLEASFIRSTCREATETHEIRQ7PULSE!

?

0AH,0DH,0AH,0DH

DB…INSMALLKEYBORD:

0AH,0DH

DB…C--CLEARTOZERO;

G--GOAHEAD?

DB…D--STOPTHEDISPLY;

E—EXIT?

DB…P—POSITIONTHEBEGINNINGTIME?

0AH,0DH,?

$?

DATAENDS

CODESEGMENT

MAINPROCFAR

ASSUMECS:

CODE,DS:

DATA,SS:

STACK

START:

CLI

MOVAX,DATA

MOVDS,AX

MOVBUF,0

MOVSIGH,01

MOVSEC1,0

MOVSEC2,0

MOVMIN2,0

MOVHOUR1,0

MOVHOUR2,0

MOVERR1,0

MOVDX,TIMEC;

8253初始化

MOVAL,36H

OUTDX,AL

MOVDX,TIME0

MOVAX,100

MOVAL,AH

MOVDX,TIMEC

MOVAL,74H

MOVAX,10

MOVDX,TIME1;

定时器每0.1S中断1次OUTDX,AL

MOVAX,STACK

MOVSS,AX

MOVSP,TOP

MOVDX,OFFSETMES

MOVAH,09

INT21H

MOVAX,CS

MOVDX,OFFSETINT_PROC

MOVAX,250FH

INT21H;

置IRQT中断向量

MOVDX,INTA01

ANDAL,7FH

MOVDX,PORT1

MOVAL,0D3H

OUTDX,AL;

8279清零

MOVAL,2AH

置8279时钟命令

MOVAL,40H

读FIFORAM命令

MOVAL,00H

置键盘显示模式

MOVAL,80H

写RAM命令

STI

KEY1:

CALLKET2;

调键盘显示子程序CMPHOUR2,0AH

JZNEXT2

NEXT1:

CMPAL,0CH;

是否“C”命令

JNZLP0

NEXT2:

MOVSIGH,00H

MOVHOUR2,00H

MOVHOUR1,00H

MOVMIN2,00H

MOVMIN1,00H

MOVSEC2,00H

MOVSEC1,00H

LP0:

CMPAL,0EH;

是否“E”命令

JNZLP1

MOVSIGH,00H

CLI

INAL,DX

MOVAX,4C00H;

是“E”命令返回DOSINT21H

LP1:

CMPAL,10H;

是否“G”命令

JNZLP2

MOVSIGH,01H

JMPKEY1

LP2:

CMPAL,0DH;

是否“D”命令

JNZSETI

KEY3:

JMPKEY1

SETI:

CMPAL,12H;

是否“P”命令

JNZKET1

MOVSIGH,00H;

“00”为预置时标志

MOVHMS,00H

CALLHIGH0

CMPERR1,01H

JZKEY3

CALLLOW0

MOVHMS,11H;

“11”为预置分标志CALLHIGH0

MOVHMS,22H;

“22”为预置秒标志CALLHIGH0

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1