Abstract class for LED driver component. Including "LedPwmOut API" class.

Dependents:   PCA962x PCA9632

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers CompLedDvr.h Source File

CompLedDvr.h

00001 /** Abstract class for LED driver component
00002  *
00003  *  Abstract class for LED driver family
00004  *  No instance can be made from this class
00005  *
00006  *  @author  Akifumi (Tedd) OKANO, NXP Semiconductors
00007  *  @version 0.5
00008  *  @date    04-Mar-2015
00009  *
00010  *  Released under the Apache 2 license License
00011  */
00012 
00013 #ifndef     MBED_CompLedDvr
00014 #define     MBED_CompLedDvr
00015 
00016 #include    "mbed.h"
00017 
00018 /** Pin names of LED driver. Those are L0 .. L3, not like "LED0" to avoid mbed board LED names  */
00019 typedef enum {
00020     L0,            /**< LED0 pin                               */
00021     L1,            /**< LED2 pin                               */
00022     L2,            /**< LED2 pin                               */
00023     L3,            /**< LED2 pin                               */
00024     L4,            /**< LED2 pin                               */
00025     L5,            /**< LED2 pin                               */
00026     L6,            /**< LED2 pin                               */
00027     L7,            /**< LED2 pin                               */
00028     L8,            /**< LED2 pin                               */
00029     L9,            /**< LED2 pin                               */
00030     L10,           /**< LED2 pin                               */
00031     L11,           /**< LED2 pin                               */
00032     L12,           /**< LED2 pin                               */
00033     L13,           /**< LED2 pin                               */
00034     L14,           /**< LED2 pin                               */
00035     L15,           /**< LED2 pin                               */
00036     L16,           /**< LED2 pin                               */
00037     L17,           /**< LED2 pin                               */
00038     L18,           /**< LED2 pin                               */
00039     L19,           /**< LED2 pin                               */
00040     L20,           /**< LED2 pin                               */
00041     L21,           /**< LED2 pin                               */
00042     L22,           /**< LED2 pin                               */
00043     L23,           /**< LED23 pin                               */
00044     L_NC = ~0x0L   /**< for when the pin is left no-connection */
00045 } LedPinName;
00046 
00047 
00048 /** Abstract class for LED driver component
00049  *
00050  *  @class CompLedDvr
00051  *
00052  *  Abstract class for LED driver family
00053  *  No instance can be made from this class
00054  */
00055 class CompLedDvr
00056 {
00057 public:
00058     /** Default constructor */
00059     CompLedDvr();
00060 
00061     /** Destructor */
00062     virtual ~CompLedDvr();
00063 
00064     /** Virtual function to define standard function of the component   */
00065     virtual void    pwm( int port, float v )    = 0;
00066 }
00067 ;
00068 
00069 #endif  //  MBED_CompLedDvr
00070 
00071