Source code for the Curilights Controller. See http://www.saccade.com/writing/projects/CuriController/ for details.

Dependencies:   FatFileSystem mbed

This is the source code for the Curilights controller. This lets you interactively control a string of Curilights. It provides a simple click-wheel user interface for changing colors, brightness and behavior. It responds to movement and lighting.

Finished Controller

/media/uploads/isonno/nxp3872_controllerclose.jpg

System Block Diagram

/media/uploads/isonno/blockdiagram.png

Revision:
0:6da5625a6946
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/HoldInterrupts.cpp	Thu Dec 29 01:59:53 2011 +0000
@@ -0,0 +1,20 @@
+// Simple class to disable interrupts in a C++ code block
+// Does the right thing when nested calls are made.
+
+#include "HoldInterrupts.h"
+
+static int gHoldInterruptLevel = 0;
+
+HoldInterrupts::HoldInterrupts() 
+{
+    if (gHoldInterruptLevel == 0)
+        __disable_irq();
+    gHoldInterruptLevel++;
+}
+
+HoldInterrupts::~HoldInterrupts() 
+{
+    gHoldInterruptLevel--; 
+    if (gHoldInterruptLevel == 0)
+        __enable_irq();
+}