Forum: Mikrocontroller und Digitale Elektronik maximale Baudrate MAX232


von Stefan B. (beckst)


Lesenswert?

hallo,
in meinem Projekt, ein kleiner Logik Analysator, verwende Ich ein 512kB 
SRAM, einen Mega16 und einen MAX232 zur Datenübermittlung zum 
Auswertprogramm am PC.
mein Problem ist jetzt die 512000 Messwerte in einer verträglichen Zeit 
an den PC zu übergeben.
leider dauert dies bei einer Baudrate von 57600 noch gut 90Sekunden! 
*gähn"
wenn ich die Baudrate auf 115200 einstelle funktioniert die 
Kommunikation nicht mehr!

jetzt meine Frage:
betreibt jemand eine Kommunikationsstrecke zwischen PC und AVR mittels 
MAX232 und USB/Seriell-Wandler bei einer Baudrate von 115200?
was kann ich tun damit die Kommunikation nicht zusammenbricht?

der Mega16 läuft mit 16Mhz.

vielen Dank!

Steff

von Falk B. (falk)


Lesenswert?

@ Stefan Beck

>wenn ich die Baudrate auf 115200 einstelle funktioniert die
>Kommunikation nicht mehr!

>jetzt meine Frage:
>betreibt jemand eine Kommunikationsstrecke zwischen PC und AVR mittels
>MAX232 und USB/Seriell-Wandler bei einer Baudrate von 115200?

Viele. Meist erfolgreich.

>was kann ich tun damit die Kommunikation nicht zusammenbricht?
>der Mega16 läuft mit 16Mhz.

Sie bricht nicht zusammen, sie kommt gar nicht erst zustande.
Rechen? Wie gross ist der Fehler in der Baudrate bei 16 MHz?

http://www.mikrocontroller.net/articles/AVR-Tutorial:_UART#Senden

MFG
Falk


von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Je nach verwendeter Kabellänge hat ein MAX232 überhaupt keine Probleme 
damit, auch deutlich mehr als 115200 zu übertragen. Daran liegt das hier 
geschilderte Phänomen also höchstwahrscheinlich nicht, oder ist das 
Kabel mehr als ein paar Meter lang?

von Stefan B. (beckst)


Lesenswert?

das Kabel ist ca. 1m lang
das mit dem Fehler macht schon Sinn.
ist es denn möglich einen Mega16 an 18.4320 MHz ohne Probleme laufen zu 
lassen? langsamer als 16MHz will ich ihn nicht takten.
das interne EEPROM wird hier nicht benötigt.

von Falk B. (falk)


Lesenswert?

@ Stefan Beck

>das mit dem Fehler macht schon Sinn.

Es HAT Sinn. ;-)

>ist es denn möglich einen Mega16 an 18.4320 MHz ohne Probleme laufen zu
>lassen? langsamer als 16MHz will ich ihn nicht takten.

Als Einzelstück zum Basteln sicherlich. Wenn 100.000 davon gebaut werden 
sollen eher nicht.
Allerdings würde ich mit der Spannung nicht soweit runter gehen. 3,3V 
min, besser 5V.

Mfg
Falk

von Tom (Gast)


Lesenswert?

Also ich habe mal einen Mega16 (16MHz) mittels USB/serielle wandlers
(Bauanleitung aus der CT) mit einem PC mit 1Mbit kommunizieren lassen.
Es gab keine Probleme.

PC seitig war der VCP Treiber von FTDI im Einsatz, welche mit Visual C++ 
angesprochen wurde.(MFC)

Gruß

von Matthias Wulff (Gast)


Lesenswert?

Atmega16 ersetzen durch Atmega644
ATmega 644 mit 20MHz takten
als RS-232 Treiber MAX 3227E verwenden max 1Mbps
(ist nicht pin kompatibel zu MAX 232 nur 1 T/1 R)

UART des Atmega 644 programmieren
UBRR = 4
U2Xn = 1
siehe Tabelle Datenblatt S. 190
ergibt 0,5Mbps

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
Noch kein Account? Hier anmelden.