Hallo Habe eine 128 Mega mit 2 hardware Uarts Wie initialisere ich die UART 0 und 1. Mit 4800 Baud 8,n,1 es sind zwar immer beispeile vorhanden im forum aber alle nur für meag 8 oder 32. gibt es einen link wo es narrensicher erklärt wird . danke
Ja habe ich aber wie kommt man auf UCSR0C |= (1<<URSEL)|(3<<UCSZ0); winavr sagt rs232.c:15: error: `URSEL' undeclared (first use in this function) wie errechnet man die stopbits parität usw. in c für i386 gibt es ein termios.h und die ist bombastisch beschrieben und einfach zu nutzten. hier sehe ich nicht durch es ist nirgens beschrieben warum es UCSR0C heisen soll und nicht UCSRC. Ich kann mir nur denken das 0 für UART 0 und 1 für UART 1 ist.
oh man, oh man... die bits berechnet dir die hardware!!!!!!!!!
"in c für i386 gibt es ein termios.h und die ist bombastisch beschrieben und einfach zu nutzten." Ist beim AVR auch bombastisch beschrieben, sogar mit C-Beispielcode, das nennt sich Datenblatt. Peter
Ansonsten als Faustformel: 8N1 ist das Standardframing der U[S]ART eines jeden AVRs, dafür muss man gar nichts tun. Es genügt, wenn du den Vorteiler für deine Baudrate in UBRnL (und ggf. UBRnH) einträgst, UCSRnC musst du nicht anfassen. Wenn du keine Lust hast, den Vorteilerwert selbst zu berechnen, enthält das Datenblatt Beispiele für gängige Prozessorfrequenzen und Baudraten. Aber ohne die Fähigkeit, die Datenblätter zu lesen, wirst du wohl nicht wirklich weit kommen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.