Abstract class for LED driver component. Including "LedPwmOut API" class.
Diff: CompLedDvr.h
- Revision:
- 0:a0e4342d3b3d
- Child:
- 1:8a0aa36b236c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/CompLedDvr.h Wed Mar 04 08:16:10 2015 +0000 @@ -0,0 +1,71 @@ +/** Abstract class for LED driver component + * + * Abstract class for LED driver family + * No instance can be made from this class + * + * @author Akifumi (Tedd) OKANO, NXP Semiconductors + * @version 0.5 + * @date 04-Mar-2015 + * + * Released under the Apache 2 license License + */ + +#ifndef MBED_CompLedDvr +#define MBED_CompLedDvr + +#include "mbed.h" + +typedef enum { + /** Pin names of LED driver. Those are L0 .. L3, not like "LED0" to avoid mbed board LED names */ + L0, /**< LED0 pin */ + L1, /**< LED2 pin */ + L2, /**< LED2 pin */ + L3, /**< LED2 pin */ + L4, /**< LED2 pin */ + L5, /**< LED2 pin */ + L6, /**< LED2 pin */ + L7, /**< LED2 pin */ + L8, /**< LED2 pin */ + L9, /**< LED2 pin */ + L10, /**< LED2 pin */ + L11, /**< LED2 pin */ + L12, /**< LED2 pin */ + L13, /**< LED2 pin */ + L14, /**< LED2 pin */ + L15, /**< LED2 pin */ + L16, /**< LED2 pin */ + L17, /**< LED2 pin */ + L18, /**< LED2 pin */ + L19, /**< LED2 pin */ + L20, /**< LED2 pin */ + L21, /**< LED2 pin */ + L22, /**< LED2 pin */ + L23, /**< LED23 pin */ + L_NC = ~0x0L /**< for when the pin is left no-connection */ +} LedPinName; + + +/** Abstract class for LED driver component + * + * @class CompLedDvr + * + * Abstract class for LED driver family + * No instance can be made from this class + */ +class CompLedDvr +{ +public: + /** Default constructor */ + CompLedDvr(); + + /** Destructor */ + virtual ~CompLedDvr(); + + /** Virtual function to define standard function of the component */ + virtual void pwm( int port, float v ) = 0; +} +; + +#endif // MBED_CompLedDvr + +