RGB-LED Matrix

Im Unterforum LED Alles über Leuchtdioden - Beschreibung: Probleme mit Leuchtdioden, LED

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 19 9 2024  03:03:21      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   LED Alles über Leuchtdioden        LED Alles über Leuchtdioden : Probleme mit Leuchtdioden, LED

Gehe zu Seite ( 1 | 2 Nächste Seite )      


Autor
RGB-LED Matrix
Suche nach: rgb (2401) led (32524)

    







BID = 434111

stalky13

Neu hier



Beiträge: 33
Wohnort: Wangerland
 

  


Hi Leute,

ich hab vor in meinem Rechner 100 RGB-LEDs zu verteilen und diese dann in einer 10x10 Matrix zusammen zu schalten. Die LEDs sollen später mit zwei Schieberegistern einzeln durchgetaktet werden und ich möchte dann von meinem Rechner aus jede Farbe in einer LED einzeln ansteuern können und zwar in zwei helligkeitsstufen. Dazu muss ich mir ja irgendwo die zustände von jeder LED merken wofür ich genau 6bit pro LED brauche:
0 = Rot an/aus
1 = Rot hell/dunkel
2 = Grün an/aus
3 = Grün hell/dunkel
4 = Blau an/aus
5 = Blau hell/dunkel
So, soweit so gut. Als erstes hatte ich versucht Die Matrix (zum Test 10x10 Einfarbige Grüne LEDs) mit einem µC durch zu takten. Dafür hab ich eine C-Control Unit M 2.0 genommen (Weil ich davon noch eine rumliegen hatte). Das hat auch einigermasen flackerfrei funktioniert und ich konnte so ein einfaches Muster darstellen. Wenn mein µC jetzt aber noch Daten vom Rechner über die Serielle Schnittstelle empfangen muss unm die Zustände der LEDs zu ändern dann kommt es zu schweren Bildaussetzern und flimmern. Die C-Control is halt zu langsam um beides zu machen. Deswegen würde ich gerne die Zustände der LEDs in ein externes RAM speichern. Prinzip:
Rechner -> µC -> Latch -> RAM -> Multiplexer -> Matrix
Dazu hab ich mal einen Schlatplan gemacht(Hochgeladene Bilder). Da ich noch nicht mit Speichern gearbeitet habe wäre es ganz schön wenn sich den mal jemand ansehen könnte und mir dann sagt ob das so geht oder ob es noch eine einfachere Lösung gibt.

Prinzip der Schaltung:
Der 7 stufige binärzähler geht paralel mit den Schieberegistern(nicht auf dem Plan), für die Matrix, die Adressen im RAM durch.
Mit dem µC Schreibe ich das Byte für die zu ändernde LED in ein Latch(um Ports zu spaaren) und die Adresse wo es hin soll in ein anderes Latch. mit XOR Gattern vergleiche ich die Derzeitige Adresse mit der Adresse im Latch stimmt sie überein dann schreibe ich das Byte in mein RAM anstatt von dem RAM zu Lesen.

Genaue Funktionsbeschreibung:
Für den der sich den Plan mal asnsehen will (hab ich als txt hochgelanden)






_________________
Und denkt immer daran...
Aus großer Kraft folgt große Verantwortung!

BID = 434119

Racingsascha

Schreibmaschine



Beiträge: 2247
Wohnort: Gundelsheim
ICQ Status  

 

  

Willst du ne Disko in deim PC-Gehäuse aufmachen?

Wieviel MHz hat denn die C-Control? ich Persöhnlich würde es mit einem PIC machen, die laufen mit Assembler und sind (auch bei evtl langsameren Takt) schneller als die C-Control, da Basic erst interpretiert werden muss. PICs bei 20 MHz schaffen 5MIPS, die C-Control grade mal 20kIPS, also 250x soviel!) Ich denke dein Plan ist ok (hab ihn aber noch nicht so ganz verstanden )

_________________
Fnord ist die Quelle aller Nullbits in deinem Computer.
Fnord ist die Angst, die Erleichterung, und ist die Angst.
Fnord schläft nie.

[ Diese Nachricht wurde geändert von: Racingsascha am  3 Jun 2007 12:24 ]

BID = 434128

stalky13

Neu hier



Beiträge: 33
Wohnort: Wangerland

Ja genau,

Wild durcheinander blinkende LEDs zur Musik sind doch toll

Daran hab ich auch schon gedacht einen PIC zu nehmen aber eine C-Control hab ich schon und Assembler kann ich ned programmieren.
Die C-Contol hat 32MHz und einen Atmel Mega32 Prozessor (glaub ich) .

_________________
Und denkt immer daran...
Aus großer Kraft folgt große Verantwortung!

[ Diese Nachricht wurde geändert von: stalky13 am  3 Jun 2007 12:43 ]

BID = 434218

Racingsascha

Schreibmaschine



Beiträge: 2247
Wohnort: Gundelsheim
ICQ Status  

Wie stehts mit C ? Die PIC18F.... können auch damit programmiert werden und können sogar 40Mhz. Die Atmels kannst natürlich auch verwenden, da gibts auch Basic für. Wird warscheinlich auch schneller laufen, da sie kein "Betriebssystem" draufhaben dass Leistung frisst. ne C-Control ist bestimmt gut für allgemeine Steuerungsaufgaben, aber für zeitkritische Aufgaben ist sie offensichtlich nicht geeignet.

_________________
Fnord ist die Quelle aller Nullbits in deinem Computer.
Fnord ist die Angst, die Erleichterung, und ist die Angst.
Fnord schläft nie.

BID = 434233

stalky13

Neu hier



Beiträge: 33
Wohnort: Wangerland

Also erstmal @Racingsascha
danke das du dir zeit genommen hast um meinen schaltplan anzugucken ich binn auch der meinung das es in der Theorie funktionieren müsste.

Aber es wäre bestimmt einfacher wenn ich die ansteuerung der Matrix nur mit einem PIC machen würde. deshalb meine Frage, wäre denn ein PIC schnell genug um Daten vom Rechner zu empfangen und gleichzeitig noch die Matrix durch zu takten?

fals das geht wäre ich auch bereit Assembler zu lernen um ein PIC zu programmieren. das ist ja auch für später bestimmt mal ganz nützlich. C kann ich leider nur n bissl sonst nur basic *schäm... und irgendwie müssen ja auch Daten vom Rechner zum PIC ich schätze mal nicht das der irgendwie ne RS232 schnittstelle hat wo ich mich einstöpseln kann? oder doch? ich kenn mich leider mit den dingern ned aus.

_________________
Und denkt immer daran...
Aus großer Kraft folgt große Verantwortung!

BID = 434251

Racingsascha

Schreibmaschine



Beiträge: 2247
Wohnort: Gundelsheim
ICQ Status  

Alle mittleren und größeren PICs haben ne Hardware-UART, die macht dann den RS232 von alleine, falls ein Datenbyte eintrifft löst es auf Wunsch einen Interrupt aus, somit kann sich der Pic voll auf die LED-ansteuerung konzentrieren. da du noch keine Ahnung von PICs hast ist Sprut immer die erste Anlaufstelle habe mein Wissen auch komplett von da, ist echt gut beschrieben. Und ASM ist garnicht so schwer wie man sich denkt. Etwas umständlich weil man dem Prozessor ALLES extra sagen muss (nicht wie beim komfortablen Basic ) aber ansonsten eigentlich recht logisch.

_________________
Fnord ist die Quelle aller Nullbits in deinem Computer.
Fnord ist die Angst, die Erleichterung, und ist die Angst.
Fnord schläft nie.

BID = 434279

Labersack

Dummschwätzer

Beiträge: 54

@Racingsascha
er will keinen PIC, ist das so unverstädlich von stalky13 ausgedrückt worden, das du es nicht verstehst?

BID = 434282

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Hallo Labersack ( )

Aus dem letzen Posting von stalky13 geht das aber hervor.

P.S.:
Ich weiß, es ist ein ewiger Glaubenskrieg zw. AVR- und PIC-Programmierern, aber ich würde nochmal empfehlen, einen AVR zu verwenden, weil:

- sie bei 20MHz auch bis zu 20MIPS Umsatz haben,
- sie recht günstig sind
- und die meisten eine UART haben.
- es einen komplett kostenlosen Assembler und C-Compiler gibt.


Basic kann man eh vergessen, die ist zu langsam und zu abstrakt.

_________________

BID = 434286

stalky13

Neu hier



Beiträge: 33
Wohnort: Wangerland

@Racingsascha danke erstmal für den link, hab schon n bissl gelsen.

also für mein vorhaben würd ich gerne n 18F2550 nehmen weil der ne USB schnittstelle hat USB hab ich nämlich auf meinem Mainboard im Rechner. Jetzt steht auf Spurt allerdings das man für die gröseren famielien wie 18fxx besser in C programmiern soll allerdings steht da auch assembler is schneller. was nehm ich jetzt also besser, C oder assembler? ich persönlich tendiere (keine ahnung ob ich das richtig geschrieben hab) zu assembler. Wegen der geschwindigkeit. Allerdings hat der auch 48 MHz is also blitze flink

_________________
Und denkt immer daran...
Aus großer Kraft folgt große Verantwortung!

BID = 434288

Racingsascha

Schreibmaschine



Beiträge: 2247
Wohnort: Gundelsheim
ICQ Status  


Zitat :
es einen komplett kostenlosen Assembler und C-Compiler gibt.
Gibts doch für PICs auch (Assembler sowieso, C zumindest als ne leicht eingeschränkte Student-version).

@ stalky13:
Hast du auch einen Parallelport am PC? oder hast du einen in Reichweite? Du musst den PIC (bzw Atmel, vlt kann dich DonComi umstimmen ) ja auch Programmieren, und dafür brauchst du, wenn du kein Demoboard kaufen willst, einen Programmieradapter, der am günstigsten für den Paraport aufzubauen ist. Hast du dir die Seite in der USB beschrieben wird angesehn? Ich finde es recht kompliziert, außerdem reicht die RS232 doch völlig aus, oder willst du die Musik an den PIC übertragen, damit der den Beat rausrechnet und die LEDs entsprechend ansteuert?

Wegen der Programmiersprache: Aufgrund deiner Erfahrung in Basic würde ich vlt doch C empfehlen, da es auch eine Hochsprache ist und vieles Einfacher macht. Helfen kann ich dir dann allerdings nicht, kann nur Assembler

@ Topic: Ich überschlage mal die notwendige Rechengeschwindigkeit:

100 RGB-leds = 300 "normale" Leds
10 Befehle Pro Led,
300 Leds in unter 1/10 sek (bei gut verteilten Leds dürfte das flackern nicht auffallen)

~ 30kflop. da ist viel Luft

_________________
Fnord ist die Quelle aller Nullbits in deinem Computer.
Fnord ist die Angst, die Erleichterung, und ist die Angst.
Fnord schläft nie.

[ Diese Nachricht wurde geändert von: Racingsascha am  3 Jun 2007 23:36 ]

BID = 434479

stalky13

Neu hier



Beiträge: 33
Wohnort: Wangerland


Zitat :
Hast du auch einen Parallelport am PC?

Jepp und zwar nen richtig echten

Zitat :
Hast du dir die Seite in der USB beschrieben wird angesehn?

ja jetzt gerade ... ich wollte sowiso USB nur aus einem Grund nehmen und zwar weil ich USB Ports im Rechner hab bei RS232 müsste ich ja ein Kabel ausen anstecken und dann wieder nach innen führen. das is halt n bissl blöd aber auch ned der Weltuntergang

Zitat :
~ 30kflop. da ist viel Luft

also dann doch besser C Ich werd mir die Seiten über C mal alle durch lesen hab aber unter der woche ned viel zeit

Zitat :
außerdem reicht die RS232 doch völlig aus, oder willst du die Musik an den PIC übertragen, damit der den Beat rausrechnet und die LEDs entsprechend ansteuert?

Nein nur Ein/Ausschalten bzw. Farbe ändern

_________________
Und denkt immer daran...
Aus großer Kraft folgt große Verantwortung!

BID = 434501

Racingsascha

Schreibmaschine



Beiträge: 2247
Wohnort: Gundelsheim
ICQ Status  

Dafür reicht dann wirklich auch RS232. Manche Boards ham auch intern ne Stiftleiste für RS232 (das kaputte von meinem Kumpel zb, das war eins für Socket939). zdem läuft ja die gesamte RS232-geschichte hardwareseitig ab, ob das bei USB auch so ist weiß ich jetzt nicht.

Du wirst aber die Hardware zur Led-Ansteuerung nochmal neu designen müssen. Ich dachte da an Folgendes:

Alle Farb-Kathoden jeweils parallel an ein Hell/Dunkel-Schalter. Alle Anoden pro Zeile parallel an einen Portpin. An einem Portpin High ausgeben, einen Hell/Dunkel-schalter auf hell oder dunkel stellen, eine LED leuchtet. Kommt sogar von den Portpins genau auf 2 Register.

