Forum: Mikrocontroller und Digitale Elektronik Atmega EEPROM über I2C per USB schreiben


von Christian S. (chris02)


Lesenswert?

Hallo zusammen,

ich würde gerne bei einem ATMega32L (TFPQ) das EEPROM per I2C von einem 
PC via USB beschreiben/lesen.

Dieser Aufbau ist so gegeben, sodass ich hier keinen Einfluss habe auf 
SPI zu gehen.

Meine erste Idee war der China 24Cxx I2C USB Programmer, welcher aber 
nur externe EEPROMs gelistet hat. Leider habe ich damit keine Verbindung 
bekommen.

Habt ihr eine Idee wie ich das EEPROM (via I2C) per USB schreiben/lesen 
kann? Gibt es hier eine andere (fertige) Alternative, z.B. open Source 
oder bei Aliexpress?

Viele Grüße
Chris

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Du kannst einen AVR nur per ISP (im Prinzip ein SPI-Protokoll) oder
per JTAG programmieren, und was anderes als Programmieren ist das
Beschreiben dessen EEPROMs erstmal nicht.

Wenn du das über I²C machen willst, geht das nur mittels auf dem AVR
laufender Software, die das selbst erledigt.

von Peter D. (peda)


Lesenswert?

Christian S. schrieb:
> Meine erste Idee war der China 24Cxx I2C USB Programmer, welcher aber
> nur externe EEPROMs gelistet hat.

Ist auch kein Wunder, ein AVR läßt sich nicht über I2C programmieren.
Du müßtest für den AVR ein Programm schreiben, welches einen I2C-EEPROM 
emuliert.

von Jim M. (turboj)


Lesenswert?

Christian S. schrieb:
> ich würde gerne bei einem ATMega32L (TFPQ) das EEPROM per I2C von einem
> PC via USB beschreiben/lesen.

Wieso I²C und nicht ganz normal via ISP und z.B. avrdude?

Peter D. schrieb:
> Du müßtest für den AVR ein Programm schreiben, welches einen I2C-EEPROM
> emuliert.

Einen I²C Slave auf Atmel zu programmieren würde ich mir 2x überlegen, 
insbesondere nach dem Studium der Errata von TWI Hardware.

Und wenn ich sowieso ein passendes Programm im µC brauche, kann ich 
normalerweise viel einfacher per UART arbeiten.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Jim M. schrieb:
> Einen I²C Slave auf Atmel zu programmieren würde ich mir 2x überlegen,
> insbesondere nach dem Studium der Errata von TWI Hardware.

War das beim alten ATmega32 so mies?

Auf dem ATmega128RFA1 habe ich mal einen Slave programmiert, habe das
jetzt nicht als traumatische Erfahrung in Erinnerung. ;-)

von Christian S. (chris02)


Lesenswert?

Danke für eure Infos.

Der Atmega ist schon programmiert, mit einem mir nicht bekannten 
Programm. Dann wird dieser auch so programmiert sein, dass sich dieser 
das EEPROM dann selber schreibt. Aber ohne die Kommunikation zu kennen 
sehe ich das nicht als Lösung.

Habe mir gerade eine Alternative ausgeguckt. Ist mit überschaubarem 
hardware Aufwand verbunden und geht dann ganz normal per SPI.

von Oliver S. (oliverso)


Lesenswert?

Jörg W. schrieb:
> War das beim alten ATmega32 so mies?

Eigentlich nicht. Probleme gabs eher mit Multimaster-Betrieb.

Oliver

von Peter D. (peda)


Lesenswert?

Christian S. schrieb:
> Der Atmega ist schon programmiert, mit einem mir nicht bekannten
> Programm. Dann wird dieser auch so programmiert sein, dass sich dieser
> das EEPROM dann selber schreibt.

Typisch werden die Lockbits gesetzt sein, d.h. ein Zugriff auf 
Flash/EEPROM ist nur nach Löschen des gesamten Chips möglich.
Woher weißt Du überhaupt, daß der EEPROM genutzt wird und was darin in 
welchem Format abgelegt wird?

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
Noch kein Account? Hier anmelden.