Skip to content

Commit

Permalink
Added shutdown fucntion to snled driver
Browse files Browse the repository at this point in the history
  • Loading branch information
lokher committed Jan 11, 2024
1 parent 4ae5990 commit cca8df6
Show file tree
Hide file tree
Showing 51 changed files with 81 additions and 2,256 deletions.
19 changes: 19 additions & 0 deletions drivers/led/snled27351-simple.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

#include "snled27351-simple.h"
#include "i2c_master.h"
#include "gpio.h"

#define SNLED27351_PWM_REGISTER_COUNT 192
#define SNLED27351_LED_CONTROL_REGISTER_COUNT 24
Expand Down Expand Up @@ -249,6 +250,24 @@ void snled27351_flush(void) {
#endif
}

void snled27351_shutdown(void) {
# if defined(LED_DRIVER_SHUTDOWN_PIN)
writePinLow(LED_DRIVER_SHUTDOWN_PIN);
# else
for (uint8_t i = 0; i < SNLED27351_DRIVER_COUNT; i++)
snled27351_sw_shutdown(i);
# endif
}

void snled27351_exit_shutdown(void) {
# if defined(LED_DRIVER_SHUTDOWN_PIN)
writePinHigh(LED_DRIVER_SHUTDOWN_PIN);
# else
for (uint8_t i = 0; i < SNLED27351_DRIVER_COUNT; i++)
snled27351_sw_return_normal(i);
# endif
}

void snled27351_sw_return_normal(uint8_t addr) {
// Select to function page
snled27351_write_register(addr, SNLED27351_REG_COMMAND, SNLED27351_COMMAND_FUNCTION);
Expand Down
3 changes: 2 additions & 1 deletion drivers/led/snled27351-simple.h
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,8 @@ void snled27351_update_pwm_buffers(uint8_t addr, uint8_t index);
void snled27351_update_led_control_registers(uint8_t addr, uint8_t index);

void snled27351_flush(void);

void snled27351_shutdown(void);
void snled27351_exit_shutdown(void);
void snled27351_sw_return_normal(uint8_t addr);
void snled27351_sw_shutdown(uint8_t addr);

Expand Down
19 changes: 19 additions & 0 deletions drivers/led/snled27351.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

#include "snled27351.h"
#include "i2c_master.h"
#include "gpio.h"

#define SNLED27351_PWM_REGISTER_COUNT 192
#define SNLED27351_LED_CONTROL_REGISTER_COUNT 24
Expand Down Expand Up @@ -264,6 +265,24 @@ void snled27351_flush(void) {
#endif
}

void snled27351_shutdown(void) {
# if defined(LED_DRIVER_SHUTDOWN_PIN)
writePinLow(LED_DRIVER_SHUTDOWN_PIN);
# else
for (uint8_t i = 0; i < SNLED27351_DRIVER_COUNT; i++)
snled27351_sw_shutdown(i);
# endif
}

void snled27351_exit_shutdown(void) {
# if defined(LED_DRIVER_SHUTDOWN_PIN)
writePinHigh(LED_DRIVER_SHUTDOWN_PIN);
# else
for (uint8_t i = 0; i < SNLED27351_DRIVER_COUNT; i++)
snled27351_sw_return_normal(i);
# endif
}

void snled27351_sw_return_normal(uint8_t addr) {
// Select to function page
snled27351_write_register(addr, SNLED27351_REG_COMMAND, SNLED27351_COMMAND_FUNCTION);
Expand Down
3 changes: 2 additions & 1 deletion drivers/led/snled27351.h
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,8 @@ void snled27351_update_pwm_buffers(uint8_t addr, uint8_t index);
void snled27351_update_led_control_registers(uint8_t addr, uint8_t index);

void snled27351_flush(void);

void snled27351_shutdown(void);
void snled27351_exit_shutdown(void);
void snled27351_sw_return_normal(uint8_t addr);
void snled27351_sw_shutdown(uint8_t addr);

Expand Down
Loading

0 comments on commit cca8df6

Please sign in to comment.