Archiv verlassen und diese Seite im Standarddesign anzeigen : Wieviel Byte können bei 9600Baud übertragen werden?
Johannes G.
10.11.2007, 16:30
Hallo,
ich hab mal eine Frage: Ich hab einen RS232 Bus mit 9600 Baud.
Wieviel byte daten kann ich da pro sekunde übertragen?
pctoaster
10.11.2007, 16:37
Die Baudrate gibt die Zustandsänderungen pro sec an. Also ca 1000 Zeichen bei 9600 Baud, je nach Start/Stopbit Einstellungen der Schnittstelle.
Du meinst aber wohl hoffentlich 9600 und nicht 9800 ;-)
Gruss
pctoaster
BASTIUniversal
10.11.2007, 17:06
Hi!
Ja, du hast richtig gerechnet! Und ja, 9600Baud sind ziemlich wenig :-)
Für dein vorhaben bräuchtest du mindestens 92160 Baud, wobei die nächsthöhere Standard-Baudrate 115200 Baud entspricht. Das ist das höchste, was ein Standard PC-UART Baustein mitmacht. Bei einem Atmega 8 von Atmel bräuchte eine Mindest-Taktfrequenz von 1,8432MHz.
MfG
Basti
pctoaster
10.11.2007, 17:20
Ich brauche ca 9kb/s...
Und es müssen 100Module angesprochen werden...
Oha, 100 Module a 115200 Baud. Mit einem Mikrocontroller :-k
Was soll denn das werden ?
Gruß
pctoaster
BASTIUniversal
10.11.2007, 19:22
Also mit dem Tiny2313 und einem 11,0592MHz Quarz könntest du eine max. Datenrate von 691,2kbps (bei 0,0% Fehler) und mit einem FT232R als USB-UART Wandler 1Mbps realisieren. Nur so als Info!
Mit den Tiny2313 verschwendest du ja ne ganze Menge an Pins! Mit dem kannst du mindestens 4 Pixel ansteuern, die PWM-Frequenz muss ja nur um die 100Hz sein.
Aber egal, ich nehme an, du hast die Investitionen schon getätigt.
MfG
Basti
Du könntest natürlich auf RS232 verzichten und eine Daisy chain aufbauen: Vom Master den Write Pin mit dem Read-Pin des ersten Controllers verbinden. Von dort den Write mit dem Read-Pin des zweiten usw.
Erstmal ist RS232 kein Bus, und ausserdem: warum willst Du 101 mal von TTL auf RS232 und zurück wandeln? Die MAX232 sind ja fast teurer als der Rest der Schaltung. Ich würde erstmal so viele LEDs wir möglich pro Controller steuern, lieber was mit mehr Beinchen nehmen oder zumindest die genannten 4 LEDs pro Controller. Wenn Du es geschickt programmierst und nicht alle Soft-PWMs nacheinander in Bascom-Zählschleifen abackerst sollte es fast egal sein, ob der Controller 1 oder 12 mal vergleicht, ob das PWM-Register schon seinen Endwert erreicht hat.
Besserwessi
11.11.2007, 15:28
Auch so ein Tiny2313 kann schon eine Menge. Ein paar Kanäle Software PWM sind gar kein Problem, besonders wenn die 100 Hz Ausgangsfrequenz reichen. Man könnte also zumindestens jedem Freien Pin eine LED spendieren.
Hab man für ein anderes Porjekt angefangen eine schnelle Soft PWM routine zu Schreiben, danach sollten bis zu 120 Kanäle an Software PWM (8 Bit) noch gehen (mit Shift Registern als Port erweiterung). Da wird dann irgendwann das RAM für die Daten knapp, viel mehr wird halt mit 128 Bytes Ram kaum gehen.
Johannes G, was Du willst ist der Realität leider recht egal, RS232 ist kein Multidrop-Bus und Dein Controller hat auch kein RS232, da RS232 u.a. den physischen Layer mit -12/+12V Signalspannung definiert.
Was Du hast, ist ein serielles Interface mit TTL- o.ä. Pegeln, welches für sich auch noch nicht Multimaster-fähig ist, weil der Tx nur mit Tricksen hochohmig schaltbar ist - und das würde bedeuten, Du baust eine mit Software zertörbare Hardware.
Finger weg von sowas! Wozu braucht Du überhaupt eine Rückleitung von den LED-Modulen zum Master?
Hallo
Ich hatte da auch mal noch einen Einfall. Wenn ich höre wieviel LED`s angesprochen werden sollen, dann stellt sich mir die Frage ob das ganze nicht auch über Multiplexer möglich wäre, wäre denke ich einfacher und günstiger.
Ich meine das so dass ich am Controller nur einen PWM-Ausgang habe der auf den Multiplexer geht. Mit den anderen Ausgängen des Controllers sage ich dem Multiplexer welche LED das PWM Signal erhalten soll.
Wie gesagt, war nur gerade so ein Einfall von mir und es kann auch gut sein dass etwas grundlegendes dagegen sprich, woran ich im Moment nicht gedacht habe.
Grüße!
Bean
Besserwessi
15.11.2007, 18:23
Wenn man multiplexing mit PWM kompinieren will, muss man fast zwangsläufig Software PWM nehme, denn man muss das PWM Signal mit dem Umschalten der LED Gruppen kombinieren. Außerdem ist software PWM bei den niedrigen Wiederhohlfrequenzen für LEDs kein Problem mehr.
Gerade bei so vielen LEDs sollte man Multiplexing (auch Matrix genannt) nehmen. Man braucht dann wesenlich weniger Treiber und auch das Verdrahten der LEDs wird einfacher. Ein Ausgang mit Treiber kann dann etwa 5 bis 10 LEDs ansteuern. D.h. für 300 LEDs wären z.B. 30 Treiber nötig die nacheinander je eine von 10 LEDs Ansteuern. Dazu dann noch 10 kräftigere Treiber für die andere Seite. Andere Kombinationen gehen natürlich auch. Dazu sollten dann schon 2 oder 3 Controller ausreichen, mit einem wird es wohl etwas zu knapp, eventuell auch schon mit dem RAM.
Als interface zwischen mehreren Controllern wäre SPI wahrscheinlich wesentlich besser geeignet als UART. Per SPI kann nähmlich ein Master and mehrere Slaves Daten schicken und es geht auch deutlich schneller.
Woher sollen denn die Daten kommen ?
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.