📄 pdc_401.asm
字号:
CLK EQU P1.1
DI EQU P1.2
SCL EQU P1.3
SDA EQU P1.4
ORG 0000H
AJMP AT24D ;MAIN
ORG 0300H
AT24D: NOP
MOV R0, #50H ;读出数据暂存的RAM首址
MOV R1, #00H ;AT24Cxx内存数据的首址
MOV R4, #04H ;连续读4个数
AT24RD: CALL START24
MOV A, #0A0H
CALL WBYTE
MOV A, R1
CALL WBYTE
NOP
CALL START24
MOV A, #0A1H
CALL WBYTE
CALL RBYTE
CALL STOP24
MOV @R0, A
INC R0
INC R1
DJNZ R4, AT24RD
NOP
;MAIN: MOV 40H, #01H
; MOV 41H, #01H
; MOV 42H, #08H
;MOV 43H, #05H
; AT24X: MOV R0, #40H
; MOV R1, #00H
;MOV R4, #04H
;AT24WR: CALL START24
; MOV A, #0A0H
; CALL WBYTE
; MOV A, R1
;CALL WBYTE
; MOV A, @R0
; CALL WBYTE
; CALL STOP24
; CALL DEL10MS
; INC R0
; INC R1
; DJNZ R4, AT24WR
; MOV A, 40H
; MOV 50H, A
; MOV A, 41H
; MOV 51H, A
; MOV A, 42H
; MOV 52H, A
; MOV A, 43H
; MOV 53H, A
DISPLAY: MOV A, 50H
JNB ACC.0, POSI ;转正数段码设置
MOV 60H, #0FDH ;负号的段码
AJMP CONTI
POSI: MOV 60H, #0FFH
CONTI: MOV DPTR, #TABLE ;设置段码表指针
MOV A, 51H ;取显示数据
MOVC A, @A+DPTR
MOV 61H, A
MOV DPTR, #TAB2
MOV A, 52H
MOVC A, @A+DPTR
MOV 62H, A
MOV DPTR, #TABLE
MOV A, 53H
MOVC A, @A+DPTR
MOV 63H, A
CLR DI
MOV R3, #8
MOV A, 60H
LOOP1: RRC A
MOV DI, C
CLR CLK
SETB CLK
DJNZ R3, LOOP1
MOV R3, #08H
MOV A, 61H
LOOP2: RRC A
MOV DI, C
CLR CLK
SETB CLK
DJNZ R3, LOOP2
MOV R3, #08H
MOV A, 62H
LOOP3: RRC A
MOV DI, C
CLR CLK
SETB CLK
DJNZ R3, LOOP3
MOV R3, #08H
MOV A, 63H
LOOP4: RRC A
MOV DI, C
CLR CLK
SETB CLK
DJNZ R3, LOOP4
SETB DI
DELAY: MOV R6, #0FFH
DEL: MOV R7, #0FFH
DELA: DJNZ R7, DELA
DJNZ R6, DEL
START24:CLR SCL
NOP
SETB SDA
NOP
SETB SCL
NOP
CLR SDA
NOP
CLR SCL
RET
STOP24: CLR SCL
NOP
CLR SDA
NOP
SETB SCL
NOP
SETB SDA
NOP
CLR SCL
RET
WBYTE: NOP
MOV R3, #8
WBYO: CLR SCL
RLC A
MOV SDA, C
SETB SCL
DJNZ R3, WBYO
CLR SCL
NOP
SETB SCL
NOP
JB SDA, $
CLR SCL
NOP
RET
RBYTE: NOP
MOV R3, #8
RBYO: CLR SCL
NOP
SETB SCL
NOP
MOV C, SDA
RLC A
DJNZ R3, RBYO
CLR SCL
NOP
SETB SDA
NOP
SETB SCL
NOP
RET
DEL10MS: MOV R7, #20D
S2: MOV R6, #250D
S1: DJNZ R6, S1
DJNZ R7, S2
RET
TABLE: DB 03H, 9FH, 25H, 0DH, 99H, 49H, 41H, 1FH, 01H, 09H
TAB2: DB 02H, 9EH, 24H, 0CH, 98H, 48H, 40H, 1EH, 00H, 08H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -