1. 51:
CS EQU 3.7
RD EQU 3.6
CONVST EQU 3.5;
MAXS EQU 18h
MAXM EQU 19h
----------------------------------------------------------------------------------------------------
ORG 0H
JMP 30H
ORG 03H; INT0
JMP KLAVA; KLAVA
ORG 0BH; 0
JMP TIME_0; TIME_0
ORG 01BH; 1
JMP TIME_1; TIME_1
ORG 30h
----------------------------------------------------------------------------------------------------
MOV TMOD, #00010001B; -
MOV SCON, #10010000B; UART
MOV IE, #00011011B;
MOV IP, #00000001B;
MOV TH0, #0F8H; 0-
MOV TL0, #035H
MOV TH1, #0FCH; 1-
MOV TL1, #01EH
SETB EA;
SETB P3.4; 1 4- 3
MOV TCON, #00010000B; 0-
JMP $;
----------------------------------------------------------------------------------------------------
TIME_0:CLR P3.4; 4- 3
MOV TCON, #01000000B; 1
RETI; .
----------------------------------------------------------------------------------------------------
TIME_1: SETB P3.4; 1 4- 3
MOV TH0, #0F8H; 0-
MOV TL0, #035H
MOV TH1, #0FCH; 1-
MOV TL1, #01EH
MOV TCON, #00010000B; 0
RETI; .
-----------------------------------------------------------------------------------------------------
KLAVA: CLR EA;
MOV P2, #11111110B;
JNB P2.4, M0; 0 0
JNB P2.5, M1; 0 1
JNB P2.6, M2
JNB P2.7, M3
CLR P2.1; 1- 2
SETB P 2.0; 1 0- 2
JNB P2.4, M4; 0 4
JNB P2.5, M5
JNB P2.6, M6
JNB P2.7, M7
CLR P 2.2; 2- 2
SETB P2.1; 1 1- 2
JNB P2.4, M8; 0 8
JNB P2.5, M9
JNB P2.6, MA
JNB P2.7, MB
CLR P 2.3; 3- 2
SETB P 2.2; 1 2- 2
JNB P2.4, MC; 0
JNB P2.5, MD
MOV 20h, #0EH
JMP DRB
M0: MOV 20h, #0H;
JMP DRB; DRB
M1: MOV 20h, #1H
JMP DRB
M2: MOV 20h, #2H;
JMP DRB; DRB
M3: MOV 20h, #3H
JMP DRB
M4: MOV 20h, #4H;
JMP DRB; DRB
M5: MOV 20h, #5H
JMP DRB
M6: MOV 20h, #6H;
JMP DRB; DRB
M7: MOV 20h, #7H
JMP DRB
|
|
M8: MOV 20h, #8H;
JMP DRB; DRB
M9: MOV 20h, #9H
JMP DRB
MA: MOV 20h, #0AH;
JMP DRB; DRB
MB: MOV 20h, #0BH
JMP DRB
MC: MOV 20h, #0CH;
JMP DRB
MD: MOV 20h, #0DH
JMP DRB
DRB:; -
MOV R2, #5
MOV R1, #250
U_2: DJNZ R1, U_1
U_1: DJNZ R2, U_2
WORK:
MOV A, P2
CJNE A, #0F0H, WORK; . . #0F0H
CALL ACP
SETB EA
RETI
----------------------------------------------------------------------------------------------------
ACP:
MOV R2, 20H
MOV R1, #21H
MOV R0, #22H
L7880:
CLR CONVST;
SETB CONVST
MOV R5, #19; (20 )
DJNZ R5, $
CLR CS; CS=0
CLR RD; RD=0
MOV A,P1; P1 . p.
MOV R4,A; R4
MOV A,P0; 3
MOV R5, A; R4R5 -
SETB RD; RD 1
SETB CS; CS 1
MOV A, R4;
MOV @R1, A
MOV A, R5
MOV @R0, A
DJNZ R2, L7880; R2 - L7880
CALL SCHET; SCHET
RET;
----------------------------------------------------------------------------------------------------
SCHET:
MOV R2, 20H
MOV R1, #21H
MOV R0, #22H
MOV MAXM, @R0
MOV MAXS, @R1
MM3:
INC R0; 1 R0
INC R0
INC R1; 1 R1
INC R1
MOV A, @R1
MOV R4, A
MOV A, @R0
MOV R3, A
MOV A, MAXS; S
CLR C;
CJNE A, R4, MM1; . . R4 . 1
JC MM2
JMP MM6
MM2:
MOV MAXS, @R1
MOV MAXM, @R0
JMP MM6
MM1:
MOV A, MAXM
CLR C
CJNE A, R3, MM6; . . R3 . 6
JC MM5; 5 = 1
JMP MM6
MM5:
MOV MAXS, @R1
MOV MAXM, @R0
MM6:
DJNZ R2, MM3
MOV R5, #0FFH
MOV SBUF, MAXS; . . MAXS
DJNZ R5, $;
DJNZ R5, $
MOV SBUF, MAXM; . . MAX
RET
4. 51:
AD00.EQU 20H
DATIND.EQU P1.0; DI
CLKIND.EQU P1.1; SK
---------------------------------------------------------------------------------------------------
ORG 0H
JMP 30H
ORG 0BH; 0
JMP TIME_0
ORG 01BH; 1
JMP TIME_1
ORG 23H
JMP UART
ORG 30H
---------------------------------------------------------------------------------------------------
MOV DPTR, #200H
MOVX A, @DPTR
MOV R0, A;
INC DPTR
MOVX A, @DPTR
MOV R1, A;
INC DPTR
MOVX A, @DPTR
MOV R2, A;
INC DPTR
MOVX A, @DPTR
MOV R3, A;
----------------------------------------------------------------------------------------------------
MOV TMOD, #00010001B; -
MOV SCON, #01010000B; UART
MOV IE, #00011010B;
MOV TL0, R0
MOV TH0, R1
MOV TL1, R2
MOV TH1, R3
SETB EA;
SETB P3.4
MOV TCON, #00010000B; 0-
JMP $;
----------------------------------------------------------------------------------------------------
|
|
TIME_0:
CLR P3.4
MOV TCON, #01000000B; 1-
RETI; -
----------------------------------------------------------------------------------------------------
TIME_1:
SETB P3.4
MOV TH0, R1
MOV TL0, R0
MOV TH1, R3
MOV TL1, R2
MOV TCON, #00010000B; 0-
RETI; -
-----------------------------------------------------------------------------------------------------
UART:;
CLR EA
PUSH R0; R0
PUSH R1; R1
PUSH R2; R2
PUS R3; R3
MOV R2, #FFH
MOV A, SBUF
MOV R0, A;
DJNZ R2, $
DJNZ R2, $
MOV A, SBUF
MOV R1, A;
MOV DPTR, #20E
MOVX @DPTR, R0; . . .
INC DPTR
MOVX @DPTR, R1; . . .
-----------------------------------------------------------------------------------------------------
; : , , ,
;
4_TISYACHI:
CLR C;
MOV A, R1
SUBB A, #0A0H;
MOV R2, A
MOV A, R0
SUBB A, #0FH;
MOV R3, A
JNC 3_TISYACHI; 3_TISYACHI = 0
MOV 20H, #4
JMP SOTNI; SOTNI
3_TISYACHI:
CLR C;
MOV A, R1
SUBB A, #0B8H;
MOV R2,A; R2
MOV A, R0; R0
SUBB A, #0BH;
MOV R3, A
JNC 2_TISYACHI 2_TISYACHI = 0
MOV 20H, #3
JMP SOTNI
2_TISYACHI:
CLR C;
MOV A, R1
SUBB A, #0B0H
MOV R2, A
MOV A, R0
SUBB A, #07H
MOV R3, A
JNC 1_TISYACHI
MOV 20h, #2
MP SOTNI
1_TISYACHI:
CLR C;
MOV A, R1
SUBB A, #0E8H
MOV R2, A
MOV A, R0
SUBB A, #03H
MOV R3, A
MOV 20H, #1
JMP SOTNI
-----------------------------------------------------------------------------------------------------
;
SOTNI:
9_SOTNI:
CLR C;
MOV A,R2
SUBB A, #84H
MOV R1, A
MOV A, R3
SUBB A, #03H
MOV R0, A
JNC 8_SOTNI
MOV 21H, #9
JMP DESATKI
8_SOTNI:
CLR C;
MOV A, R2
SUBB A, #20H
MOV R1, A
MOV A, R3
SUBB A, #03H
MOV R0, A
JNC 7_SOTNI
MOV 21H,#8
JMP DESATKI
7_SOTNI:
CLR C;
MOV A, R2
SUBB A, #0BCH
MOV R1,A
MOV A, R3
SUBB A, #02H
MOV R0, A
JNC 6_ SOTNI
MOV 21H, #7
JMP DESATKI
6_ SOTNI:
CLR C;
MOV A, R2
SUBB A, #58H
MOV R1, A
MOV A, R3
SUBB A, #02H
MOV R0, A
JNC 5_SOTNI
MOV 21H, #6
JMP DESATKI
5_SOTNI:
CLR C;
MOV A, R2
SUBB A, #0F4H
MOV R1, A
MOV A, R3
SUBB A, #01h
MOV R0, A
JNC 4_SOTNI
MOV 21H, #5
JMP DESATKI
4_SOTNI:
CLR C;
MOV A, R2
SUBB A, #90H
MOV R1, A
MOV A, R3
SUBB A, #01H
MOV R0, A
JNC 8_SOTNI
MOV 21H, #4
JMP DESATKI
3_SOTNI:
CLR C;
MOV A, R2
SUBB A, #2CH
MOV R1, A
MOV A, R3
SUBB A, #01H
MOV R0, A
JNC 2_SOTNI
MOV 21H, #3
JMP DESATKI
2_SOTNI:
CLR C;
MOV A, R3
SUBB A, #0C8H
MOV R0, A
JNC 1_SOTNI
MOV 21H, #2
JMP DESATKI
1_SOTNI:
CLR C;
MOV A, R3
SUBB A, #64H
MOV R0, A
MOV 21H, #1
JMP DESATKI
-----------------------------------------------------------------------------------------------------
;
DESATKI:
9_DESATKI:
CLR C;
MOV A, R0
SUBB A, #5AH
MOV R3, A
JNC 8_DESATKI
MOV 22H, #9
JMP EDINITSA
8_DESATKI:
CLR C
MOV A, R0
SUBB A, #50H
MOV R3, A
JNC 7_DESATKI
|
|
MOV 22H, #8
JMP EDINITSA
7_DESATKI:
CLR C;
MOV A, R0
SUBB A, #46H
MOV R3, A
JNC 6_DESATKI
MOV 22H, #7
JMP EDINITSA
6_DESATKI:
CLR C;
MOV A, R0
SUBB A, #3CH
MOV R3, A
JNC 5_DESATKI
MOV 22H, #6
JMP EDINITSA
5_DESATKI:
CLR C;
MOV A, R0
SUBB A, #32H
MOV R3, A
JNC 4_DESATKI
MOV 22H, #5
JMP EDINITSA
4_DESATKI:
CLR C;
MOV A, R0
SUBB A, #28H
MOV R3, A
JNC 3_DESATKI
MOV 22H, #4
JMP EDINITSA
3_DESATKI:
CLR C;
MOV A, R0
SUBB A, #1EH
MOV R3, A
JNC 2_DESATKI
MOV 22H, #3
JMP EDINITSA
2_DESATKI:
CLR C;
MOV A, R0
SUBB A, #14H
MOV R3, A
JNC 1_DESATKI
MOV 22H, #2
JMP EDINITSA
1_DESATKI:
CLR C;
MOV A, R0
SUBB A, #0AH
MOV R3, A
MOV 22H, #1
JMP EDINITSA
;
EDINITSA:
9_EDINITSA:
CLR C;
MOV A, R3
SUBB A, #9H
JNC 8_EDINITSA; = 0
MOV 23H, #9
JMP INDVIV
8_EDINITSA:
CLR C;
MOV A, R3
SUBB A, #8H
JNC 7_EDINITSA; EDINITSA, = 0
MOV 23H, #8
JMP INDVIV
7_EDINITSA:
CLR C;
MOV A, R3
SUBB A, #7h
JNC 6_EDINITSA; EDINITSA, = 0
MOV 23H, #7
JMP INDVIV
6_EDINITSA:
CLR C;
MOV A, R3
SUBB A, #6H
JNC 5_EDINITSA; EDINITSA, = 0
MOV 23H, #6
JMP INDVIV
5_EDINITSA:
CLR C;
MOV A, R3
SUBB A, #5H
JNC 4_EDINITSA; EDINITSA, = 0
MOV 23H, #5
JMP INDVIV
4_EDINITSA:
CLR C;
MOV A, R3
SUBB A, #4H
JNC 3_EDINITSA; EDINITSA, = 0
MOV 23H, #4
JMP INDVIV
3_EDINITSA:
CLR C;
MOV A, R3
SUBB A, #3H
JNC 2_EDINITSA; EDINITSA, = 0
MOV 23H, #4
JMP INDVIV
2_EDINITSA:
CLR C
MOV A, R3
SUBB A, #2h
JNC 1_EDINITSA; EDINITSA, = 0
MOV 23H, #2
JMP INDVIV
1_EDINITSA:
CLR C
MOV A, R3
SUBB A, #1H
MOV 23H, #1
-----------------------------------------------------------------------------------------------------
;
INDVIV:
MOV A, AD00+7;
CALL SIMBOL1;
MOV A, AD00+6
CALL SIMBOL1
MOV A, AD00+5
CALL SIMBOL1
MOV A, AD00+4;
CALL SIMBOL1
MOV A, #0FH;
CALL SIMBOL1
MOV A, #0FH
CALL SIMBOL1
MOV A, #0FH
CALL SIMBOL1
MOV A, #0FH
CALL SIMBOL1
MOV A, #0FH
CALL SIMBOL1
MOV A, #0FH
CALL SIMBOL1
SETB DATIND
POP R3;
POP R2
POP R1
POP R0
SETB EA
RETI
SIMBOL1:
ANL A, #0000011111B; .
CJNE A, #0, SIMB11
MOV A, #10
SJMP SIMB12
SIMB11:
CJNE A, #0FH,SIMB12
MOV A, #0
SIMB12:
CLR CLKIND
SWAP A
CALL BIT1
CALL BIT1
CALL BIT1
CALL BIT1
SETB CLKIND
RETI
BIT1:
RLC A
MOV DATIND, C; -
SETB CLKIND;
CLR CLKIND;
SETB EA;
RETI; -
END
5.
- , 181651, 15 , 12- - AD7880 Analog Devices, 1611 HOLTEK, ' 27128, 16, ' 53710, 2
|
|
, .
,
, 15 - .
˳
1. I.. , 2008.
2. .. .: , 1990.
3. .. , ? ! .1.- .: ͻ, 2002.