-
-
Erfahrener Benutzer
Roboter Genie
Der Code von oben wirkt sich im Prinzip auf alle Prozessorpins aus, ehergesagt auf alle Port-Pins. Also alles, was im Schaltplan auf der rechten Seite des Prozessorsymbols liegt. Die Pins sind aber, wie Du an den in Klammern stehenden Sachen sehen kannst, doppelt belegt. Du kannst also jeden Pin als I/O verwenden, oder aber Du nutzt die Altenativ-Funktion, die in Klammern steht (ADC, I2C-Bus, UART...)
PD0 und PD1 sind übrigens die UART.
Sobald Du die über das entsprechende Register (UCSRB) die UART einschaltest, fallen PD0 und PD1 als I/O-Pins weg und funktionieren als RxD und TxD.
askazo
-
Erfahrener Benutzer
Roboter-Spezialist
Also SDA und SCL wäre z.B. Ports für den I2C-Bus, wenn ich das entsprechende Register einschalte. Richtig?
Was ist dass dieses UDR, an das man das Zeichen übergibt? Auch wieder ein Register, ok, aber wie steht das in Verbindung mit TX am Prozessor? Das gleiche?
mfg
jagdfalke
-
Erfahrener Benutzer
Roboter Genie
Ja, genau richtig. So funktioniert das mit den alternativen Funktionen.
Das UDR Register ist das Datenregister für die UART. Wenn Du Daten senden willst, schreibst Du sie dort hinein. Wenn Du welche empfängst, stehen die empfangenen Daten in diesem Register zum Auslesen bereit.
askazo
-
Erfahrener Benutzer
Roboter-Spezialist
Also sind diese 2 Pins zwar schon für den Datentransfer zuständig, werden aber vom Programmierer nicht direkt angesprochen um was zu senden bzw zu empfangen. Das macht der Prozessor dan selber, ja?
Lassen sich die Bits für RX und TX eigentlich noch manuell setzten wenn UART aktiviert wird? Falls nein, was macht er dann, gibts ne Fehlermeldung o.ä. ?
mfg
jagdfalke
-
Erfahrener Benutzer
Roboter Genie
Ja, den Datentransfer organisiert der Prozessor selber.
RxD und TxD lassen sich nicht manuell setzten, wenn die UART eingeschaltet ist. Du kannst zwar das PORT-Register beschreiben, aber für die beiden UART-Pins wird das einfach ignoriert.
askazo
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen