Forum: Mikrocontroller und Digitale Elektronik 8x8 LED-Matrix & ESP8266


von Leon S. (thel30n)


Angehängte Dateien:

Lesenswert?

Hi,

ich bins mal wieder mit einem neuen Projekt.

Aktuell arbeite ich als Schüler an der Uni in einer Projektgruppe. Unser 
Ziel: Elektronisches Schachbrett in Eigenentwicklung. Erstmal gegen 
einen Schachcomputer, evt. später 2 Bretter für Fernschach.

Bei der Planung der Elektrotechnik-Komponenten fiel die Wahl des 
"Brains" der Applikation nicht schwer => ESP8266. In unserem Fall das 
ESP8266-201'er Board.

In meinem Leichtsinn habe ich mich natürlich sofort an EAGLE gesetzt 
(erstes Mal) und versucht die Steuerung der LED's zu zeichnen.

Da ich hier 4x den M74HC595B1 (ST) rumliegen habe und dieser ja 8 
Ausgänge hat, wäre dieser meine Wahl für die Ansteuerung der 8x8 
LED-Matrix gewesen. Einer pro Spalte, Einer pro Zeile.
--- Bis ich auf LED-Matrix gestoßen bin. Denn um Ströme hatte ich 
mir noch gar keinen Kopf gemacht.
Soll ich es nun mit diesem ShiftRegister versuchen? Oder doch lieber 
einen LED-Treiber oder gar Transistoren verwenden? Wenn ja, welchen 
Artikel genau?

Ein weiteres Problem ist die Ansteuerung. Ich verwende den ESP8266 mit 
der Arduino-IDE, wo es ja durchaus die ShiftOut-Library gibt, die aber 
leider nicht Hardware-SPI nutzt, welches der ESP besitzt, richtig? Nach 
dem was ich bis jetzt so gelesen hab, sollte ich auf jeden Fall 
Hardware-SPI nutzen, ansonsten wäre wohl das Flimmern zu stark, da nicht 
schnell genug geshifted werden kann. Ist das so korrekt? Echt Premium™ 
wäre es, wenn ich zu der Ansteuerung per Hardware-SPI einen Code-Snippet 
hätte, an dem ich mir das erarbeiten könnte. Anyone?

So, jetzt sollen auch noch 8x8 Schalter eingelesen werden. Dazu hatte 
ich vor, auch hier einen M74HC595B1 zu verwenden, um dann Zeilenweise zu 
scannen. Anschließend dann mit einem PISO-Shift-Register die Spalten 
einlesen. Schlechte Idee / gute Idee? Des Weiteren ist mir aufgefallen, 
dass wenn ich 2 Switches auf der selben Spalte drücke, ich die aktive 
Zeile am POSI-Shift-Register mit einer inaktiven Verbinde (5V <=> GND) 
was vlt. nicht gerade optimal ist. Deshalb die Dioden am 595'er.
Wenn diese Idee garnicht so abwägig ist, welches Parallel-In 
Shift-Register von Reichelt könnt ihr mir empfehlen? (Finde nichts, 
fehlt deshalb auch in der Schematic)

Ich weiß, dass der Schaltplan unvollständig und evt. auch falsch ist, 
bin aber für Kritik sowie für alles hilfreiche immer offen.

Vielen Dank schon im Voraus,

Leon

: Bearbeitet durch Moderator
von Route_66 H. (route_66)


Lesenswert?

Hallo!

64x64 Matrix?
Wo spielt man so Schach?

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Route 6. schrieb:
> Hallo!
>
> 64x64 Matrix?
> Wo spielt man so Schach?

Zuerst dachte ich, es sollen in den jeweils verbeibenden 8x8 Pixel 
großen Feldern die Spielfiguren abgebildet werden.

Dagegen spricht aber der Schaltplan, der "nur" mit langweiligen 8 x 8 
Pixel gezeichnet ist.

Schade, ich wollte schon sowas hier als Basis empfehlen: 
https://c2.staticflickr.com/4/3129/3159941186_68ea584cd9_b.jpg

von Leon S. (thel30n)


Lesenswert?

Oh, I'm a genius...

64x64 LED-Matrix ist natürlich jetzt nicht das was ich wollte und 
wahrscheinlich auch schwer machbar mit einem 100€-Budget.

Kann ein Mod den Titel hier ändern, soll ich ihn so lassen oder einen 
neuen Thread aufmachen?

Obwohl, 64x64 Schach zu spielen ist bestimmt auch ganz lustig... :D

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Leon S. schrieb:
> Kann ein Mod den Titel hier ändern

Erledigt.

von Ulrich F. (Gast)


Lesenswert?

Der ESP hat doch Hardware SPI.
Was hindert dich daran diese zu nutzen?

Im gleiche Zug könntest du auch die Schalter einlesen.

> wenn ich zu der Ansteuerung per Hardware-SPI
> einen Code-Snippet hätte,
Für die Arduino IDE gibts eine fertige Lib.
Die wartet nur darauf, von dir untersucht zu werden.

von Leon S. (thel30n)


Lesenswert?

Hi Ulrich,

stimmt, das nutze ich jetzt auch. Klappt auch alles soweit super! Mir 
ging's nur darum, wie ich es genau verwende, bis ich auf einen schönen 
Beitrag im Arduino-Forum gestoßen bin.

Ich hatte ja erst Angst, dass die Refresh-Rate der LED's nicht 
ausreicht, aber aktuell sieht's gut aus. Mal sehen was passiert wenn ich 
Wifi in den Mix werfe...

Mein Problem ist nun: Die LED's sind echt dunkel (was ich mir ja auch 
denken hätte können, sind ja nur 1/8 der Zeit an). Was kann ich 
hiergegen machen?

Ich muss wie gesagt eine 8x8 (nicht 64x64 :D) LED-Matrix ansteuern und 
die Komponenten (Ausgenommen LED's und Widerstände) sollten nicht mehr 
als 10-15€ kosten.

Kennt jemand hierfür eine Lösung?

Danke im Voraus,

Leon

von Leon S. (thel30n)


Lesenswert?

Da warst du gerade einen Augenblick zu schnell. :)

Meinst du ShiftOut? Die macht das doch über Software? Ich nehme jetzt 
SPI.h und pulse einfach immer den SlaveSelect auf Low wenn ich das 
geschriebene übernehmen will.

Habe derzeit also zwei SS-Leitungen, jeweils eine zum jeweiligen 
Shift-Register. Habe es jedoch noch nicht geschafft die zu aneinander zu 
hängen, also QH' vom ersten an SERIAL-IN vom zweiten... Muss ich dann 
nicht einfach 2 Bytes über den SPI schieben; die ersten 8 Bits nimmt das 
erste ShiftRegister, die anderen 8 das zweite? Hat irgendwie nicht 
funktioniert. :(

von Ulrich F. (Gast)


Lesenswert?

Leon S. schrieb:
> Was kann ich
> hiergegen machen?

Strom erhöhen!
Bei 1/8 Tastverhältnis solltest du den locker verdoppeln können.
Wenn der ESP dann aber mal Pause mit schieben macht....

Mein Tipp:
Machs dir mit APA102, WS2801, oder so...
Dann haste es sogar in Bunt.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.