-
-
Erfahrener Benutzer
Roboter Genie
250 kByte/s mit UART?
Hallo!
Ich bräuchte mal eine Einschätzung von Euch. Ich möchte eine Schnittstelle zwischen einem AVR und einem FoxBoard (http://www.acmesystems.it/?id=4) realisieren, über die ich Datenraten bis zu 250 kByte/s schieben kann. Weil ich das ganze so straight forward wie möglich machen möchte, hatte ich folgenden Gedanken: könnte ich nicht bei AVR und FoxBoard den UART dafür verwenden, also im Prinzip eine RS232 Verbindung, nur eben mit TTL-Leveln? Es ist mir schon klar, dass ich da in der Größenordnung von 2000 kBaud (2 Mbit/s) und mehr lande – etwas untypisch für UART, oder? Sowohl der AVR als auch das FoxBoard erlauben mir allerdings ja prinzipiell so hohe Taktungen. Ist es prinzipiell denkbar, problemlos so hohe Taktungen mit dem UART zu verwenden, oder kann man das von vorn herein vergessen? Was ich noch ergänzen sollte: das ganze läuft natürlich nicht über ein langes Kabel, sondern direkt auf einer Platine, also über eine Strecke von 10-20 mm.
Bin für alle Tipps und Hinweise sehr dankbar!
Gruß,
Malte
-
Erfahrener Benutzer
Robotik Einstein
hm leider hab ich auf die schnelle keine spezifikationen für den I2C bus zu deinem foxsystem gefunden, aber vll. findest folgenden link interessant, dann kannste per I2C mit deinem AVR reden ?!
http://www.acmesystems.it/?id=10
-
Erfahrener Benutzer
Roboter Genie
Hallo!
Die Variante hatte ich verworfen, weil I2C meiner Ansicht nach beim AVR nur bis 400 kHz möglich ist.
Gruß,
Malte
-
Erfahrener Benutzer
Robotik Einstein
für derartige UART übertragungsraten solltest du dann aber schon einen sehr genauen qiarz mit diesen etwas krummen MHz zahlen verwenden, um die fehler minimal zu halten, ausserdem solltest du dann kontrollieren welches pegelwandler du benutzt, einige der max232 kapitulieren bei solchen datenrate, allgemein musst du mit den verwendeten bauteilen und den tolleranzen aufpassen ... ich selber habs aufgegeben und bis bei 57600kBaud geblieben, alles drüber brachte keine brauchbaren ergebnisse mehr ...
-
Erfahrener Benutzer
Roboter Genie
Hallo!
Wie gesagt: einen MAX232 will ich garnicht verwenden, weil ich mich nicht an den rs232-Standrad halten muss. Ich würde TTL-Pegel verwenden. Deine Bemerkung mit dem Quarz ist mir unklar. Natürlich muss die Baudrate auf beiden Seiten so gleich wie möglich sein. Aber ob sie krumm oder grade ist, ist doch um Endeffekt egal.
Gruß,
Malte
-
Erfahrener Benutzer
Robotik Einstein
nicht ganz, schau mal ins datenblatt des avr, da steht ne sausfühliche liste mit welchem quarz und welcher baudraet welche abweichung entsteht ...
hat was mit den prescalern zu tun wegen binärsystem und dezimalsystem ... lieder hab ich seit dem letzen update ein problem PDFs aufm PC zu öffnen, sonst könnt ichs dir genau sagen
-
Hallo Malte,
also 250kByte/s wird ziemlich eng mit den AVR's
250*1024Byte = 256000Byte * 10Bit (Start/stopzeichen no Parity) = 2,56MBit
Der ATMega128 kann mit einem 20Mhz Quarz, 2,5MBit. Wobei dieser eigentlich nur bis 16MHz spezifiziert ist.
Da die Gegenseite das auch können muß wäre es zudem Sinnvoll noch ein Protokoll drüber zu fahren, dann kommst Du bei weitem nicht mehr hin.
Grüße
-
Erfahrener Benutzer
Roboter Genie
Hallo!
Nur nochmal nachgefragt: Also so lange ich mit der Bandbreite hinkäme, spräche aber nichts dagegen, so eine schnelle UART-Kommunikation zu verwenden?
Vielen Dank!
Malte
-
Hallo Malte,
wie Radio Eriwan sagt, im Prinzip ja.
Solche Übertragungsraten sind machbar, ohne Frage, nur werden die Probleme mit Schirmung, Übersprechen usw. natürlich größer.
Zudem muß (sollte man) bei diesen Übertragungsraten CRC-Prüfungen vorsehen, was zusätzlich Bandbreite benötigt.
Hast Du keine Möglichkeit die Daten vielleicht schon vor zu verarbeiten, um die Bandbreite geringer zu halten?
Ansonsten nur los und halt uns auf dem laufenden wie es geklappt hat.
Grüße
-
Erfahrener Benutzer
Robotik Visionär
Eigentlich spricht nicht viel gegen die hohen Datenraten. Auf die gleiche Baudrate muß man auch bei hohen Taktraten nicht mehr achten als bei niedrigen, sofern die eigentlich Übertragung ungestört ist. Wenn man beide Seiten selber kontrolliert muß man auch keine genormte Baudrate nehmen, ein Quar mit spezieller Frequenz ist also nicht nötig.
Eine CRC Prüfung sollte auch eher unnötig sein. Man muß aber eventuell aufpassen ob die Daten auch so schnell verarbeitet werden können, sodass keine Daten verloren gehen.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen