Hi liebe Experten, kurz vorweg... möglicherweise ist diese Frage aufgrund mangelnden Verständnisses absurd, aber ich versuchs trotzdem. ;-) Ich habe eine Schaltung mit einem I2C-EEPROM und dem besagten myC. Beide sind parallel mit einer Schnittstelle verbunden, welche an einen Lancos-ähnlichen bzw. Si Prog-kompatiblen Adapter für serielle Schnittstelle geht. Ich habe eine Bibiliothek zum Umgang mit EEPROMs über I2C geschrieben, welche ich erfolgreich mit dem EEPROM nutzen kann. Die Speicher des myC sind natürlich mit PonyProg oder avrdude ausles- und beschreibbbar. Soweit, so gut... Die Daten für das I2C-Protokoll des EEPROM konnte ich dem Datenblatt entnehmen, d. h. Zugriffsadresse, Adresslänge etc... gleiches kann ich in dem Datenblatt für das Tiny26 nicht finden. Ist das interne 128 Byte EEPROM des Tiny26 also nicht per I2C auslesbar? Wenn doch, wie gehts? ;-) Wenn nicht, welche Alternativen gibt es, die sich "relativ" einfach implementieren lassen bzw. wie machen es avrdude, PonyProg und Konsorten?
Der Tiny26 kann nur Software-I2C (Bei Atmel TWI genannt). Es wäre also ein Programm für den Tiny26 zu schreiben, welches das interne EEPROM über TWI zur Verfügung stellt. Machbar ist das. Die 'Konsorten' sprechen den Tiny26 über die Programmierschnittstelle an, also nicht I2C. Grüße, Peter
Datenblatt Seite 19, da findest du eigentlich alles was du zum Thema EEPROM brauchst. Ansonsten, gibt es AVR-Tutorial: Speicher: EEPROM 2 und AVR-GCC-Tutorial: EEPROM im wiki.
Hi, danke für die schnellen Antworten... Grundsätzlich geht also der I2C-/TWI-Zugriff auf das EEPROM des Tiny... Seite 19 habe ich gar nicht im Datenblatt, das hört bei Seite 18 auf... ;-) Ich guck mal, ob ich noch ein ausführlicheres Datenblatt finde. Nachtrag: Habe gerade den 185-seitigen Schinken gefunden... ;-)=
Das AVR-interne EEPROM wird direkt, also über AVR-interne I/O-Register (eearl, eearh, eedr, eecr) angesprochen. Es ist also kein Umweg über eine bitserielle Kommunikation (I²C, SPI, 1wire) erforderlich. KH
Hi, soweit verstanden... ich lese das EEPROM vom myC im myC auch ohne Umwege aus, um z. B. Kalibrierungsparameter dem Programm im myC bekannt zu machen. Ich möchte aber diese Kalibrierungsparameter in dem internen EEPROM am liebsten unter Verwendung meiner I2C-/TWI-Bibliothek, welche ich u. a. zum Auslesen der Daten aus dem externen EEPROM auf der Platine benutze, aus einem externen Programm, welches also nicht das im myC ist, verändern können. Dies soll zu Folge haben, dass die Kalibirierungsparameter für den myC "einfach" über z. B. ein grafisches Frontend auf einem PC geändert werden können. Ich als Nicht-Elektronikingenieur habe halt problemorientierte Sichtweisen und möchte am liebsten alles mit dem kleinsten gemeinsamen Nenner "I2C/TWI" machen, um mich nicht in etwas anderes einarbeiten zu müssen und dieses dann auch noch testen zu müssen... :-)
Das ist durchaus machbar und klingt sinnvoll. In der Codesammlung lassen sich ein paar Implementierungen für einen I2C-Slave finden, siehe beispielsweise Beitrag "attiny USI Slave Implementierung".
Ahhhh... super, danke! Auf die Idee die Suchfunktion mit "attiny USI slave" zu füttern wäre ich nie gekommen... ;-)= Ich werd das mal versuchen zu adaptieren, vielen Dank nochmal.
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.