|
Navigation: Bibliotheken > RS232 > Serial_Init |
![]() ![]()
|
Serielle Funktionen Beispiel
Syntax
void Serial_Init(byte serport,byte par,word divider);
Sub Serial_Init(serport As Byte,par As Byte,divider As Word)
Beschreibung
Die serielle Schnittstelle wird initialisiert. Der Wert par wird durch Oderieren der vordefinierten Bitwerte zusammengestellt. Man oderiert erst Zeichenlänge, dann Anzahl der Stopbits und dann Parity. Z.B. "SR_7BIT | SR_2STOP | SR_EVEN_PAR" für 7 Bit pro Zeichen, 2 Stop Bit und gerade Parität (siehe auch Beispiel). Diese Werte sähen in BASIC Syntax wie folgt aus: "SR_7BIT Or SR_2STOP Or SR_EVEN_PAR". Die Baudrate wird als Teilerwert angegeben, wie in der Tabelle spezifiziert.
Man kann den DoubleClock Modus des Atmel AVR einschalten. Dies geschieht, wenn das High Bit im Teiler gesetzt wird. Beim DoubleClock muß gegenüber der normalen Tabelle der Teiler verdoppelt werden, um die gleiche Baudrate zu erhalten. Dafür sind dann "krumme" Baudraten besser einstellbar. Z.B. MIDI: Der neue Wert SB_MIDI (=0x803a) liegt jetzt sehr nahe an 31250baud. Beispiel für 19200baud: Der Teiler für 19200baud ist 0x002f. Für den DoubleClock Modus verdoppelt man nun den Teiler (= 0x005e). Nun das Hi-Bit setzen, und man kann anstatt 0x2f auch 0x805e für 19200baud benutzen .
Parameter
serport Schnittstellennummer (0 = 1.serielle, 1 = 2.serielle etc..)
par Schnittstellenparameter (siehe Tabelle)
divider Baudrateninitialisierung mittels Teiler (siehe Tabelle)
Tabelle par Definitionen:
Definition |
Funktion |
|
|
SR_5BIT |
5 Bit Zeichenlänge |
SR_6BIT |
6 Bit Zeichenlänge |
SR_7BIT |
7 Bit Zeichenlänge |
SR_8BIT |
8 Bit Zeichenlänge |
|
|
SR_1STOP |
1 Stop Bit |
SR_2STOP |
2 Stop Bit |
|
|
SR_NO_PAR |
no Parity |
SR_EVEN_PAR |
even Parity |
SR_ODD_PAR |
odd Parity |