Hallo, nachdem ich den Artikel Ausgangsstufen Logik-ICs bei den Grundlagen gefunden habe stellen sich nun ein paar Fragen: 1) In welche Kategorie faellt ein AVR Mikrcontroller? Tristate? 2) Wie funktionieren die Eingaenge oder was passiert intern wenn ich den pinMode von input zu output wechsle? 3) Angenommen ich haenge einen IC an den Mikrocontroller, z.B einen Portexpander mit I2C. Wie kann ich nun feststellen ob ich da noch Pullupwiderstaende an SDA und SCL haengen muss? Gruss, Otto
1 Tristate 2 Eingang hochohmig, interner PullUp möglich, Ausgang bis 40mA sourcen und sinken. 3 siehe Datenblatt, immer notwendig Das studieren des Datenblatts ist unumgänglich.
Atmel macht sich gewaltige Aufwände, ordentliche und umfangreiche Datenblätter bereitzustellen. Wieso benutzt du das nicht? Da sind tolle Beschreibungen und Zeichnungen über x Seiten drin, nur über die Portpins!
5 zustände kent der Port: eingang, eingang+ pullup, ausgang low, ausgang high, kaputt
Otto schrieb: > Wie kann ich nun feststellen ob ich da noch > Pullupwiderstaende an SDA und SCL haengen muss? Du könntest entsprechende AppNotes lesen. Das sind Anwendungsbeschreibungen, und da gibts sicher auch eine für den TWI/I²C Bus. Der interne Pullup ist bestenfalls ein lauer Ersatz für externe I²C-Pullups, denn derist eingentlich zu hochohmig für schnelle Pegelwechsel. Er dient einfach dafür, dass ein offener Eingang nicht herumfloatet...
Nach mehrstündiger Fehlersuche gelernt: mit internen pullups arbeitet der I2C-Bus (SPI-Bus)des atmega8 nicht richtig. externe 4k7- pullup -Widerstände lösen das Problem.
I2C-Pins am Mikrocontroller (I2C_CLOCK und I2C_DATA) sind als Open-Drain-Ausgänge zu konfigurieren. Beide Leitungen des Busses sind mittels Pull-Up-Widerstände auf die gewünschte Logik(betriebs)spannung zu legen. In der I2C-Spezifikation gibt es eine Darstellung (Kurve) welcher Wert der Pull-Up-Widerstand haben sollte bei der entsprechenden PullUp-Spannung. Bitte vergiss die 100R-Serienwiderstände zwischen I2C-Device und Bus nicht.
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.