diff options
Diffstat (limited to 'drivers/led/issi/is31fl3731-simple.h')
-rw-r--r-- | drivers/led/issi/is31fl3731-simple.h | 44 |
1 files changed, 40 insertions, 4 deletions
diff --git a/drivers/led/issi/is31fl3731-simple.h b/drivers/led/issi/is31fl3731-simple.h index 69fba14a0b..69d38e74da 100644 --- a/drivers/led/issi/is31fl3731-simple.h +++ b/drivers/led/issi/is31fl3731-simple.h @@ -20,15 +20,49 @@ #include <stdint.h> #include <stdbool.h> -#include <string.h> #include "progmem.h" -typedef struct is31_led { +// ======== DEPRECATED DEFINES - DO NOT USE ======== +#ifdef LED_DRIVER_ADDR_1 +# define IS31FL3731_I2C_ADDRESS_1 LED_DRIVER_ADDR_1 +#endif +#ifdef LED_DRIVER_ADDR_2 +# define IS31FL3731_I2C_ADDRESS_2 LED_DRIVER_ADDR_2 +#endif +#ifdef LED_DRIVER_ADDR_3 +# define IS31FL3731_I2C_ADDRESS_3 LED_DRIVER_ADDR_3 +#endif +#ifdef LED_DRIVER_ADDR_4 +# define IS31FL3731_I2C_ADDRESS_4 LED_DRIVER_ADDR_4 +#endif +#ifdef LED_DRIVER_COUNT +# define IS31FL3731_DRIVER_COUNT LED_DRIVER_COUNT +#endif +#ifdef ISSI_TIMEOUT +# define IS31FL3731_I2C_TIMEOUT ISSI_TIMEOUT +#endif +#ifdef ISSI_PERSISTENCE +# define IS31FL3731_I2C_PERSISTENCE ISSI_PERSISTENCE +#endif +#ifdef ISSI_3731_DEGHOST +# define IS31FL3731_DEGHOST ISSI_3731_DEGHOST +#endif + +#define is31_led is31fl3731_led_t +#define g_is31_leds g_is31fl3731_leds +// ======== + +#define IS31FL3731_I2C_ADDRESS_GND 0x74 +#define IS31FL3731_I2C_ADDRESS_SCL 0x75 +#define IS31FL3731_I2C_ADDRESS_SDA 0x76 +#define IS31FL3731_I2C_ADDRESS_VCC 0x77 + +typedef struct is31fl3731_led_t { uint8_t driver : 2; uint8_t v; -} __attribute__((packed)) is31_led; +} __attribute__((packed)) is31fl3731_led_t; -extern const is31_led PROGMEM g_is31_leds[LED_MATRIX_LED_COUNT]; +extern const is31fl3731_led_t PROGMEM g_is31fl3731_leds[LED_MATRIX_LED_COUNT]; void is31fl3731_init(uint8_t addr); void is31fl3731_write_register(uint8_t addr, uint8_t reg, uint8_t data); @@ -46,6 +80,8 @@ void is31fl3731_set_led_control_register(uint8_t index, bool value); void is31fl3731_update_pwm_buffers(uint8_t addr, uint8_t index); void is31fl3731_update_led_control_registers(uint8_t addr, uint8_t index); +void is31fl3731_flush(void); + #define C1_1 0x24 #define C1_2 0x25 #define C1_3 0x26 |