Go Down

Topic: LED RGB 64-control individually (Read 14890 times) previous topic - next topic

funkyguy4000

Whoa Whoa Whoa.

You are going to use 5050 SMD RGB leds on a POV project?
You will have to get a custom board for that, and seeing has how you want it to span your wheel, that'll be one pricey board.

Just get this.  Way easier, way faster.
http://www.adafruit.com/products/5

You'll also need this for that
https://www.adafruit.com/products/46

amounts to $59.50.
Accelerate to 88 miles per hour.

Omnimusha

who has to sell.????

I need a  AS1130 and 64 RGB LED smd 5050.
I have only to pay for Paypal.i am from Argentina.

Force

You can get the part for free as long as you dont need a lot: (Free samples)
http://www.ams.com/eng/Products/Lighting-Management/LED-Driver-ICs/AS1130/%28oi%29/1
Also you can buy less than 1000 pieces there.

But Digikey has the parts:
http://www.digikey.com/product-search/en?x=0&y=0&lang=en&site=us&KeyWords=AS1130


BTW: You can use the AS1130 with 4pin RGB LEDs too, but as I understand you cannot use the full 132 channels then.

Grumpy_Mike

Quote
You can use the AS1130 with 4pin RGB LEDs too,

So how would you wire that up then?

funkyguy4000

you'd have to only use one led from the RGB led, you might as well just by that single color if you wanted to use it with the AS1130
Accelerate to 88 miles per hour.

Omnimusha

someone was registered in the https://shop.austriamicrosystems.com/eng/Products/Lighting-Management/LED-Driver-ICs/AS1130 page?. to my I get this message.
Quote
Phone: Invalide Phone/Fax number.



Grumpy_Mike

Quote
I still need resistors?

No, a constant current drive means you non't need them.

Omnimusha

#39
Oct 02, 2012, 05:45 am Last Edit: Oct 02, 2012, 09:35 pm by Omnimusha Reason: 1
hi, my order arrived from Ebay. esperimentar's time. -_-.

I tell them that I decided on the 18-Channel RGB WS2803D. and rgb smd led 5050.
I connected the arduino exactly.I connected a single LED.



I loaded this library.
[url=https://github.com/adafruit/Adafruit-WS2801-Library]https://github.com/adafruit/Adafruit-WS2801-Library

and this example.
Code: [Select]

int dataPin  = 11;    // Yellow wire on Adafruit Pixels
int clockPin = 13;    // Green wire on Adafruit Pixels

// Don't forget to connect the ground wire to Arduino ground,
// and the +5V wire to a +5V supply

// Set the first variable to the NUMBER of pixels. 25 = 25 pixels in a row
Adafruit_WS2801 strip = Adafruit_WS2801(6, dataPin, clockPin);

// Optional: leave off pin numbers to use hardware SPI
// (pinout is then specific to each board and can't be changed)
//Adafruit_WS2801 strip = Adafruit_WS2801(25);

// For 36mm LED pixels: these pixels internally represent color in a
// different format.  Either of the above constructors can accept an
// optional extra parameter: WS2801_RGB is 'conventional' RGB order
// WS2801_GRB is the GRB order required by the 36mm pixels.  Other
// than this parameter, your code does not need to do anything different;
// the library will handle the format change.  Examples:
//Adafruit_WS2801 strip = Adafruit_WS2801(25, dataPin, clockPin, WS2801_GRB);
//Adafruit_WS2801 strip = Adafruit_WS2801(25, WS2801_GRB);

void setup() {
   
 strip.begin();

 // Update LED contents, to start they are all 'off'
 strip.show();
}


void loop() {
 // Some example procedures showing how to display to the pixels
 
 colorWipe(Color(255, 0, 0), 50);
 colorWipe(Color(0, 255, 0), 50);
 colorWipe(Color(0, 0, 255), 50);
 rainbow(20);
 rainbowCycle(20);
}

void rainbow(uint8_t wait) {
 int i, j;
 
 for (j=0; j < 256; j++) {     // 3 cycles of all 256 colors in the wheel
   for (i=0; i < strip.numPixels(); i++) {
     strip.setPixelColor(i, Wheel( (i + j) % 255));
   }  
   strip.show();   // write all the pixels out
   delay(wait);
 }
}

// Slightly different, this one makes the rainbow wheel equally distributed
// along the chain
void rainbowCycle(uint8_t wait) {
 int i, j;
 
 for (j=0; j < 256 * 5; j++) {     // 5 cycles of all 25 colors in the wheel
   for (i=0; i < strip.numPixels(); i++) {
     // tricky math! we use each pixel as a fraction of the full 96-color wheel
     // (thats the i / strip.numPixels() part)
     // Then add in j which makes the colors go around per pixel
     // the % 96 is to make the wheel cycle around
     strip.setPixelColor(i, Wheel( ((i * 256 / strip.numPixels()) + j) % 256) );
   }  
   strip.show();   // write all the pixels out
   delay(wait);
 }
}

// fill the dots one after the other with said color
// good for testing purposes
void colorWipe(uint32_t c, uint8_t wait) {
 int i;
 
 for (i=0; i < strip.numPixels(); i++) {
     strip.setPixelColor(i, c);
     strip.show();
     delay(wait);
 }
}

/* Helper functions */

// Create a 24 bit color value from R,G,B
uint32_t Color(byte r, byte g, byte b)
{
 uint32_t c;
 c = r;
 c <<= 8;
 c |= g;
 c <<= 8;
 c |= b;
 return c;
}

//Input a value 0 to 255 to get a color value.
//The colours are a transition r - g -b - back to r
uint32_t Wheel(byte WheelPos)
{
 if (WheelPos < 85) {
  return Color(WheelPos * 3, 255 - WheelPos * 3, 0);
 } else if (WheelPos < 170) {
  WheelPos -= 85;
  return Color(255 - WheelPos * 3, 0, WheelPos * 3);
 } else {
  WheelPos -= 170;
  return Color(0, WheelPos * 3, 255 - WheelPos * 3);
 }
}



... but the LED does not light.
any idea what's going on?

Grumpy_Mike

The chip will not work until you connect something to the REF input. See the data sheet for what resistor value you need.

Omnimusha

hi , Hi, I connected a resistor to pin IREF 1.25kOkm and the other extremity of the resistance to Gnd.

LED is not lit. What happens?

I have connected a single LED.
Is it necessary to run the chit, connect
missing leds in chit outs, to work?

KirAsh4

This would totally depend on the specific LED that you're using, however the last time I used 5050 SMD RGB LEDs, with a WS2803, one side of the LED went to VCC, while the other end went to the outputs on the WS2803.  Those outputs are SINK, not SOURCE.  Look at page 5 in the datasheet.  Your schematic seems to indicate that you're expecting them to SOURCE your LED.  Flip it around and make the proper connections.

Omnimusha

no, your suggestion does not work either.

KirAsh4

Sorry but you'll have to wait till I have time to rig up a WS2803 with some LEDs to figure out what's going on.  My first guess would be the code, but I'm not familiar with adafruit's code, so I don't know.  However, what I do know is that the standard WS2801 code won't work for the WS2803 because it has 6x more bits that needs to be sent.  But as I said, I don't know adafruit's code, so it's possible they're already accounting for that.  Also, try putting your LED's ground pins to outputs 0, 1, and 2 instead of starting at output 8.  The other side goes to VCC.  Make sure you're using the proper sides on the LED.

Go Up