Library and demo using the WS2812-based Neopixel strip connected to an LPC114

Dependencies:   mbed

Fork of LEDTape_WS2812 by Suga koubou

Details here: http://mbed.org/users/rhodes42/notebook/tiny-neopixel-controller-with-lpc1114/

Revision:
1:71b32479b674
Parent:
0:d067ddfe3df9
--- a/LEDStrip_WS2812.cpp	Mon Jul 08 01:34:51 2013 +0000
+++ b/LEDStrip_WS2812.cpp	Mon Mar 24 08:06:29 2014 +0000
@@ -13,11 +13,11 @@
 #include "mbed.h"
 #include "LEDStrip.h"
 
-SPI tape(p11, p12, p13);
+SPI tape(dp2, dp1, dp6);
 
-#if defined(TARGET_LPC1768) || defined(TARGET_LPC2368)
+#if defined(TARGET_LPC1768) || defined(TARGET_LPC2368) || defined(TARGET_LPC1114)
     LPC_SSP_TypeDef *_ssp = LPC_SSP0;
-#elif defined(TARGET_LPC11U24)
+#elif defined(TARGET_LPC11U24) 
     LPC_SSPx_Type *_ssp = LPC_SSP1;
 #endif
 
@@ -27,9 +27,9 @@
 
 
 extern "C"
-#if defined(TARGET_LPC1768) || defined(TARGET_LPC2368)
+#if defined(TARGET_LPC1768) || defined(TARGET_LPC2368)|| defined(TARGET_LPC1114)
 void SSP0_IRQHandler() {
-#elif defined(TARGET_LPC11U24)
+#elif defined(TARGET_LPC11U24) 
 void SSP1_IRQHandler() {
 #endif
     static int addr = 0, bit = 0x800000;
@@ -39,10 +39,10 @@
       while (_ssp->SR & (1<<1)) { // TNF
         if (data[addr] & bit) {
             // 1
-            _ssp->DR = 0x01f;
+            _ssp->DR = 0x3f8; //07f
         } else {
             // 0
-            _ssp->DR = 0x07f;
+            _ssp->DR = 0x380; //0077
         }
         bit = bit >> 1;
         if (bit == 0) {
@@ -58,7 +58,7 @@
     } else {
         // blank
         while (_ssp->SR & (1<<1)) { // TNF
-            _ssp->DR = 0xfff;
+            _ssp->DR = 0x000;
             if (addr < 50) {
                 addr ++;
             } else {
@@ -88,7 +88,7 @@
     } else {
         tape.frequency(8000000);
     }
-#if defined(TARGET_LPC1768) || defined(TARGET_LPC2368)
+#if defined(TARGET_LPC1768) || defined(TARGET_LPC2368) || defined(TARGET_LPC1114)
     NVIC_SetVector(SSP0_IRQn, (uint32_t)SSP0_IRQHandler);
     NVIC_SetPriority(SSP0_IRQn, 0);
     NVIC_EnableIRQ(SSP0_IRQn);