PortA,0 = Zeile 1 Anoden
PortA,1 = Zeile 2 Anoden
PortA,2 = Zeile 3 Anoden
PortA,3 = Zeile 4 Anoden
PortA,4 = Zeile 5 Anoden
PortA,5 = Zeile 6 Anoden
PortA,6 = Zeile 7 Anoden
PortA,7 = Zeile 8 Anoden

PortB,0 = Zeile 9 Anoden
PortB,1 = Zeile 10 Anoden
PortB,2 = Rot hell
PortB,3 = Rot dunkel
PortB,4 = Grün hell
PortB,5 = Grün dunkel
PortB,6 = Blau hell
PortB,7 = Blau dunkel

IO-Ports natürlich nach Belieben
Um eine Farbe ganz auszuschalten einfach garkeinen Hell/dunkel Portpin auf high (oder low, je nach dem) setzen.


_________________
Fnord ist die Quelle aller Nullbits in deinem Computer.
Fnord ist die Angst, die Erleichterung, und ist die Angst.
Fnord schläft nie.

[ Diese Nachricht wurde geändert von: Racingsascha am  4 Jun 2007 21:02 ]

BID = 434697

stalky13

Neu hier



Beiträge: 33
Wohnort: Wangerland

Also ich bin mir ziemlich sicher das mein board keine stiftleiste für nen seriellen port hat, werd aber gleich aus reiner neugier mal ins handbuck gucken...


Zitat :
Alle Farb-Kathoden jeweils parallel an ein Hell/Dunkel-Schalter.


das versteh ich noch ned ganz... dann würden ja alle LEDs einer Zeile, gleichzeitig, in der selben Farbe leuchten. ich müsste doch ja noch ide einzelnen Spalten mit weiteren 10 Ports ansteuern dann kommt ja noch dazu, hab ich grad gelesen... *böses lachen*, das ich bei vielen PICs die Ports A5 - A7 garned benutzen kann und für RS232 muss ich ja auch nochmal n paar I/Os opfern. das macht dann ja rund 4 Register.

_________________
Und denkt immer daran...
Aus großer Kraft folgt große Verantwortung!

BID = 434824

Racingsascha

Schreibmaschine



Beiträge: 2247
Wohnort: Gundelsheim
ICQ Status  


Zitat :
dann würden ja alle LEDs einer Zeile, gleichzeitig, in der selben Farbe leuchten

Ja das ist mir im nachhinein auch aufgefallen

Kannst du dich mit der LED-Anzahl nicht ein bisschen beschränken? vlt auf 64 oder so? das ist praktischer, weil mann dann nur 1 IO-Port für eine Zeile/Spalte brauch. Außerdem kannst du einen CD4017 als Zeilentreiber (mit Treibertransistoren) nehmen, du musst ihn dann nur mit einem Pin des PIC takten.

_________________
Fnord ist die Quelle aller Nullbits in deinem Computer.
Fnord ist die Angst, die Erleichterung, und ist die Angst.
Fnord schläft nie.

BID = 435009

stalky13

Neu hier



Beiträge: 33
Wohnort: Wangerland

Moin,

64 LEDs is ne ungute zahl weil ich bei revoled.com 100 RGB-LEDs für 52€ kriege. Die schieberegister sind gut die hab ich auch bei meiner 10x10 LED matrix aus grünen LEDs verwendet. Damit komm ich dann genau auf 8 Ports ... 6 für die Farben einen für Takt und evtl. noch einen für reset. ich werd mir mal von Reichelt einen PIC holen zum experimentieren und lernen ich weis blos noch ned wo ich ein Brenner herkrig . ich möchte ja auch ned 200€ dafür ausgeben und es solte auch schon einer sein der ein paar mehr typen brennen kann da ich bestimmt auch in zukunft PICs verwenden werde. lohnt es sich denn den Brenner5 (spurt) zu baun?

_________________
Und denkt immer daran...
Aus großer Kraft folgt große Verantwortung!


      Nächste Seite
Gehe zu Seite ( 1 | 2 Nächste Seite )
Zurück zur Seite 0 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 16 Beiträge im Durchschnitt pro Tag       heute wurden bisher 2 Beiträge verfasst
© x sparkkelsputz        Besucher : 182037508   Heute : 269    Gestern : 5652    Online : 340        19.9.2024    3:03
0 Besucher in den letzten 60 Sekunden         ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0801439285278