- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 9 von 9

Thema: EEProm Verständnissfrage

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    05.01.2008
    Beiträge
    10

    EEProm Verständnissfrage

    Anzeige

    Praxistest und DIY Projekte
    Hi zusammen,

    kleines Verständnissproblem:

    Wenn ich ein 2404 EEProm verwende, dann muss ich ja die Speicheradrese angeben, an welche stelle im EEProm der Wert gespechert werden soll.

    Gut. Sowei klar.

    Wenn ich jetzt den besagten 2404 hab. Der hat dann 4000 Bit? Durch 8 Also 500 Speicherplätze für jeweils 1 Byte?

    Wenn ja, wie adresier ich dann die Speicherstellen von 256 bis 500? In allen Beispielen wird die Variable für die Speicheradresse als byte angegeben und hier geht der Bereich doch nur bis 255!?

    Wo ist mein Denkfehler?

    Danke und Grüße, Bernd

    PS:Prinzipiell tut Hard-und Software bereits. Es ist nur die Frage welchen EEProm ich verwenden soll....wegen Platz und so.

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    44
    Beiträge
    689
    Wenn der Speicherraum größer als 255 Byte ist gibt es zweites Adressbyte.
    siehe hier : https://www.roboternetz.de/wissen/in...und_I2C_EEprom

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    05.01.2008
    Beiträge
    10
    Also mit High und Low? Auch beim 2404 EEProm? Genau da bin ich mir nicht sicher, weil in allen Beispielen nix davon zu finden ist.

    Danke für deine schnelle Antwort und Grüße, Bernd

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    44
    Beiträge
    689
    Der 24C04 sollte 512 Bytes haben also 2 Adressbytes. Das das im Wiki anders steht kann ich mir nicht erklären. Versuche es doch einmal wirst ja sehen ab er bei Adresse >255 was macht.

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Beiträge
    2.731
    Hi,

    normalerweise sollte der eine 2. I2C Adresse haben, mit der die 2. 256 Byte angesprochen werden !
    Basis-Adresse $A0 der 2. Block ist über $A2 zu erreichen.

    Deswegen kann man auch nur 4 von diesen an einen Bus hängen.

    Deshalb brauchts auch nur ein Adressbyte beim schreiben/lesen.

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    05.01.2008
    Beiträge
    10
    Hi Linux_80

    ja...so hab ich das auch mal nachgelesen. Nur....wie komm ich dann von Bascom aus an die 2. Page hin? Mir fehlt da jeglicher Ansatz das zu programieren

    Weis jemand Rat?

    Beste Grüße und Danke nochmals, Bernd

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    44
    Beiträge
    689
    Wenn das so ist wie linux_80 schreibt is das doch ganz einfach
    Code:
    I2cstart                                  'Start I2C
    I2cwbyte &HA0                             'Sende Slave Adresse für 1ten Speicherblock
    I2cwbyte A                                'Sende Speicheradresse 
    I2cwbyte X                                'Sende Wert
    I2cstop                                   'Stop I2C
    
    
    I2cstart                                  'Start I2C
    I2cwbyte &HA2                             'Sende Slave Adresse für 2ten Speicherblock
    I2cwbyte A                                'Sende Speicheradresse
    I2cwbyte X                                'Sende Wert
    I2cstop                                   'Stop I2C

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    05.01.2008
    Beiträge
    10
    argh grundgütiger Herrgott...manchmal is man ja so vernagelt. DANKE!

    Werd's testen und dann reporten wies gefunkt hat.

    Grüße, Bernd

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    05.01.2008
    Beiträge
    10
    Hi,

    also...getestet und gelöst. Wenn man bei einem 2404 oder wie meiner 24C04 EEporm den vollen Speicherberiech ausnutzen will muss man die Adressen zum lesen schreiben ab den 256. Byte ändern.

    0-255 Byte : &hA0 schreiben und &hA1 zum lesen.

    256-512 Byte : &hA2 schreiben und &A3 zum lesen.

    Danke an die Helfer und schönen Sonntag noch, Bernd

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test