Hallo,ich bin neu hier und komme einfach nicht weiter,ich hab schon viel zuviel Zeit beim suchen im Netz verbracht also möchte ich mich nun an euch wenden, ich hab mir einen Arduino Mega2560 und dazu einen ws2801 LED-Strip bestellt, nun möchte ich dies verbinden über PWM da es später möglich sein soll die LEDs zu dimmen. Ich hab folgende LED-Pins: 5V rot GND blau CK Grün SD Gelb ich hab auch keine externe Stromquelle, nur USB. Momentan habe ich den Strip an den Pins 52 CK und 51 SD. Also nun meine Frage wie muss ich dies nun verkabeln damit ich die LEDs dimmen kann? Vielen dank im vorraus MFG Andreas
Schau doch mal auf Seite 12 des Datenblatts (http://www.mikrocontroller.net/part/WS2801), da ist beschrieben, wie du mit 8 bit pro Farbe das einstellen kannst und wie das Timing für die Pins sein muss. Da das ähnlich wie SPI aussieht kannst du auch, falls du die Pins nicht einzeln an und aus machen willst, versuchen, das per SPI zu lösen. Du kannst auf meinem Blog nachlesen wie man Hardware-SPI am ATmega macht (falls dir das nicht sowieso schon klar ist): http://physudo.blogspot.de/2013/05/hardware-spi-mit-atmega.html
Hallo Andreas, zum Thema PWM: Du benutzt ja einen Streifen mit einem WS2801 für jede RGB-LED, oder? Die WS2801 machen das Dimmen, also das Erzeugen der PWM-Signale, für dich! Du musst einfach nur jedem WS2801 die gewünschte Farbe mitteilen. Dann solltest du beachten, dass jede der 5050-LEDs auf deinem Streifen bis zu 20mA pro Farbe verbrauchen kann. Bei einem typischen Streifen mit 30 LEDs pro Meter ergeben sich bei voller Helligkeit dann 20mA x 3 Farben * 30 LEDS = 1.8A pro Meter. Dass wird der USB-Port nicht hergeben. Zum Testen der Stromaufnahme kannst du folgenden Sketch-Schnipsel versuchen. SD (Serial Data) gehört an Arduino Mega Pin 37, CK (Clock) an Arduino Mega Pin 41:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
LG, Sebastian
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.