PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Maximale Baudrate an 14,7456 Mhz ?



Accenter
06.08.2010, 14:36
Ich habe 40 Stück Dotmatrixmodule gebaut die über den UART das jeweils nächste Zeichen an das benachbarte Modul weiter geben.

Ich arbeite mit 921600 Baud damit der Bildaufbau rasch erledigt wird. Je kleiner die Baudrate umso mehr "flimmert" es kurz beim Aktualisieren von neuen Zeichen.

Wie weit kann ich die Baudrate erhöhen? Die Kabellänge ist nur ca 2cm von Modul zu Modul und 40cm von der Ansteuerung (Mega128). Arbeite mit Tiny2313 bei den Modulen und 14,7456 Mhz Takt über einen Quarz.

TobiKa
06.08.2010, 15:54
Wenn man diversen Online Baudraten rechnern glauben will, bist du da schon am Maximum.
Schonmal "von Hand" versucht? Ich weiss nicht ob das schneller ist, könnte es mir aber vorstellen.

Hubert.G
06.08.2010, 17:32
Wenn du die Übertagung abschließt bevor du neu anzeigst, sollte an sich nichts flimmern.

Richard
06.08.2010, 19:27
oder I²C ist glaube ich etwas schneller.

Gruß Richard

Slein
06.08.2010, 20:51
Hi!

Wenns flimmert solltest du eher das Konzept deiner Software überdenken, als nach höheren Bandbreiten zu streben.

Empfang/Senden per Interrupt getrieben dauert bei der Taktfrequenz nur wenige us, inkl. ein wenig rechnen, egal bei welcher Baudrate.

Wenn du dann noch den Refresh mit einem Timer + Interrupt abwickelst kannst du nebenher noch sonstwas machen, ohne flackern. :)

2 framebuffer zwischen denen du die eigentliche Anzeige umschaltest geben dir dann noch mehr Zeit um im jeweils unbenutzten Bildspeicher rumzumalen.

PS: Man könnte 40 Anzeigen auch einfach mit einem Controller, ein paar 74hc595 und einem fet pro Zeile ansteuern ;)

PPS: I2C hat wesentlich mehr overhead als seriell, die cpu ist also um einiges mehr beschäftigt.