MOV A,BUFFER
CJNE A,#00000000B,DE1
MOV OUTBUF1,#11111111B ;
MOV OUTBUF2,#11111111B
RET
DE1:
CJNE A,#00000001B,DE2
MOV OUTBUF1,#00110000B ;A
MOV OUTBUF2,#11111100B
RET
DE2:
CJNE A,#00000010B,DE3
MOV OUTBUF1,#11000000B ;B
MOV OUTBUF2,#10110101B
RET
DE3:
CJNE A,#00000011B,DE4
MOV OUTBUF1,#00001100B ;C
MOV OUTBUF2,#11111111B
RET
DE4:
CJNE A,#00000100B,DE5
MOV OUTBUF1,#11000000B ;D
MOV OUTBUF2,#10110111B
RET
DE5:
CJNE A,#00000101B,DE6
MOV OUTBUF1,#00001100B ;E
MOV OUTBUF2,#11111100B
RET
DE6:
CJNE A,#00000110B,DE7
MOV OUTBUF1,#00111100B ;F
MOV OUTBUF2,#11111110B
RET
DE7:
CJNE A,#00000111B,DE8
MOV OUTBUF1,#00000100B ;G
MOV OUTBUF2,#11111101B
RET
DE8:
CJNE A,#00001000B,DE9
MOV OUTBUF1,#00110011B ;H
MOV OUTBUF2,#11111100B
RET
DE9:
CJNE A,#00001001B,DE10
MOV OUTBUF1,#11001100B ;I
MOV OUTBUF2,#10110111B
RET
DE10:
CJNE A,#00001010B,DE11
MOV OUTBUF1,#10011100B ;J
MOV OUTBUF2,#10110111B
RET
DE11:
CJNE A,#00001011B,DE12
MOV OUTBUF1,#00111111B ;K
MOV OUTBUF2,#11001110B
RET
DE12:
CJNE A,#00001100B,DE13
MOV OUTBUF1,#00001111B ;L
MOV OUTBUF2,#11111111B
RET
DE13:
CJNE A,#00001101B,DE14
MOV OUTBUF1,#00110011B ;M
MOV OUTBUF2,#11101011B
RET
DE14:
CJNE A,#00001110B,DE15
MOV OUTBUF1,#00110011B ;N
MOV OUTBUF2,#11011011B
RET
DE15:
CJNE A,#00001111B,DE16
MOV OUTBUF1,#00000000B ;O
MOV OUTBUF2,#11011011B
RET
DE16:
CJNE A,#00010000B,DE17
MOV OUTBUF1,#00111000B P
MOV OUTBUF2,#11111100B
RET
DE17:
CJNE A,#00010001B,DE18
MOV OUTBUF1,#00000000B ;Q
MOV OUTBUF2,#11011111B
RET
DE18:
CJNE A,#00010010B,DE19
MOV OUTBUF1,#00111000B ;R
MOV OUTBUF2,#11011100B
RET
DE19:
CJNE A,#00010011B,DE20
MOV OUTBUF1,#11000100B ;S
MOV OUTBUF2,#11111001B
RET
DE20:
CJNE A,#00010100B,DE21
MOV OUTBUF1,#11111100B ;T
MOV OUTBUF2,#10110111B
RET
DE21:
CJNE A,#00010101B,DE22
MOV OUTBUF1,#00000011B ;U
MOV OUTBUF2,#11111111B
RET
DE22:
CJNE A,#00010110B,DE23
MOV OUTBUF1,#00111111B ;V
MOV OUTBUF2,#01101111B
RET
DE23:
CJNE A,#00010111B,DE24
MOV OUTBUF1,#00110011B ;W
MOV OUTBUF2,#01011111B
RET
DE24:
CJNE A,#00011000B,DE25
MOV OUTBUF1,#11111111B ;X
MOV OUTBUF2,#01001011B
RET
DE25:
CJNE A,#00011001B,DE26
MOV OUTBUF1,#11111111B ;Y
MOV OUTBUF2,#10101011B
RET
DE26:
CJNE A,#00011010B,DE27
MOV OUTBUF1,#11001100B ;Z
MOV OUTBUF2,#01101111B
RET
DE27:
CJNE A,#00011011B,DE28
MOV OUTBUF1,#11111111B ;/
MOV OUTBUF2,#01101111B
RET
DE28:
CJNE A,#00011100B,DE29
MOV OUTBUF1,#11111111B ;--
MOV OUTBUF2,#11111100B
RET
DE29:
CJNE A,#00011101B,DE30
MOV OUTBUF1,#11111111B ;*
MOV OUTBUF2,#00000000B
RET
DE30:
CJNE A,#00011110B,DE31
MOV OUTBUF1,#11111111B ;+
MOV OUTBUF2,#10110100B
RET
DE31:
CJNE A,#00011111B,DE32
MOV OUTBUF1,#00000000B ;All Bright
MOV OUTBUF2,#00000000B
RET
DE32:
CJNE A,#00100000B,DE33
MOV OUTBUF1,#00000000B ;0
MOV OUTBUF2,#11111111B
RET
DE33:
CJNE A,#00100001B,DE34
MOV OUTBUF1,#11110011B ;1
MOV OUTBUF2,#11111111B
RET
DE34:
CJNE A,#00100010B,DE35
MOV OUTBUF1,#10001000B ;2
MOV OUTBUF2,#11111100B
RET
DE35:
CJNE A,#00100011B,DE36
MOV OUTBUF1,#11000000B ;3
MOV OUTBUF2,#11111100B
RET
DE36:
CJNE A,#00100100B,DE37
MOV OUTBUF1,#01110011B ;4
MOV OUTBUF2,#11111100B
RET
DE37:
CJNE A,#00100101B,DE38
MOV OUTBUF1,#01000100B ;5
MOV OUTBUF2,#11111100B
RET
DE38:
CJNE A,#00100110B,DE39
MOV OUTBUF1,#00000111B ;6
MOV OUTBUF2,#11111100B
RET
DE39:
CJNE A,#00100111B,DE40
MOV OUTBUF1,#11110000B ;7
MOV OUTBUF2,#11111111B
RET
DE40:
CJNE A,#00101000B,DE41
MOV OUTBUF1,#00000000B ;8
MOV OUTBUF2,#11111100B
RET
DE41:
CJNE A,#00101001B,DE42
MOV OUTBUF1,#01110000B ;9
MOV OUTBUF2,#11111100B
RET
DE42:
CJNE A,#00101010B,DE43
MOV OUTBUF1,#10001111B ;<
MOV OUTBUF2,#11111100B
RET
DE43:
CJNE A,#00101011B,DE44
MOV OUTBUF1,#11000111B ;>
MOV OUTBUF2,#11111100B
RET
DE44:
CJNE A,#00101100B,DE45
MOV OUTBUF1,#01111011B ;
MOV OUTBUF2,#11111100B
RET
DE45:
CJNE A,#00101101B,DE46
MOV OUTBUF1,#01001100B ;
MOV OUTBUF2,#11111100B
RET
DE46:
CJNE A,#00101110B,DE47
MOV OUTBUF1,#00001111B ;
MOV OUTBUF2,#11111100B
RET
DE47:
CJNE A,#00101111B,DE48
MOV OUTBUF1,#11111111B ;
MOV OUTBUF2,#11111111B
RET
DE48:
CJNE A,#00110000B,DE49
MOV OUTBUF1,#00000000B ;0
MOV OUTBUF2,#11111111B
RET
DE49:
CJNE A,#00110001B,DE50
MOV OUTBUF1,#11110011B ;1
MOV OUTBUF2,#11111111B
RET
DE50:
CJNE A,#00110010B,DE51
MOV OUTBUF1,#10001000B ;2
MOV OUTBUF2,#11111100B
RET
DE51:
CJNE A,#00110011B,DE52
MOV OUTBUF1,#11000000B ;3
MOV OUTBUF2,#11111100B
RET
DE52:
CJNE A,#00110100B,DE53
MOV OUTBUF1,#01110011B ;4
MOV OUTBUF2,#11111100B
RET
DE53:
CJNE A,#00110101B,DE54
MOV OUTBUF1,#01000100B ;5
MOV OUTBUF2,#11111100B
RET
DE54:
CJNE A,#00110110B,DE55
MOV OUTBUF1,#00000111B ;6
MOV OUTBUF2,#11111100B
RET
DE55:
CJNE A,#00110111B,DE56
MOV OUTBUF1,#11110000B ;7
MOV OUTBUF2,#11111111B
RET
DE56:
CJNE A,#00111000B,DE57
MOV OUTBUF1,#00000000B ;8
MOV OUTBUF2,#11111100B
RET
DE57:
CJNE A,#00111001B,DE58
MOV OUTBUF1,#01110000B ;9
MOV OUTBUF2,#11111100B
RET
DE58:
CJNE A,#00111010B,DE59
MOV OUTBUF1,#10001111B ;<
MOV OUTBUF2,#11111100B
RET
DE59:
CJNE A,#00111011B,DE60
MOV OUTBUF1,#11000111B ;>
MOV OUTBUF2,#11111100B
RET
DE60:
CJNE A,#00111100B,DE61
MOV OUTBUF1,#01111011B ;
MOV OUTBUF2,#11111100B
RET
DE61:
CJNE A,#00111101B,DE62
MOV OUTBUF1,#01001100B ;
MOV OUTBUF2,#11111100B
RET
DE62:
CJNE A,#00111110B,DE63
MOV OUTBUF1,#00001111B ;
MOV OUTBUF2,#11111100B
RET
DE63:
CJNE A,#00111111B,DE64
MOV OUTBUF1,#11111111B ;
MOV OUTBUF2,#11111111B
RET
DE64:
RET
;*********************************
TIMER:
PUSH PSW
PUSH ACC
SETB RS0
MOV TL0,R4
MOV TH0,R5
ACALL INPUT
TIMER_QUIT:
CLR RS0
POP ACC
POP PSW
RETI
;*************************************
CLRRAM:
MOV R0,#10H
CLRRAM1:
MOV @R0,#0FFH
INC R0
CJNE R0,#0H,CLRRAM1
RET
;**************************************
DELAY:
DL1:
MOV R6,#250
DL2:
MOV R7,#200
DL3:
DJNZ R7,DL3
DJNZ R6,DL2
RET
;*************************************
INPUT:
MOV A,IN_1
; CPL A
ANL A,#00111111B
GET_DATA:
CJNE A,TEMP_BUF,SC1
DJNZ 39H,SC0
MOV BUFFER,TEMP_BUF
MOV 39H,#1
SC0:
AJMP INPUT_QUIT
SC1: ;Store Temp Reg
MOV TEMP_BUF,A
MOV 39H,#6 ;(80-1)*10mS
INPUT_QUIT:
RET
END
頁:
1
[2]