Forum: Gesperrte Threads ATmega328p @ 8Mhz Standalone UART Baudrate einstellen?


von Hugo (Gast)


Lesenswert?

Hallo zusammen,

ich bräuchte mal bitte eure Hilfe bei einem Projekt.
Habe einen ATmega328P-PU mit einem Arduino Bootloader gebrannt. (Die 
Breadboard 8Mhz Variante)
Hat auch soweit funktioniert und der Chip macht, was er soll.
Ich hab allerdings ein Problem mit der seriellen Schnittstelle. Ich kann 
den Chip mit internem 8Mhz Takt nicht mit UART ansprechen. Der Chip 
reagiert überhaupt nicht.
Mein erster Gedanke war, dass mit den 8Mhz die Standard-Baudrate (Uno 
Bootloader standardmäßig bei 115200) nicht mehr funktioniert. Hab ein 
Weilchen rumprobiert, andere Baudraten gehen aber leider auch nicht. 
(Falls die 8Mhz Bootloader-Variante eine andere Baudrate hätte)
Habe daraufhin den Chip umgefused auf externe Clock.
Mit 16Mhz Oszillator funktioniert die Kommunikation mit 115200 ohne 
irgendwelche anderen Softwareänderungen problemlos.
Gegencheck: Zurückgestellt auf 8Mhz internal Clock -> keine Reaktion 
über UART.
Jetzt meine Frage, wie ich den Chip dazu bekomme auch mit 8Mhz eine 
serielle Kommunikation zuwege zu bringen. (Brauche die Taktpins, also 
externer Takt ist keine Alternative)
Ich nehme an, mit 8Mhz (der interne Takt soll ja auch relativ ungenau 
sein) schafft der einfach nicht die Standard-Baudrate von 115200. Aber 
wie kann ich das ändern? Geht das im Bootloader? Und wenn ja, wie?
Die Baudrate ist mir fast egal, kann auch eine 1200er sein, da hab ich 
keine Ansprüche. Das sollte dann ja auch mit 8Mhz funktionieren.
Danke schon mal:)

: Verschoben durch Moderator
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?


Dieser Beitrag ist gesperrt und kann nicht beantwortet werden.