99
秒的,不用6个数码管,如果有需要帮你改下,
你那个设计的功能说的还不够明白。还有就是你那个数码管是怎么连的啊?共阴的还是共阳的,想当初做数码管显示时间,就花了3天的时间才把数码管点亮。
用AT89S52设计一个2位LED数码显示“秒表”,显示时间为00~99秒,每秒自动加一。另设计一个“开始”按键和一个“复位”按键,一个“暂停”按键和一个“快加”按键(每10ms快速加一)。
ORG
0000H
AJMP
MAIN
主程序入口地址
ORG
0003H
AJMP
ZHONGDUAN0
中断0入口地址
ORG
000BH
AJMP
DINGSHI
定时器T0入口地址
ORG
0013H
AJMP
ZHONGDUAN1
中断1入口地址
ORG
001BH
AJMP
DINGSHI1
定时器T1入口地址
ORG
0030H
//主程序:
MAIN:
MOV
TCON,#05H
主程序开始
外部中断跳变模式
MOV
TMOD,#11H
定时器0,1模式1
MOV
IE
,#8FH
开总中断,中断0,1,定时器0,1
MOV
DPTR,#TAB
MOV
R1
,#00H
MOV
R2
,#00H
MOV
R3
,#40
循环次数40
MOV
TL0
,#2CH
置初值,定时25MS
MOV
TH0
,#0CFH
MOV
TL1
,#78H
置初值,定时10MS
MOV
TH1
,#0ECH
CLR
TR0
关定时器
CLR
TR1
//暂停键K3,快加键K4程序
HERE:JB
P1.0,HERE
SHOW:CLR
TR1
CLR
TR0
ACALL
XIANSHI
KUAIJIA:JB
P1.2,KUAIJIA
等待P1.2为0
快加
CLR
TR0
SETB
TR1
HERE3:
JNB
P1.2,HERE3
AJMP
HERE
//外部中断INT0子程序-----计时按键K1子程序
ZHONGDUAN0:
SETB
TR0
计时按键
RETI
//外部中断INT1子程序----复位按键K2子程序
ZHONGDUAN1:CLR
TR0
复位按键
CLR
TR1
MOV
12H,#00H
MOV
11H,#00H
ACALL
XIANSHI
调用显示子程序
MOV
R1,#00H
MOV
R2,#00H
RETI
//加一子程序
JIA1:
INC
R1
加1子程序
CJNE
R1,#0AH
,LOOP
判断是否到表尾
MOV
R1,#00H
INC
R2
CJNE
R2,#0AH,LOOP
MOV
R2,#00H
LOOP:
MOV
12H,R1
重新赋值
MOV
11H,R2
RET
//显示子程序
XIANSHI:MOV
R7,#02H
2个数码管显示子程序
MOV
R0,#12H
LOOP5:
MOV
R6,#08H
8位2进制数
MOV
A
,@R0
MOVC
A
,@A+DPTR
LOOP6:
RLC
A
循环左移
CLR
P3.1
MOV
P3.0,C
SETB
P3.1
DJNZ
R6,LOOP6
DEC
R0
DJNZ
R7,LOOP5
RET
定时器T0子程序
DINGSHI:MOV
TL0,#2CH
定时子程序
MOV
TH0,#0CFH
DJNZ
R3,LOOP7
ACALL
JIA1
调用加1子程序
ACALL
XIANSHI
调用显示子程序
MOV
R3,#40
LOOP7:
RETI
定时器T1子程序
DINGSHI1:MOV
TL1,#78H
置初值,定时10MS
MOV
TH1,#0ECH
CLR
TR0
SETB
TR1
MOV
12H,R1
MOV
11H,R2
JNB
P1.0,SHOW
ACALL
JIA1
ACALL
XIANSHI
LOP7:
RETI
TAB:
DB
3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
END
MBIME是什么进程?\x0d\x0a \x0d\x0a答:MB是码表(词库)的意思,IME是微软的IME输入法机制(模式),在Win9X、WinXP等32位 *** 作系统盛行年代,输入法运行文件的扩展名为IME,输入法词库文件的扩展名是MB。\x0d\x0a \x0d\x0a所以说MBIME就是“IME机制输入法码表”进程的意思。\x0d\x0a \x0d\x0aIME 是输入法编辑器(Input Method Editor) 的英文缩写(IME),它是一种专门的应用程序, 用来输入代表东亚地区书面语言文字的不同字符。\x0d\x0a \x0d\x0a输入法运行为多线程,在新的Win7系统中,如果打开多个应用程序让输入法加载,那么每多出一个应用程序,就会多出一个MBIME进程,这是Win7新版不能理想兼容WinXP程序的缘故。\x0d\x0a(在WIN7下,CTFMON.EXE这个XP中管理输入法的程序已放弃不用,而传统输入法的接口多是按XP中编程接口来写的,在新系统下就出现了这个重复的MBIME进程──不碍事有点烦)\x0d\x0a\x0d\x0a64位引进了TSF机制,由于软件向下兼容的公约,IME机制仍然会被长期兼容。\x0d\x0a \x0d\x0aXP下的32位全拼、双拼、郑码输入法,以及广泛使用的86王码五笔、极品五笔、念青五笔、海峰五笔输入法,在Win7下使用时,都会产生MBIME进程。\x0d\x0a \x0d\x0a对于MBIME进程,因为符合旧的IME机制,瑞星、卡巴斯基、金山、360等等安全软件,都不会做木马或病毒提示的(如果谁提示木马或病毒,那就惹出笑话,意味着自身的不专业)。Code segmentassume cs:Code, ds:Code
org 100h
start:
push cs
pop ds
mov ax, 3
int 10h
mov ax, 0B800h
mov es, ax
mov si, offset ASCII
mov di, 38h
cld
mov cx, 19h
@116:
lodsb
stosb
mov al, 24h
stosb
loop @116
mov di, 1E0h
xor dx, dx
mov cx, 100h
@125:
call sub_190
mov al, dl
stosb
mov al, 1Ah
stosb
inc dl
loop @125
mov dx, 1400h
mov bh, 0
mov ah, 2
int 10h - VIDEO - SET CURSOR POSITION
DH,DL = row, column (0,0 = upper left)
BH = page number
mov ah, 0
int 16h KEYBOARD - READ CHAR FROM BUFFER, WAIT IF EMPTY
Return: AH = scan code, AL = character
mov ah, 4Ch
int 21h DOS - 2+ - QUIT WITH EXIT CODE (EXIT)
sub_190:
push cx
mov al, 20h
stosb
inc di
mov al, dl
mov cl, 4
shr al, cl
or al, 30h
cmp al, 3Ah
jb short @1A3
add al, 7
@1A3:
stosb
inc di
mov al, dl
and al, 0Fh
or al, 30h
cmp al, 3Ah
jb short @1B1
add al, 7
@1B1:
stosb
inc di
mov al, 20h
stosb
inc di
pop cx
ret
ASCII db ' ASCII CODES TABEL $$',0
Code ends
end start
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)