📄 at24.h
字号:
;===============================================================================
;
; headfile for at24
; R_AddrAt2404: 000h~078H ;31
; 100H~1F0 ;61
; R_AmCh R_FmCh
; R_AddrAt2404
; R_At2404_Dat1
; R_At2404_Dat2
; R_At2404_Dat3
; R_At2404_Dat4
; Device Address
;24C02A 2K 256 * 8 1010 A2 A1 A0 R/W(1/0)
;24C04A 4K 512 * 8 1010 A2 A1 P0 R/W(1/0)
;24C08A 8K 1024 * 8 1010 A2 P1 P0 R/W(1/0)
;24C16A 16K 2048 * 8 1010 P2 P1 P0 R/W(1/0)
;ok
;===============================================================================
StoreToAt24:
CALL SetI2cStart
MOVLW 0A0H ;DEVICE ADDR 00H
MOVWF DataB0
goto L_StoreTo2404_Sub
StoreToAt24_B:
CALL SetI2cStart
MOVLW 0A2H ;DEVICE ADDR 100H
MOVWF DataB0
L_StoreTo2404_Sub:
CALL WriteI2cEightBits
MOVFW R_AddrAt2404 ;WORD ADDR
MOVWF DataB0
CALL WriteI2cEightBits
MOVFW R_At2404_Dat1 ;data 1
MOVWF DataB0
CALL WriteI2cEightBits
MOVFW R_At2404_Dat2 ;data 2
MOVWF DataB0
CALL WriteI2cEightBits
MOVFW R_At2404_Dat3 ;data 3
MOVWF DataB0
CALL WriteI2cEightBits
MOVFW R_At2404_Dat4 ;data 4
MOVWF DataB0
CALL WriteI2cEightBits
CALL SetI2cStop
RET
;------------------------------------------------------------------------------------
;
;
;
;------------------------------------------------------------------------------------
;24 PAGE 0
ReadFromAt24:
CALL SetI2cStart
MOVLW 0A0H ;DEVICE ADDR WR
MOVWF DataB0
CALL WriteI2cEightBits
MOVFW R_AddrAt2404 ;WORD ADDR
MOVWF DataB0
CALL WriteI2cEightBits
CALL SetI2cStart
MOVLW 0A1H ;DEVICE ADDR RD
MOVWF DataB0
CALL WriteI2cEightBits
goto L_ReadFromAt24_Sub
;24 PAGE 1
ReadFromAt24_B:
CALL SetI2cStart
MOVLW 0A2H ;DEVICE ADDR WR
MOVWF DataB0
CALL WriteI2cEightBits
MOVFW R_AddrAt2404 ;WORD ADDR
MOVWF DataB0
CALL WriteI2cEightBits
CALL SetI2cStart
MOVLW 0A3H ;DEVICE ADDR RD
MOVWF DataB0
CALL WriteI2cEightBits
L_ReadFromAt24_Sub:
CALL ReadI2cEightBits
CALL SendI2cAck
MOVFW DataB0
MOVWF R_At2404_Dat1
CALL ReadI2cEightBits
CALL SendI2cAck
MOVFW DataB0
MOVWF R_At2404_Dat2
CALL ReadI2cEightBits
CALL SendI2cAck
MOVFW DataB0
MOVWF R_At2404_Dat3
CALL ReadI2cEightBits
CALL SendI2cNoAck
MOVFW DataB0
MOVWF R_At2404_Dat4
CALL SetI2cStop
RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -