Hallo, ich habe das "4 Gewinnt" Spiel versucht auf einer Platine mit LEDs zu realiseren. Dazu wurde ein LED-Raster aus 6x7 bicolor LEDs (Gelb und rot) gewählt. Das ganze wird über ein Atmega328P angesteuert. Die LEDs werden mithilfe von TLC5940 angesteuert. Es gibt 3 Taster, mit denen man die Spalte quasi auswählt (also links oder rechts) und eine "OK" Taste zum Bestätigen. Unter dem Raster ist noch eine LED Reihe, mit der man die Spalte auswählt. Ich habe die Schaltpläne anhehängt. Aufbau: Mikrocontroller: ATmega328P (16 MHz Quarz) LED-Raster: 6x7 Bicolor LEDs (rot/gelb, gemeinsame Anode an 5V) Ansteuerung: 6× TLC5940 (kaskadiert) LED-Strom: ca. 18 mA (IREF = 2 kΩ) Versorgung: 5V (USB) Verkabelung TLC ↔ ATmega: GSCLK → PD3 (Arduino D3) BLANK → PB1 (D9) XLAT → PB2 (D10) SIN → PB3 (D11) SCLK → PB5 (D13) VPRG → GND DCPRG → GND XERR → nicht verwendet Testaufbau: Aktuell ist nur eine Bicolor-LED angelötet (OUT11/OUT12 des ersten TLC) Rest der Schaltung vollständig bestückt Nun zum Problem: Ich habe die Platine bestellt und fast alle Bauteile aufgelötet. Zum Testen habe ich nur eine bicolor LED angelötet und sonst sind alle Bauteile angelötet. Den Atmega habe ich via Arduino programmiert, dabei blitzt die eine LED nur kurz auf beim Einschalten und blinkt nicht. Bereits getestet: Einzelner TLC auf Breakout + Arduino → funktioniert einwandfrei GSCLK manuell getoggelt → LED reagiert BLANK testweise LOW → keine Änderung Spannung am OUT-Pin gemessen (~0.4V) Verhalten beim Einschalten sporadisch (kein deterministisches Verhalten) Der Code: #include <Tlc5940.h> void setup() { Tlc.init(); Tlc.clear(); Tlc.update(); } void loop() { //LEDs ein Tlc.set(7, 0); Tlc.set(8, 0); Tlc.set(9, 0); Tlc.set(10, 0); Tlc.set(11, 0); Tlc.set(12, 0); Tlc.set(13, 0); Tlc.set(14, 0); Tlc.set(15, 0); Tlc.set(16, 0); Tlc.update(); delay(1000); //LEDs aus Tlc.set(7, 4095); Tlc.set(8, 4095); Tlc.set(9, 4095); Tlc.set(10, 4095); Tlc.set(11, 4095); Tlc.set(12, 4095); Tlc.set(13, 4095); Tlc.set(14, 4095); Tlc.set(15, 4095); Tlc.set(16, 4095); Tlc.update(); delay(1000); } Hat jemand eine Idee, woran es liegen könnte? Insbesondere ob es ein Problem mit GSCLK Signal (Signalqualität /Verteilung) oder BLANK / XLAT Timing oder der Kaskadierung der TLCs sein könnte? Vielen Dank! Lg Karan
Hier könnt ihr Projekte, Schaltungen oder Codeschnipsel vorstellen. Projekte bitte nur mit Code oder Schaltplan posten (falls ihr nur Fotos vorstellen möchtet, bitte in "Zeigt her eure Kunstwerke"). Bitte hier keine Fragen posten
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.




