Atmega8: Beliebige Pins für eigenes Software I2C

Gast #1513145
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!!
#1513169
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
Gast #1513665
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...
Gast #1514754
@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.
#1514767
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.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.