Hallo, ich möchte ein Händie (Siemens ME45) von einem ATMEGA16 über USART ansteuern lassen. Der ATMEGA16 hat durch einen externen Quarz eine Taktfrequenz von 4 MHz. Lt. AVR-Manual könnte man z.B. eine Baudrate von 19200 einstellen, wenn man unter 1% Baudratenfehler liegen möchte. Das Händie, probehalber von Hyperterminal angesprochen, bevorzugt 115200 Baud, da werden schön lesbare Zeichen hin und her übertragen. Und nun? Muß man man die USART-Verbindung über die serielle Schnittstelle vergessen oder gibt es da spezielle Tricks? Viele Grüße Alexander
nimm einen anderen Quarz (7,3-irgendwas) und stell 115200 Baud ein (s. Datenblatt ATmega16) oder nimm die UART library von Peter Fleury (http://jump.to/fleury) Mario
Mario Grafe wrote: oder nimm die UART library von Peter Fleury > (http://jump.to/fleury) > > Mario Kann man mit Fleury's Software und seinen Ringpuffern die Schwierigkeiten mit nicht übereinstimmenden Baudraten umgehen? Als jemand, der sich schwer tut, die Sache auf Anhieb nachzuvollziehen, scheint es mir so. Ich lese, es werden UART_Buffer_Overflows registriert usw., weil der receive_buffer nicht schnell genug gelesen werden konnte. Und das funktioniert bei weit auseineanderliegenden Baudraten? mfg Alexander
Alexander Schmeil wrote: > Kann man mit Fleury's Software und seinen Ringpuffern die > Schwierigkeiten mit nicht übereinstimmenden Baudraten umgehen? Nein. Natürlich nicht. Das Eine hat nichts mit dem Anderen zu tun.
@Alexander: Wie schon Karl Heinz Buchegger schrieb: Das eine hat mit dem anderen nichts zu tun. Du mußt auf jeden Fall die exakte Baudrate einstellen - Im Fall der Library von Peter Fleury einfach via...
1 | #define UART_BAUD_RATE 115200 /* Baurate in Herz */ |
...wäre zum Bsp. die Einstellung für 115200 Baud. Schau dir mal die angehängte Tabelle aus dem Atmega16 Datasheet an. 7.3728Mhz wäre gut für dich... Mario
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.