Ich habe einen eigenen I2C Software Slave in C geschrieben. Dieser funktioniert so weit problemlos. Der Vorteil, ich bin nicht an die TWI Pins gebunden, sondern kann zwei beliebige I/O Pins für das I2C nutzen. Beim Atmega32 läuft das auch wie geplant und ohne Probleme auf jedem digitalen Pin, nicht jedoch beim Amtega8. Seltsamerweise funktioniert das selbst implementierte I2C nur bei den TWI Pins des Atmega8. Bei allen anderen I/O Pins nicht. Leider sind die TWI Pins bei den ADCs. Ich benötige alle sechs ADCs und kann daher nicht doppelt belegen. Ist jemandem etwas über Eigenheiten der Atmega8 I/O Pins gekannt? Gibt es etwas, dass zu beachten wäre? Bitte um Ratschläge und Hilfe Herzlichen Dank!!
Zeile 42 Ich hätte eigentlich gedacht, daß man für SW-Slave-I2C nur interruptfähige Pins benutzen kann. Also für große Pinauswahl AVRs mit PCINT (ATmega324 oder 88). Ansonsten muß der Master wirklich sehr schnarchlahm senden. Peter
Mein I2C verwendet keinen Interrupt. Der Master läuft auch schon verdammt langsam. Noch langsamer als eigentlich von der Spezifikation vorgesehen.(9600 bit/s) Das macht aber nichts, weil nicht so viele Daten übertragen werden müssen Das löst mein Problem auch nicht...
@Peter: Entschuldigung, aber was soll mir das jetzt sagen? Kenne ich mich so schlecht aus und die Lösung des Problems ist eigentlich ganz einfach? Im Datenblatt des Atmega8 und Atmega32 stehen bei den digitalen Pins wortwörtliche die gleichen Beschreibungen. Das gibt es doch nicht, dass beim Amtega32 das I2C auf jedem Pin funktioniert und beim Amtega8 geht gar nichts. Es ist wirklich wichtig für mich und ich habe keine Idee woran es liegt. Bitte um Hilfe, danke.
Wir wissen auch nicht woran es liegt, wenn du keinen Sourcecode postest. Schaltplan kann auch nicht schaden, vielleicht hast du da was verbockt. Wenn du uns diese Informationen weiterhin nicht gibts, dann bleibt es beim Fehler in Zeile 42.
@ C++hris (Gast) >@Peter: Entschuldigung, aber was soll mir das jetzt sagen? Lise mal was über Netiquette. UPDVC! MFG Falk
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.