Library to handle the X-NUCLEO-LED61A1 LED Control Expansion Board based on the LED6001 component.

Dependents:   LedDimming_LED61A1_mbedOS HelloWorld_LED61A1_mbedOS LedDimming_LED61A1 HelloWorld_LED61A1 ... more

Fork of X_NUCLEO_LED61A1 by ST Expansion SW Team

LED Control Library

Library to handle the X-NUCLEO-LED61A1 LED Control Expansion Board based on the LED6001 component.

Platform compatibility

  • NUCLEO boards have been tested with the default configuration provided by the HelloWorld_LED61A1 example.
  • NUCLEO-F070RB, NUCLEO-F072RB, NUCLEO-F091RC boards have been tested with the following patch:
    • to connect with a wire the NUCLEO’s D9 pin to the LED61A1’s D6 pin;
    • to initialize the pwm PinName variable with D9 rather than D6.
  • NUCLEO-F302R8 board has been tested with the following patch:
    • to connect with a wire the NUCLEO’s D7 pin to the LED61A1’s D6 pin;
    • to initialize the pwm PinName variable with D7 rather than D6.
  • LPCXpresso11U68 board has been tested with the limitation of using only the PWM Dimming, as it provides only one PWM channel, thus allowing just one between the PWM or Analog Dimming functionalities. It has been tested with the following patch:
    • to connect with a wire the LPCX’s D3 pin to the LED61A1’s D4 pin;
    • to connect with a wire the LPCX’s D4 pin to the LED61A1’s D6 pin;
    • to initialize the xfault_irq PinName variable with D3 rather than D4;
    • to initialize the pwm PinName variable with D4 rather than D6;
    • to initialize the analog PinName variable with NC rather than D5;
    • to disable the use of the user button in any application example as it is not available.
  • FRDM-K64F board has been tested with the following patch:
    • to disable the use of the user button in any application example as it is not available.

Files at this revision

API Documentation at this revision

Comitter:
Davidroid
Date:
Fri Feb 05 16:31:40 2016 +0000
Parent:
6:0f6c4685d36f
Child:
8:ef1936790948
Commit message:
+ Updated with the new driver's naming convention.

Changed in this revision

Components/Common/component.h Show annotated file Show diff for this revision Revisions of this file
Components/Interfaces/Component_class.h Show annotated file Show diff for this revision Revisions of this file
Components/Interfaces/Led_class.h Show annotated file Show diff for this revision Revisions of this file
Components/led6001/led6001_class.h Show annotated file Show diff for this revision Revisions of this file
--- a/Components/Common/component.h	Thu Feb 04 13:02:26 2016 +0000
+++ b/Components/Common/component.h	Fri Feb 05 16:31:40 2016 +0000
@@ -37,10 +37,10 @@
  */
 
 
-/* Prevent recursive inclusion -----------------------------------------------*/
+/* Define to prevent recursive inclusion -------------------------------------*/
 
-#ifndef __COMPONENT_H__
-#define __COMPONENT_H__
+#ifndef __COMPONENT_H
+#define __COMPONENT_H
 
 
 /* Types ---------------------------------------------------------------------*/
@@ -88,4 +88,6 @@
     COMPONENT_NOT_IMPLEMENTED
 } Status_t;
 
-#endif
\ No newline at end of file
+#endif /* __COMPONENT_H */
+
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
--- a/Components/Interfaces/Component_class.h	Thu Feb 04 13:02:26 2016 +0000
+++ b/Components/Interfaces/Component_class.h	Fri Feb 05 16:31:40 2016 +0000
@@ -1,9 +1,9 @@
 /**
  ******************************************************************************
  * @file    Component_class.h
- * @author  Davide Aliprandi, STMicroelectronics
- * @version V1.0.0
- * @date    April 13th, 2015
+ * @author  AST / EST
+ * @version V0.0.1
+ * @date    13-April-2015
  * @brief   This file contains the abstract class describing the interface of a
  *          generic component.
  ******************************************************************************
@@ -37,7 +37,7 @@
  */
 
 
-/* Define to prevent from recursive inclusion --------------------------------*/
+/* Define to prevent recursive inclusion -------------------------------------*/
 
 #ifndef __COMPONENT_CLASS_H
 #define __COMPONENT_CLASS_H
@@ -56,20 +56,20 @@
 {
 public:
     /**
-     * @brief  Initializing the component.
-     * @param  init Pointer to device specific initalization structure.
-     * @retval "0" in case of success, an error code otherwise.
+     * @brief     Initializing the component.
+     * @param[in] init pointer to device specific initalization structure.
+     * @retval    "0" in case of success, an error code otherwise.
      */
     virtual int Init(void *init) = 0;
 
     /**
-     * @brief  Getting the ID of the component.
-     * @param  id Pointer to an allocated variable to store the ID into.
-     * @retval "0" in case of success, an error code otherwise.
+     * @brief      Getting the ID of the component.
+     * @param[out] id pointer to an allocated variable to store the ID into.
+     * @retval     "0" in case of success, an error code otherwise.
      */
     virtual int ReadID(uint8_t *id) = 0;
 };
 
 #endif /* __COMPONENT_CLASS_H */
 
