diff options
author | Ryan <fauxpark@gmail.com> | 2023-11-02 06:13:25 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-01 19:13:25 +0000 |
commit | a27bc60703dda744309c5f13320f667f5c766260 (patch) | |
tree | 9d161380e9a7a502cd70ce0334266fed8cd6acf5 /drivers/led/issi/is31fl3218.c | |
parent | 0a94c2951fa3f4f7ca928c0cb5119ec5d7000132 (diff) |
LED drivers: add defines for PWM and LED control register counts (#22383)
Diffstat (limited to 'drivers/led/issi/is31fl3218.c')
-rw-r--r-- | drivers/led/issi/is31fl3218.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/drivers/led/issi/is31fl3218.c b/drivers/led/issi/is31fl3218.c index 04523a3c01..357cb1ab55 100644 --- a/drivers/led/issi/is31fl3218.c +++ b/drivers/led/issi/is31fl3218.c @@ -24,6 +24,9 @@ #define IS31FL3218_REG_UPDATE 0x16 #define IS31FL3218_REG_RESET 0x17 +#define IS31FL3218_PWM_REGISTER_COUNT 18 +#define IS31FL3218_LED_CONTROL_REGISTER_COUNT 3 + #ifndef IS31FL3218_I2C_TIMEOUT # define IS31FL3218_I2C_TIMEOUT 100 #endif @@ -36,11 +39,11 @@ uint8_t g_twi_transfer_buffer[20]; // IS31FL3218 has 18 PWM outputs and a fixed I2C address, so no chaining. -uint8_t g_pwm_buffer[18]; +uint8_t g_pwm_buffer[IS31FL3218_PWM_REGISTER_COUNT]; bool g_pwm_buffer_update_required = false; -uint8_t g_led_control_registers[3] = {0}; -bool g_led_control_registers_update_required = false; +uint8_t g_led_control_registers[IS31FL3218_LED_CONTROL_REGISTER_COUNT] = {0}; +bool g_led_control_registers_update_required = false; void is31fl3218_write_register(uint8_t reg, uint8_t data) { g_twi_transfer_buffer[0] = reg; @@ -77,12 +80,12 @@ void is31fl3218_init(void) { is31fl3218_write_register(IS31FL3218_REG_SHUTDOWN, 0x01); // Set all PWM values to zero - for (uint8_t i = 0; i < 18; i++) { + for (uint8_t i = 0; i < IS31FL3218_PWM_REGISTER_COUNT; i++) { is31fl3218_write_register(IS31FL3218_REG_PWM + i, 0x00); } // turn off all LEDs in the LED control register - for (uint8_t i = 0; i < 3; i++) { + for (uint8_t i = 0; i < IS31FL3218_LED_CONTROL_REGISTER_COUNT; i++) { is31fl3218_write_register(IS31FL3218_REG_CONTROL + i, 0x00); } @@ -158,7 +161,7 @@ void is31fl3218_update_pwm_buffers(void) { void is31fl3218_update_led_control_registers(void) { if (g_led_control_registers_update_required) { - for (int i = 0; i < 3; i++) { + for (int i = 0; i < IS31FL3218_LED_CONTROL_REGISTER_COUNT; i++) { is31fl3218_write_register(IS31FL3218_REG_CONTROL + i, g_led_control_registers[i]); } |