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

HoldInterrupts.cpp

Committer:
isonno
Date:
2011-12-29
Revision:
0:6da5625a6946

File content as of revision 0:6da5625a6946:

// 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();
}