Hallo, Ich hoffe ich belästige euch nicht, da der LED Cube ja sehr beliebt ist =) Nun wollte ich mir den Cube auch bauan erst mal 3x3 später 4x4 5x5 gehen leider nicht mit dem Atmega8 :( Also zur verständniss alle vor Infos: 3x3x3 Led Würfel blaue Led : 3.0-3.2V und 20mA Mikrokontroler: Atmega8 wird direkt auf die Platte über eine 28er IC-Sockel. Programmiert wird er über den USBasp adapter von Fishl http://www.fundf.net/usbasp/ Wobei ich die Bascom Software benutze. C lerne ich grade und Bascom erfüllt den zweck durch die sehr einfache Basic Sprache. Auf der Skizze sieht man 3 Ebenen hier sind die Anoden der gleichen farbe mit eiander verbunden. also ist eine Fabre mit 3 Leds verbunden. (werden alle an der ersten Ebene zusammen gelötet, habe es nur wegen der übersicht auf 3 verteilt.) Die Kathoden sind grün heir wird für jede ebene ein Transistor als Schalter zwischen gebaut. So nun die Fragen. 1 Funktioniert es wie dargestellt? 2.Wie würdet Ihr den Würfel betreiben ? und welche widerstände und Transistoren brauche ich da? 3. Ich verstehe nicht ganz wie ich den Atmega8 betreiben soll? Kann mir das jemand erklären ? Ich hoffe Ihr könnt mir helfen wäre super lieb :) MfG Jan wo kommt die
grundsätzlich könnte es so funktionieren, allerdings müsstest du den transistoren noch basisvorwiderstände spendieren. ein problem ist allerdings der ausgangsstrom des atmega. er kann zwar die 20mA pro pin um eine LED zu betreiben, allerdings musst du bei der verkabelung multiplexen. um jetzt aber die selbe helligkeit bei nur ein drittel einschaltdauer zu erreichen, brauchst du pro LED den 3fachen strom. und 60mA liefert ein pin einfach nicht. möglichkeit wären extra treiber oder einfach transistoren. die berechnung der widerstände ist recht einfach, die schaltung läuft mit 5V, die LEDs brauchen 3V, also müssen 2V an den widerständen hängen bleiben. macht für 60mA 33 ohm. die transistoren müssen im worstcase 9 * 60mA = 540mA schaffen. dafür würde z.b. ein BC337 genügen. als basiswiderstand würden dann ca 400 ohm reichen.
Wie wäre es, wenn du erst mal EINE oder ZWEI Led an einem Mega zum laufen bringst. Dann vielleicht mal 8 und ein wenig mit Lauflichtern experimentieren und programmieren. Ich meine das wirklich Ernst! AVR-Tutorial AVR-GCC-Tutorial (Für BASCOM kenne ich leider kein vernünftiges Tutorial, das auch ein wenig weiter führt als nur bis zu den allereinfachsten Grundlagen)
Da fehlen noch Basisvorwiderstände. Multiplex im Timerinterrupt alle ebenen aus nachste ebene wählen bitmuster für ebene ausgeben ebene einschalten
Statt PC6 (/Reset) würde ich einen anderen Pin benutzen. Erleichtert das Ändern eines Programms auf dem Controller ungemein. ;)
@Gast wow vielen dank :) beschäftige mich halt erst 2 Wochen damit und bin schwer angetan davon :) @ Moderator, ja werde ich machen :) ich will erstmal versuchen 2-3 LEDS dranzuhängen vllt auch in der art wie oben das der Transistor als schalter fungiert. So eine Frage noch die ist ganz wichtig :) Wie bekommt der Kontroller Strom und wo fließt es hin also wenn ich jetzt zb. 5 Volt nehme vom Netzteil doer von batterien, wo hange ich die dann ein und kommen die 3 Kollektor ausgänge vom Transistor dann einfach in die Kathode der Baterie oder wieder in den Chip und wenn wo? MfG :)
@gast2 ich evrsteh nciht ganz was du möchtest, außer die Basis vorwiderstände aber das ist ja schon geklärt :) @phpmysqlfreak danke werde ich machen :)
Achja heir nochmal der code für die jenigen den es Interessiert. $regfile = "m8def.dat" $crystal = 1000000 Config Portd.0 = Output Config Portd.1 = Output Config Portc.6 = Output Config Portc.5 = Output Config Portc.4 = Output Config Portc.3 = Output Config Portc.2 = Output Config Portc.1 = Output Config Portc.0 = Output Config Portb.3 = Output Config Portb.2 = Output Config Portb.1 = Output Do Portb.3 = 1 Portd.1 = 1 Waitms 1000 Portd.1 = 0 Portd.0 = 1 Waitms 1000 Portd.0 = 0 Portc.6 = 1 Waitms 1000 Portc.6 = 0 Portc.5 = 1 Waitms 1000 Portc.5 = 0 Portc.4 = 1 Waitms 1000 Portc.4 = 0 Portc.3 = 1 Waitms 1000 Portc.3 = 0 Portc.2 = 1 Waitms 1000 Portc.2 = 0 Portc.1 = 1 Waitms 1000 ................ usw. Loop End
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.