Guten Tag, da ich nicht weiß an wen ich mich wenden soll, beschreibe ich das Problem mal hier: Also im Tutorial zum UART http://www.mikrocontroller.net/articles/AVR-Tutorial:_UART gibt es im ersten Beispielprogramm einen Fehler, der sich durch die anderen Programme durchzieht, es geht um die Berechnung wegen der Übertragungfehler mithilfe der Baudrate und der Frequenz des µC Code: " .equ F_CPU = 4000000 // Systemtakt in Hz .equ BAUD = 9600 // Baudrate // Berechnungen .equ UBRR_VAL = ((F_CPU+BAUD*8)/(BAUD*16)-1) // clever runden .equ BAUD_REAL = (F_CPU/(16*(UBRRVAL+1))) // Reale Baudrate .equ BAUD_ERROR = ((BAUD_REAL*1000)/BAUD-1000) // Fehler in Promille .if ((BAUD_ERROR>10) || (BAUD_ERROR<-10)) // max. +/-10 Promille Fehler .error "Systematischer Fehler der Baudrate grösser 1 Prozent und damit zu hoch!" .endif " der Fehler ist in diesen zeilen: " .equ UBRR_VAL = ((F_CPU+BAUD*8)/(BAUD*16)-1) // clever runden .equ BAUD_REAL = (F_CPU/(16*(UBRRVAL+1))) // Reale Baudrate " Dort müsste es in der zweiten zeile ebenfalls UBRR_VAL statt UBRRVAL, doch nun der eigentliche Fehler, will man die Seite bearbeiten, steht das im "Quellcode" der Seite alles richtig. Ich hoffe mal, dass das kein altbekannter Fehler ist, und ich mich jetzt zum Buhmann gemacht habe. Gruß Björn
Danke für die Mitarbeit, Björn. Diese Stelle zum Überprüfen des Baudratenfehlers kam mehrfach vor, teilweise korrekt und teilweise falsch. Habe es im Tutorial korrigiert. Zu beachten ist jedoch, dass in den downloadbaren ASM-Listings eine ältere (?) Version OHNE Überprüfung des Baudratenfehlers angegeben ist.
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.