eeprom_low.a51

来自「This is IR (Infra-Red) learn module for 」· A51 代码 · 共 56 行

A51
56
字号
;
;  FILE:
;     eeprom.a51 (rev. 1.1 - 14.04.2006)
;
;  PROJECT:
;     IR Learn System 
;  
;  DESCRIPTION:
;     Low-level routines for Data EEPROM
;

NAME    EEPROM_LOW

; Set up Code Segment and exports
EEPROM_LOW      SEGMENT CODE
RSEG            EEPROM_LOW

                PUBLIC  _EEPROM_Put     ; Send one byte to EEPROM
                PUBLIC  _EEPROM_Get     ; Get one byte from EEPROM

; EEPROM registers
EECON           EQU     0D2h

; Send one byte to EEPROM
_EEPROM_Put:    mov     ACC,R7 
                mov     DPL,R5
                mov     DPH,R3
                mov     R7,EECON
                push    ACC
                mov     ACC,R7
                mov     R5,ACC
                orl     ACC,#2
                mov     R7,ACC             
                pop     ACC
                mov     EECON,R7        ; EEE=1 (Switch to EEPROM space)
                movx    @DPTR,A
                mov     EECON,R5        ; EEE=0 (Switch to XRAM space)
                ret

; Get one byte from EEPROM
_EEPROM_Get:    mov     DPL,R7
                mov     DPH,R5
                mov     R7,EECON
                push    ACC
                mov     ACC,R7
                mov     R5,ACC
                orl     ACC,#2
                mov     R7,ACC             
                pop     ACC
                mov     EECON,R7        ; EEE=1 (Switch to EEPROM space)
                movx    A,@DPTR
                mov     EECON,R5        ; EEE=0 (Switch to XRAM space)
                mov     R7,A
                ret

                END

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?