-/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ 
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
--- a/Components/Interfaces/Led_class.h	Thu Feb 04 13:02:26 2016 +0000
+++ b/Components/Interfaces/Led_class.h	Fri Feb 05 16:31:40 2016 +0000
@@ -4,8 +4,8 @@
  * @author  AST
  * @version V0.0.1
  * @date    13-April-2015
- * @brief   This file contains the abstract class describing the interface of an
- *          LED component.
+ * @brief   This file contains the abstract class describing the interface of a
+ *          led component.
  ******************************************************************************
  * @attention
  *
@@ -49,7 +49,7 @@
 */
 
 
-/* Define to prevent from recursive inclusion --------------------------------*/
+/* Define to prevent recursive inclusion -------------------------------------*/
 
 #ifndef __LED_CLASS_H
 #define __LED_CLASS_H
@@ -76,7 +76,7 @@
      *     pointer to function is not "0").                                   *
      *                                                                        *
      * Example:                                                               *
-     *    virtual int GetValue(float *pfData) = 0;                            *
+     *    virtual int GetValue(float *f) = 0;                                 *
      *------------------------------------------------------------------------*/
     /**
      * @brief  Getting the current flowing through the LED.
@@ -103,4 +103,4 @@
 
 #endif /* __LED_CLASS_H */
 
-/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ 
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
--- a/Components/led6001/led6001_class.h	Thu Feb 04 13:02:26 2016 +0000
+++ b/Components/led6001/led6001_class.h	Fri Feb 05 16:31:40 2016 +0000
@@ -119,7 +119,7 @@
          *   measure = 0;                                                     *
          *   instance_id = number_of_instances++;                             *
          *--------------------------------------------------------------------*/
-         this->xfault_irq.mode(PullUp);
+        this->xfault_irq.mode(PullUp);
     }
     
     /**
@@ -140,9 +140,9 @@
      *     table's functions, if any (2).                                     *
      *                                                                        *
      * Example:                                                               *
-     *   virtual int GetValue(float *pData) //(1)                             *
+     *   virtual int GetValue(float *f)  //(1)                                *
      *   {                                                                    *
-     *     return COMPONENT_GetValue(float *pfData);                          *
+     *     return COMPONENT_GetValue(float *f);                               *
      *   }                                                                    *
      *                                                                        *
      *   virtual int EnableFeature(void) //(2)                                *
@@ -236,11 +236,11 @@
      * Implement here interrupt related methods, if any.                      *
      * Note that interrupt handling is platform dependent, e.g.:              *
      *   + mbed:                                                              *
-     *     InterruptIn feature_irq(pin); //Interrupt object.                  *
-     *     feature_irq.rise(callback);   //Attach a callback.                 *
-     *     feature_irq.mode(PullNone);   //Set interrupt mode.                *
-     *     feature_irq.enable_irq();     //Enable interrupt.                  *
-     *     feature_irq.disable_irq();    //Disable interrupt.                 *
+     *     InterruptIn feature_irq(pin);           //Interrupt object.        *
+     *     feature_irq.fall(callback);             //Attach a callback.       *
+     *     feature_irq.mode(PullNone);             //Set interrupt mode.      *
+     *     feature_irq.enable_irq();               //Enable interrupt.        *
+     *     feature_irq.disable_irq();              //Disable interrupt.       *
      *   + Arduino:                                                           *
      *     attachInterrupt(pin, callback, RISING); //Attach a callback.       *
      *     detachInterrupt(pin);                   //Detach a callback.       *
@@ -248,7 +248,7 @@
      * Example (mbed):                                                        *
      *   void AttachFeatureIRQ(void (*fptr) (void))                           *
      *   {                                                                    *
-     *     feature_irq.rise(fptr);                                            *
+     *     feature_irq.fall(fptr);                                            *
      *   }                                                                    *
      *                                                                        *
      *   void EnableFeatureIRQ(void)                                          *
@@ -307,9 +307,9 @@
      *     source files but not pointed by the component's virtual table (3). *
      *                                                                        *
      * Example:                                                               *
-     *   DrvStatusTypeDef COMPONENT_GetValue(float* pfData); //(1)            *
-     *   DrvStatusTypeDef COMPONENT_EnableFeature(void);     //(2)            *
-     *   DrvStatusTypeDef COMPONENT_ComputeAverage(void);    //(3)            *
+     *   Status_t COMPONENT_GetValue(float *f);   //(1)                       *
+     *   Status_t COMPONENT_EnableFeature(void);  //(2)                       *
+     *   Status_t COMPONENT_ComputeAverage(void); //(3)                       *
      *------------------------------------------------------------------------*/