-
-
Mit DdrD definierst du, ob Port D als Input oder Als Output agieren soll.
Mit Ddrd = &B0000001 sagst du
PD0 = 1 = Output
PD1-7 = 0 = Input
Mit PortD definierst du bei Ausgängen, ob sie an oder aus sind, bei Eingängen, ob der interne PullUpWiderstand eingeschaltet werden soll oder nicht.
Mit Portd = &B11111111 werden bei PD1-7 die internen PullUp-Widerstände eingeschaltet und bei PD0 liegt Strom an.
Wenn du also ne binäre Zahl hast, dann stellt sie von rechts nach links die logischen Werte der Pins dar:
<table height="50" border="1" top-margin="0">
<tr>
<td>&b</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
</tr>
<tr>
<td>Pin</td>
<td>7</td>
<td>6</td>
<td>5</td>
<td>4</td>
<td>3</td>
<td>2</td>
<td>1</td>
<td>0</td>
</tr>
</table>
Eigentlich dürfte die LED an PD0 jetzt aber nur leuchten, wenn sie gegen Masse geschaltet sind.
Normal sollten sie aber gegen +5V geschaltet, weil der mikroController gegen Masse 20mA schalten kann, gegen Vcc jdeoch nur 3mA.
Schlagt mich, wenn ich Mist erzähle, ich fang auch erst gerade an
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen