Pullups bzw. -downs brauchst Du z.B., wenn Du einen Taster
an einen Input vom Microcontroller anschließen willst.
Der Widerstand ist dazu da, den Input vom Controller
auf einen definierten Spannungswert zu legen, solange der Taster
NICHT gedrückt ist.
Beispiel für einen Pullup:
+--------------- +5V Versorgungsspannung
|
---
| |
| | 3,3 Kiloohm Pullup
| |
---
|
|
+----------> zum Input vom Microcontroller
|
|
|
/ Taster
/
|
|
|
--- Masse
Solange der Taster nicht gedrückt ist, würde ohne Pullup der
Eingang des Microcontrollers "in der Luft" hängen und irgend-
welche wilden Spannungswerte annehmen. Das könnte dazu führen,
daß das Programm plötzlich irgendwann meint, der Taster sei gedrückt
worden. Damit der Input fest auf einem bestimmten Spannungswert
liegt, solange der Taster nicht gedrückt ist, nimmt man einen Pullup.
Mit einem Pulldown funktionierts ebenso, nur sind hier im Gegensatz
zu der gezeichneten Schaltung Taster und Widerstand vertauscht
und der Widerstand zieht i.d.R. gegen Masse.
AVRs haben interne zuschaltbare Pullups, die man für diesen
Zweck verwenden kann. Wie das geht, siehe Tutorial oder Datenblatt.
Wenn Du einen externen Pullup verwendest: ich hab immer 3,3 kOhm
genommen und bisher noch keinen Ärger gehabt. Geht aber sicher auch
mit höheren Werten. Bin mir nicht sicher, aber AFAIK sind die internen
Pullups irgendwo bei 100 kOhm?!?
Greetz
kmt