www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Real-Time-Steuerung


Autor: Paulchen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe eine Frage:

wie kann ich eine LED-Matrix am besten in Real-Time Steuern? Also an PC 
anschließen und die Frames direkt senden. Ich dachte ich hole mir ein 
ATMEGA 16 und dann alles Fetiglöten und schon kann ich in Animationen 
Programmieren. Doch wie macht man das mit Real-Time? Ab besten sollte es 
über USB gehen ...

MfG

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Paulchen (Gast)

>wie kann ich eine LED-Matrix am besten in Real-Time Steuern? Also an PC

Na man muss sich halt echt Zeit nehmen, das Ganze zu bauen. Real time 
;-)

>anschließen und die Frames direkt senden. Ich dachte ich hole mir ein
>ATMEGA 16 und dann alles Fetiglöten und schon kann ich in Animationen
>Programmieren.

Na dann mach mal. Klingt doch einfach.

> Doch wie macht man das mit Real-Time?

Schönes Wort, gell?

> Ab besten sollte es über USB gehen ...

FTDI232

MFG
Falk

Autor: Frank L. (hermastersvoice)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
und auf jeden Fall auf Windows verzichten!!!!! Ganz wichtig! Dein 
Lieblingswort und Windows schliessen sich gegenseitig aus!

bye

Frank

Autor: Kai Franke (kai-) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich würde erstmal vorschlagen, dass du deine Matrix ohne Schnittstelle 
aufbaust und sobald sie funktioniert, und das wird wohl einige Zeit 
dauern, implementierst du eine UART Schnittstelle und baust das ganze 
auf USB um. Das geht dann relativ einfach mit dem Treiber, den Falk 
vorgeschlagen hat.

Wünsche Viel Spaß und Erfolg


Grüße von einem neuen Linux Fan

Kai

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nicht ganz, für NT gibt es eine RealTime erweiterung - aber RealTime und 
USB dürfte schwer werden?
Die Frage ist mehr wieviel RealTime muss es den Sein? Bei der Heutigen 
Rechenleistung ist so viel Reserve da, das es für ein paar LEDs reichen 
sollte - RealTime hat auch nicht mit Geschwindigkeit zu tun. Es ist auch 
RealTime wenn etwas immer noch 10min reagiert

Autor: Christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Bei der Heutigen Rechenleistung ist so viel
>Reserve da, das es für ein paar LEDs reichen
>sollte

Ich hab da mal nen Vortrag vom Projekt Blinkenlights gesehen. Die hatte 
echt Probleme mit dem Timing - da war nix mit Reserve... allerdings 
verwenden die auch gerne mal "massenhaft" LEDs - oder anders 
Leuchtendes.

Autor: Paulchen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

danke für die antworten. Also mit RealTime meinte ich eigentlich, dass 
ich direkt über den PC die Matrix ansteuern kann, möglichst mit kleinen 
Latenzzeiten. Wie wird sowas am besten realisiert?

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Christian
Ich denke das Hauptproblem ist dabei die Software, wenn man sieht was 
man heute für eine CPU für einige dinge braucht. (Z.b. das Spiel "So 
Blonde", oder das neuste Adventure von MS (Vista) ) dann sollte jedem 
der sich schon mal eine Weile mit Rechentechnik Beschäftigt klar sein 
das da noch viel Optimierungsmöglichkeiten vorhanden sind.
Ist doch wie die Videoanimation auf einem TV generiert von einem 
Atmel-Mega, da muss man sich gedanken bei der Softwareentwicklung 
machen.
Ich bin der Meinung das heute viel zu viel Rechenleistung durch 
schlechte Software verschwendet wird.

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Paulchen
wie klein soll denn die Latenz werden? Wenn es wirklich richtig schnell 
sein soll ist wohl eine PCI-Karte das richtige, wenn es nicht viele 
Daten sind dann auch eventuell die Parrallele Schnittstelle. Bei USB ist 
zu viel Overhead vorhanden - sobald man ein Gerät ansteckt ist auf dem 
Bus eine weile ruhe.

Autor: Frank Esselbach (Firma: Q3) (qualidat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du solltest dir erstmal eine Übersicht zum erforderlichen Timing 
verschaffen.

- Welche Bildwechselfrequenz soll deine Matrix haben?
- Welche Abmessungen hat deine Matrix (X, Y)
- wieveiele Farben mit welcher Bittiefe?

Nehmen wir mal an, 100 x 100, 16 Bilder pro Sekunde mit RGB?

Das sind also 100 x 100 x 16 x 3 = 480.000 Byte pro Sekunde

480.000 Byte * 8 (1 Byte=8 Bit)= 3.840.000 Bit, also fast 4 Megabit

... ist 'ne Menge Holz. Mit einer PC-seitigen Programmierung auf 
Hochsprachen-Ebene (Delphi oder Basic) wirds da ein wenig eng.

Zieht man noch in Betracht, dass Windows auch gerne mal ein par 
Systemthreads zwischenschiebt, braucht man noch einen zusätzlichen 
Buffer für mindestens eine halbe Sekunde. Ich weiss nicht, ob das ein 
Bastelprojekt ist.
Ein wenig anders sieht es aus, wenn du die Bilder vorher in einen 
Speicher der Matrixsteuerung laden würdest und der "Film" dann aus dem 
Speicher abgespielt wird. Aber Realtime ... wird hart.

Eventuell kann man sich ein wenig Inspiration von sog. USB-Grafikkarten 
holen, wenn man an die verwendeten Chips und den zughörigen Dokus 
rankommt.

Frank

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.