Forum: Mikrocontroller und Digitale Elektronik Frage zu Mikrocontroller Ein- und Ausgaengen


von Otto (Gast)


Lesenswert?

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

von Hubert G. (hubertg)


Lesenswert?

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.

von Flip B. (frickelfreak)


Lesenswert?

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!

von Philipp (Gast)


Lesenswert?

5 zustände kent der Port: eingang, eingang+ pullup, ausgang low, ausgang 
high, kaputt

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

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...

von Peter R. (pnu)


Lesenswert?

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.

von govivu49 (Gast)


Lesenswert?

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