Hallo alle zusammen! Ich habe wiedereinmal ein Problem. Diesmal handelt es sich um die Ansteuerung eins EEPROM's (64kB x8) von st. Die genaue Typenbezeichnung lautet: M24512-W Die Routinen zur ansteuerung irgendwelcher Geräte über i2c habe ich selbst gemacht, bei einem 8bit Portexpander funktionierten sie auch schon (lesen und schreiben) nur bei der ansteuerung des eeproms hackt's. Ich habe mit folgendes überlegt: - schreiben von einem Byte: - Unterprogramm dem ich die Geräteadresse, die Speicheradresse das Byte übergebe. int i2c_eep_write_byte(unsigned char DEV_ADR, unsigned int EEP_ADR, unsigned char byte) schreiben von einer Page(laut DB 128 Bytes aufeinmal): - Unterprogramm dem ich die Geräteadresse, die Speicheradresse des ersten Bytes, Pointer auf die zu schreibenden Bytes, und die Anzahl der Bytes übergebe. Das EEPROM selbst erhöht den Adresszeiger intern um Eins sobald das Byte übernommen wurde. int i2c_eep_write_page(unsigned char DEV_ADR, unsigned int EEP_ADR, unsigned char *byte, unsigned char n) Ich bin mier aber nicht sicher ob die verwendung eines Pointers in der Form korrekt ist. In der Beziehung lasse ich mich sehr gerne belehren. - Unterprogramm, mit dem ich einen Teil des EEPROM's auslesen kann. Dem übegebe ich wieder die Geräteadresse, die Speicheradresse und die Anzahl der zu lesenden Bytes. unsigned char *i2c_eep_read_sequence(unsigned char DEV_ADR, unsigned int EEP_ADR, unsigned char n_r) Bei der Rückgabe wollte ich einen Pointer auf das Datenarray, welches im UP mit den Daten eingelesen wurde, zurückgeben. Auch hier wieder weiß ich nicht ob meine Pointerverwendung sinnvoll ist. Auch habe ich noch ein Problem die Daten zu überprüfen. Ich kann Sie vom EEPROM nur über Zwischenspeichern über das AVR EEPROM in PonyPorg auslesen. Ziemlich umständlich eben, ich weiß also nie ob der Fehler beim schreiben oder beim Lesen des i2c eeproms auftritt. Im Großen und ganzen vermute ich den Fehler aber in meiner "Pointervergewaltigung". Ich bin für jede Hilfe und Belehrung dankbar! Schöne Grüße philipp
Und hier noch der verschollenen Anhang! grüße philipp
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.