Punktmatrixausgabe drehen

OP #4150659
Hallo,
ich habe ein 16x16 LED - Punktmatrixfeld, auf welchem ich verschiedene 
Infos ausgebe. Die Ausgabe erfolgt, in dem jede 1 msec eine Zeile 
angesteuert wird, der "Spaltenwert" für die jeweilige Zeile des 
entsprechenden Zeichens wird aus einer Tabelle geholt.

Ein Minus-Zeichen sieht beispielsweise folgendermaßen aus:

//Zeile0, Zeile1, ..

{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x00,0 
x00,0x00},//  0x2D   '-'

-> Zeichen wird an der 12. LED-Zeile (von oben) ausgegeben.

Für einige Anwendungen wäre es hilfreich, wenn die Anzeige um 90° 
gedreht werden könnte. Hierfür müßte ich die Daten in der Tabelle 
entsprechend konvertieren, sodaß z.B. aus dem Minuszeichen ein 
vertikaler Strich wird.

Hat jemand eine Idee diesbezüglich - gibt es vielleicht entsprechende 
Algorithmen für eine solche Drehung ?
Gast
Max D. schrieb:
> Also wenn du Zugriff hast auf den Code der die Matrix anspricht,
> dann
> vertausch einfach die beiden Zähler über Spalten und Zeilen....

Das allein spiegelt nur um die Diagonale. Um das Bild noch zu drehen, 
durchläuft man dann noch eine der beiden Schleifen rückwärts (welche, 
hängt von der gewünschten Richtung ab).
@ Holger B. (rst-el)

>gedreht werden könnte. Hierfür müßte ich die Daten in der Tabelle
>entsprechend konvertieren, sodaß z.B. aus dem Minuszeichen ein
>vertikaler Strich wird.

Dazu braucht man Bitmanipulation.
Oder man legt gleich einen vollständig gedrehten Zeichensatz im Flash 
ab.

>Hat jemand eine Idee diesbezüglich - gibt es vielleicht entsprechende
>Algorithmen für eine solche Drehung ?

Ist quasi das Transponieren einer Matrix. Sinnvollerweise macht man das 
nicht im Multiplexing, weil es zu rechenintensiv ist. Besser ist es, das 
offline zu machen, spricht, deinen Puffer für die Matrixausgabe 
entprechend zu füllen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 11 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.