📄 iic.asm
字号:
;-----------------------------------------------------------
PUBLIC _WRITE_DS1302
PUBLIC _READ_DS1302
PROC SEGMENT CODE
RSEG PROC
SCL BIT P3.4 ;IIC时钟端口
SDA BIT P3.2 ;IIC数据端口
RST BIT P3.1
;---------------------------------------------------------------------
_WRITE_DS1302: ;写一个字节到DS1302指定地址参数:地址、写入数据
MOV R4,#8D
CLR RST
CLR SCL
SETB SDA
SETB RST
MOV A,R7
WRITE_DS13020: RRC A
MOV SDA,C
NOP
NOP
SETB SCL
NOP
NOP
CLR SCL
DJNZ R4,WRITE_DS13020
MOV R4,#8D
MOV A,R5
WRITE_DS13021: RRC A
MOV SDA,C
NOP
NOP
SETB SCL
NOP
NOP
CLR SCL
DJNZ R4,WRITE_DS13021
CLR RST
CLR SCL
RET
;---------------------------------------------------------------------
_READ_DS1302: ;从DS1302中读一个字节参数:地址、返回数据
MOV R4,#8D
CLR RST
CLR SCL
SETB SDA
SETB RST
MOV A,R7
READ_DS13020: RRC A
MOV SDA,C
NOP
NOP
SETB SCL
NOP
NOP
CLR SCL
DJNZ R4,READ_DS13020
SETB SDA
MOV R4,#8D
CLR A
READ_DS13021: MOV C,SDA
RRC A
SETB SCL
NOP
NOP
CLR SCL
NOP
NOP
DJNZ R4,READ_DS13021
CLR RST
CLR SCL
MOV R7,A
RET
;---------------------------------------------------------------------------------------------
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -