Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
10/23/08 07:53
Read: times


 
#159278 - Here is the WRITEEE code
Responding to: ???'s previous message
I do have a timeout loop, waiting for WIP, a timeout flashes a LED.

;
;
;
WRITEEE:SETB    RNEDATA
        SETB    EE_CS
        SETB    EE_DOUT
        CLR     SCLK
;
        CLR     EE_CS           ;SELECT MEMORY
        MOV     47H,#06H        ;WREN INSTRUCTION
        CALL    EOUT8
        SETB    EE_CS           ;LATCH WREN INSTRUCTION
        NOP
        NOP
;
        CLR     EE_CS           ;SELECT MEMORY
        MOV     47H,#02H        ;WRITE COMMAND
        CALL    EOUT8
        MOV     47H,DPH         ;LOAD HIGH 8 BITS OF ADDRESS
        CALL    EOUT8
        MOV     47H,DPL         ;LOAD LOW 8 BITS OF ADDRESS
        CALL    EOUT8
        MOV     47H,48H         ;THE DATA TO BE WRITTEN
        CALL    EOUT8
        SETB    EE_CS           ;LATCH DATA INTO MEMORY
        CALL    ELOOP           ;LET CS SETTLE BEFORE WIPWAIT CHANGE
        CALL    WIPWAIT
        RET
;
;
;
;*****************************************
;*****************************************
;IF WIP FLAG = 1 A WRITE IS IN PROGRESS
;WAIT FOR THE WIP TO GO LOW BEFORE WRITING
;TO MEMORY AGAIN.
;TIMEOUT TO ERROR IF BOTH 38H AND 39H
;REACH ZERO BEFORE WIP FLAG CHANGE SEEN
;THE YELLOW FLASHING LED AT "BADMEM"
;INDICATES A PROBLEM WITH THE MEMORY CHIP
;*****************************************
;*****************************************
;
;
WIPWAIT:MOV     38H,#0FFH       ;SET UP 2 BYTE COUNT DOWN TIMER
FILOOP: MOV     39H,#0FFH       ;IF TIMER OVERFLOWS THEN MEMORY CHIP DID NOT RESPOND
SELOOP: CLR     EE_CS           ;SELECT MEMORY
        MOV     47H,#05H        ;READ STATUS REGISTER
        CALL    EOUT8
        NOP
        NOP
        CALL    EIN8            ;READ INTO 46H
        SETB    EE_CS           ;UNSELECT MEMORY
        MOV     A,46H
        JNB     ACC.0,WIPOK     ;IF WIP FLAG SET THEN WRITE OK
        DJNZ    39H,SELOOP
        DJNZ    38H,FILOOP
        JMP     BADMEM          ;COUNTDOWN TIMER TIMED OUT
WIPOK:  RET
;
;
;


List of 16 messages in thread
TopicAuthorDate
stacking numbers in memory code problem            01/01/70 00:00      
   does readee put its value in 46H?            01/01/70 00:00      
      readee reads memory            01/01/70 00:00      
         Your code looks good to me            01/01/70 00:00      
            it looks awful to me            01/01/70 00:00      
               it was indented            01/01/70 00:00      
                  like this            01/01/70 00:00      
                  Instructions            01/01/70 00:00      
                     yes, yes, ok            01/01/70 00:00      
                        Guided/unguided?            01/01/70 00:00      
            EEPROM not final            01/01/70 00:00      
   Hard coded values            01/01/70 00:00      
      that can't be it            01/01/70 00:00      
         Are you 199% sure??            01/01/70 00:00      
            Here is the WRITEEE code            01/01/70 00:00      
               HA! figured it out            01/01/70 00:00      

Back to Subject List