Cascaded led driver to write use write into leds[i] = 0x0 or 0xfff

Dependents:   M5VelocityALLCODE

Fork of TLC5940 by Kartik Jangam

Revision:
0:1fb7b50d16b1
Child:
1:05d2234c0965
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/TLC5940.cpp	Fri Jan 25 21:54:56 2013 +0000
@@ -0,0 +1,47 @@
+#include "TLC5940.h"
+
+
+
+void setup (SPI &driver, PwmOut &gsclk, PinName xlat, PinName blank, PinName dcprg, PinName vprg, int num_ics)
+{
+    xlat = 0;               // hold GS/DC data constant
+    blank = 1;              // Blank (squelch) all outputs
+    dcprg = 1;              // dcprg points DC data to DC register.
+    vprg = 0;               // sets drivers to GS mode. Set to 1 to change to DC mode
+    gsclk.period_us (1);    // set grayscale clock to 1 MHz
+    gsclk = 0.5;            // turn on grayscale clock to 50% duty cycle at afore mentioned frequency
+    
+    if (num_ics <= 0)
+    {
+        num_drivers = 1;
+    {
+    else
+    {
+        num_drivers = num_ics;
+    }
+    
+    
+    driver.format (16,0);
+    driver.frequency (30000000);
+}
+
+
+
+void update_led (SPI &driver, uint16_t LEDS [][])
+{
+    blank = 1;
+    dcprg = 1;
+    vprg = 0;
+    xlat = 0;
+    
+    for (int k = 0; k < num_drivers; k++)
+    {
+        for (int i = 0; i < 16; i++)
+        {
+            driver.write (LEDS [k][i]);
+        }
+    }
+    xlat = 1;
+    xlat = 0;
+    blank = 0;
+}
\ No newline at end of file