logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Dlaczego zapisuje się tylko pierwszy bajt do EEPROMa w 89S8252?

rezonator 17 Wrz 2005 19:41 1127 2
REKLAMA
  • #1 1826795
    rezonator
    Poziom 10  
    Posty: 53
    Pomógł: 1
    Ocena: 1
    Witam
    Mam taki kawałek kodu.
    Chcę zapisać osobno dwa bajty (po bajcie) do eeproma.
    Proszę pouczyć ślepego czemu zapisuje się tylko pierwszy bajt?

    
    WMCON DATA 96h ; watchdog and memory control register
    EEMEN EQU 00001000b ; EEPROM access enable bit
    EEMWE EQU 00010000b ; EEPROM write enable bit
    WDTRST EQU 00000010b ; EEPROM RDY/BSY bit
    
    ; EEPROM write example
    
    orl WMCON, #EEMEN ; enable EEPROM accesses
    orl WMCON, #EEMWE ; enable EEPROM writes
    
    ; zapis pierwszego bajtu
    mov dptr, 00H ; address to write
    mov a, #22 ; data to write
    movx @dptr, a ; write EEPROM
    
    ; zapis drugiego bajtu
    mov dptr, 01H ; address to write
    mov a, #24 ; data to write
    movx @dptr, a ; write EEPROM
    
    
    xrl WMCON, #EEMWE ; disable EEPROM writes
    xrl WMCON, #EEMEN ; disable EEPROM accesses
    
  • REKLAMA
  • Pomocny post
    #2 1827028
    zumek
    Poziom 39  
    Posty: 3352
    Pomógł: 695
    Ocena: 52
    rezonator napisał:
    Witam
    Mam taki kawałek kodu.
    Chcę zapisać osobno dwa bajty (po bajcie) do eeproma.
    Proszę pouczyć ślepego czemu zapisuje się tylko pierwszy bajt?

    Przed zapisaniem bajtu do EEPROM-u , wypadało by sprawdzić czy można to zrobić , tzn sprawdzić czy bit RDY/BSY w rejestrze WMCON jest ustawiony na "1".

    Piotrek
  • #3 1828132
    rezonator
    Poziom 10  
    Posty: 53
    Pomógł: 1
    Ocena: 1
    Opóźnienie między kolejnymi zapisami bajtów to jest odpowiedź na moje pytanie :) dopiero się uczę.

    Dzięki.
REKLAMA