diff --git a/right/src/slave_drivers/slave_driver_led_driver.c b/right/src/slave_drivers/slave_driver_led_driver.c index f3d4bf8..9a1eb1e 100644 --- a/right/src/slave_drivers/slave_driver_led_driver.c +++ b/right/src/slave_drivers/slave_driver_led_driver.c @@ -1,10 +1,7 @@ #include "slave_drivers/slave_driver_led_driver.h" -#include "led_driver.h" - -#define BUFFER_SIZE (LED_DRIVER_LED_COUNT + 1) uint8_t ledsBuffer[BUFFER_SIZE] = {FRAME_REGISTER_PWM_FIRST}; -uint8_t ledDriverStates[2] = {0}; +uint8_t ledDriverPhases[2] = {0}; uint8_t ledControlBufferLeft[] = { FRAME_REGISTER_LED_CONTROL_FIRST, @@ -60,7 +57,7 @@ void LedSlaveDriver_Init() { } void LedSlaveDriver_Update(uint8_t ledDriverId) { - uint8_t *ledDriverPhase = ledDriverStates + ledDriverId; + uint8_t *ledDriverPhase = ledDriverPhases + ledDriverId; uint8_t ledDriverAddress = ledDriverId ? I2C_ADDRESS_LED_DRIVER_LEFT : I2C_ADDRESS_LED_DRIVER_RIGHT; uint8_t *ledControlBuffer = ledDriverId ? ledControlBufferLeft : ledControlBufferRight; diff --git a/right/src/slave_drivers/slave_driver_led_driver.h b/right/src/slave_drivers/slave_driver_led_driver.h index 4d3313d..097984d 100644 --- a/right/src/slave_drivers/slave_driver_led_driver.h +++ b/right/src/slave_drivers/slave_driver_led_driver.h @@ -4,6 +4,11 @@ // Includes: #include "fsl_common.h" + #include "led_driver.h" + +// Macros: + + #define BUFFER_SIZE (LED_DRIVER_LED_COUNT + 1) // Typedefs: @@ -15,6 +20,11 @@ LedDriverPhase_Initialized, } led_driver_phase_t; + typedef struct { + led_driver_phase_t phase; + uint8_t frames[LED_DRIVER_LED_COUNT]; + } led_driver_state_t; + // Functions: extern void LedSlaveDriver_Init();