Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Revision 2:3574bf73abf5, committed 2015-03-19
- Comitter:
- nxp_ip
- Date:
- Thu Mar 19 10:34:33 2015 +0000
- Parent:
- 1:32308cbf7e68
- Commit message:
- API document update
Changed in this revision
| CompLedDvr.lib | Show annotated file Show diff for this revision Revisions of this file |
| PCA9632.h | Show annotated file Show diff for this revision Revisions of this file |
--- a/CompLedDvr.lib Wed Mar 04 08:37:34 2015 +0000 +++ b/CompLedDvr.lib Thu Mar 19 10:34:33 2015 +0000 @@ -1,1 +1,1 @@ -http://developer.mbed.org/users/nxp_ip/code/CompLedDvr/#a0e4342d3b3d +http://developer.mbed.org/users/nxp_ip/code/CompLedDvr/#8a0aa36b236c
--- a/PCA9632.h Wed Mar 04 08:37:34 2015 +0000
+++ b/PCA9632.h Thu Mar 19 10:34:33 2015 +0000
@@ -27,11 +27,11 @@
*
* @class PCA9632
*
- * This is a driver code for the PCA9632 is an I2C-bus controlled 4-bit LED driver
- * optimized for Red/Green/Blue/Amber (RGBA) color mixing applications. In Individual
- * brightness control mode, each LED output has its own 8-bit resolution (256 steps)
- * fixed frequency Individual PWM controller that operates at 1.5625 kHz with a duty
- * cycle that is adjustable from 0 % to 99.6 % to allow the LED to be set to a specific
+ * This is a driver code for the PCA9632 is an I2C-bus controlled 4-bit LED driver
+ * optimized for Red/Green/Blue/Amber (RGBA) color mixing applications. In Individual
+ * brightness control mode, each LED output has its own 8-bit resolution (256 steps)
+ * fixed frequency Individual PWM controller that operates at 1.5625 kHz with a duty
+ * cycle that is adjustable from 0 % to 99.6 % to allow the LED to be set to a specific
* brightness value.
* This class provides interface for PCA9632 operation and accessing its registers.
* Detail information is available on next URL.
@@ -41,10 +41,10 @@
* @code
* #include "mbed.h"
* #include "PCA9632.h"
- *
+ *
* PCA9632 led_cntlr( p28, p27, 0xC4 ); // SDA, SCL, Slave_address(option)
* LedPwmOut led( led_cntlr, L0 ); // for LED0 pin
- *
+ *
* int main()
* {
* //
@@ -57,9 +57,9 @@
* // 2nd sample is using PCA9632 class function.
* // the 'pwm()' function takes LED channel number and duty-ratio value
* //
- *
+ *
* while ( 1 ) {
- *
+ *
* //
* // 1st sample is using LedPwmOut API.
* // PWM control via LedPwmOut
@@ -70,7 +70,7 @@
* wait( 0.1 );
* }
* }
- *
+ *
* //
* // 2nd sample is using PCA9632 class function.
* // PWM control by device class function call
@@ -89,13 +89,32 @@
{
public:
- /** Name of the PCA9632 registers */
+#if DOXYGEN_ONLY
+ /** PCA9626 pin names high-level API i.e. LedPwmOut */
+ typedef enum {
+ L0, /**< LED0 pin */
+ L1, /**< LED2 pin */
+ L2, /**< LED2 pin */
+ L3, /**< LED2 pin */
+ L_NC = ~0x0L /**< for when the pin is left no-connection */
+ } LedPinName;
+#endif // DOXYGEN_ONLY
+
+ /** Name of the PCA9632 registers (for direct register access) */
enum command_reg {
- MODE1, MODE2,
- PWM0, PWM1, PWM2, PWM3,
- GRPPWM, GRPFREQ,
- LEDOUT,
- SUBADR1, SUBADR2, SUBADR3, ALLCALLADR,
+ MODE1, /**< MODE1 register */
+ MODE2, /**< MODE2 register */
+ PWM0, /**< PWM0 register */
+ PWM1, /**< PWM1 register */
+ PWM2, /**< PWM2 register */
+ PWM3, /**< PWM3 register */
+ GRPPWM, /**< GRPPWM register */
+ GRPFREQ, /**< GRPFREQ register */
+ LEDOUT, /**< LEDOUT register */
+ SUBADR1, /**< SUBADR1 register */
+ SUBADR2, /**< SUBADR2 register */
+ SUBADR3, /**< SUBADR3 register */
+ ALLCALLADR, /**< ALLCALLADR register */
REGISTER_START = MODE1,
PWM_REGISTER_START = PWM0,
@@ -155,29 +174,29 @@
*
* @param reg_addr Register address
* @param data Value for setting into the register
- */
+ */
void write( char reg_addr, char data );
/** Register write (multiple bytes) : Low level access to device register
*
* @param data Pointer to an array. First 1 byte should be the writing start register address
* @param length Length of data
- */
+ */
void write( char *data, int length );
-
+
/** Register read (single byte) : Low level access to device register
*
* @param reg_addr Register address
* @return Read value from register
- */
+ */
char read( char reg_addr );
-
+
/** Register write (multiple bytes) : Low level access to device register
*
* @param reg_addr Register address
* @param data Pointer to an array. The values are stored in this array.
* @param length Length of data
- */
+ */
void read( char reg_addr, char *data, int length );
PCA9632 : 4ch LED driver (voltage switch type)