RGB LED Driver demo

Dependents:   NJU6063_HelloWorld

Committer:
og
Date:
Sat Dec 26 13:19:46 2015 +0000
Revision:
0:0283db13b7f1
Child:
1:bbc915c814da
NJU6063 Library initial

Who changed what in which revision?

UserRevisionLine numberNew contents of line
og 0:0283db13b7f1 1 /** @file NJU6063.h
og 0:0283db13b7f1 2 * @brief mbed library to use a NJU6063 RGB LED Driver
og 0:0283db13b7f1 3 * http://www.njr.com/semicon/products/NJU6063.html
og 0:0283db13b7f1 4 * interface: I2C
og 0:0283db13b7f1 5 */
og 0:0283db13b7f1 6 #ifndef MBED_NJU6063_H
og 0:0283db13b7f1 7 #define MBED_NJU6063_H
og 0:0283db13b7f1 8
og 0:0283db13b7f1 9 #include "mbed.h"
og 0:0283db13b7f1 10 #define NJU6063_SLAVE 0x40
og 0:0283db13b7f1 11 #define EN 0x01
og 0:0283db13b7f1 12 #define EXT 0x02
og 0:0283db13b7f1 13 #define FDX1 0x00
og 0:0283db13b7f1 14 #define FDX2 0x04
og 0:0283db13b7f1 15 #define FDX4 0x08
og 0:0283db13b7f1 16 #define FDX8 0x0C
og 0:0283db13b7f1 17 #define FC1000KHZ 0x00
og 0:0283db13b7f1 18 #define FC1300KHZ 0x10
og 0:0283db13b7f1 19 #define FC800KHZ 0x20
og 0:0283db13b7f1 20 #define FC2200KHZ 0x30
og 0:0283db13b7f1 21 #define DMGP 0x80
og 0:0283db13b7f1 22 #define DO1 0x40
og 0:0283db13b7f1 23 #define ILED1OFF 0x00
og 0:0283db13b7f1 24 #define ILED1X1 0x03
og 0:0283db13b7f1 25 #define ILED1X05 0x02
og 0:0283db13b7f1 26 #define ILED1X025 0x01
og 0:0283db13b7f1 27 #define ILED2OFF 0x00
og 0:0283db13b7f1 28 #define ILED2X1 0x0C
og 0:0283db13b7f1 29 #define ILED2X05 0x08
og 0:0283db13b7f1 30 #define ILED2X025 0x04
og 0:0283db13b7f1 31 #define ILED3OFF 0x00
og 0:0283db13b7f1 32 #define ILED3X1 0x30
og 0:0283db13b7f1 33 #define ILED3X05 0x20
og 0:0283db13b7f1 34 #define ILED3X025 0x10
og 0:0283db13b7f1 35 #define ALL 0xff
og 0:0283db13b7f1 36
og 0:0283db13b7f1 37 #define DEFAULTINIT FC800KHZ|FDX8|EN
og 0:0283db13b7f1 38
og 0:0283db13b7f1 39 /**
og 0:0283db13b7f1 40 * @param sda I2C-bus SDA pin
og 0:0283db13b7f1 41 * @param scl I2C-bus SCL pin
og 0:0283db13b7f1 42 * @param rst Digital Out
og 0:0283db13b7f1 43 */
og 0:0283db13b7f1 44 class NJU6063
og 0:0283db13b7f1 45 {
og 0:0283db13b7f1 46 private:
og 0:0283db13b7f1 47 I2C _i2c;
og 0:0283db13b7f1 48 DigitalOut _rst;
og 0:0283db13b7f1 49 public:
og 0:0283db13b7f1 50 NJU6063( PinName sda, PinName scl, PinName rst);
og 0:0283db13b7f1 51 ~NJU6063() {};
og 0:0283db13b7f1 52 void reset(void);
og 0:0283db13b7f1 53 void set_multi_device(uint8_t n);
og 0:0283db13b7f1 54 void init(uint8_t chip_addr, uint8_t d);
og 0:0283db13b7f1 55 void set_iled(uint8_t chip_addr, uint8_t d1, uint8_t d2, uint8_t d3);
og 0:0283db13b7f1 56 void set_pwm(uint8_t chip_addr, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t loop=0x5f, uint8_t son=0x00);
og 0:0283db13b7f1 57 void dim_start(uint8_t chip_addr);
og 0:0283db13b7f1 58 uint8_t check_dim(void);
og 0:0283db13b7f1 59 };
og 0:0283db13b7f1 60
og 0:0283db13b7f1 61 #endif // MBED_NJU6063_H