LED Controller Peripheral¶
This peripheral is applicable to IS31Fl3216 chip that is a light LED controller with an audio modulation mode. It can store data of 8 Frames with internal RAM to play small animations automatically.
You can also use it to control a number of LEDs connected to GPIOs. If you want to use the IS31Fl3216, see functions periph_is31fl3216_init()
, periph_is31fl3216_set_blink_pattern()
, periph_is31fl3216_set_duty()
, periph_is31fl3216_set_state()
.
Application Examples¶
Implementation of this API is demonstrated in checks/check_msc_leds example.
API Reference¶
Header File¶
Functions¶
-
esp_periph_handle_t
periph_is31fl3216_init
(periph_is31fl3216_cfg_t *is31fl3216_config)¶ Initializate the is31fl3216.
- Return
- ESP_OK Success
- ESP_FAIL Fail
- Parameters
is31fl3216_config
:
-
esp_err_t
periph_is31fl3216_set_state
(esp_periph_handle_t periph, periph_is31fl3216_state_t state)¶ Set the state of all the channels.
- Return
- ESP_OK Success
- ESP_FAIL Fail
- Parameters
periph
: The is31fl3216 handlestate
: The state of all channels
-
esp_err_t
periph_is31fl3216_set_blink_pattern
(esp_periph_handle_t periph, uint16_t blink_pattern)¶ Set the current enable channels.
- Return
- ESP_OK Success
- ESP_FAIL Fail
- Parameters
periph
: The is31fl3216 handleblink_pattern
: The bit pattern of enabled channels
-
esp_err_t
periph_is31fl3216_set_duty
(esp_periph_handle_t periph, uint8_t index, uint8_t value)¶ Set the duty of the channel.
- Return
- ESP_OK Success
- ESP_FAIL Fail
- Parameters
periph
: The is31fl3216 handleindex
: The channel numbervalue
: The value of the channel’s duty to be set
-
esp_err_t
periph_is31fl3216_set_duty_step
(esp_periph_handle_t periph, uint8_t step)¶ Set the duty step of flash.
- Return
- ESP_OK Success
- ESP_FAIL Fail
- Parameters
periph
: The is31fl3216 handlestep
: The step of flash
-
esp_err_t
periph_is31fl3216_set_interval
(esp_periph_handle_t periph, uint16_t interval_ms)¶ Set the internval time.
- Return
- ESP_OK Success
- ESP_FAIL Fail
- Parameters
periph
: The is31fl3216 handleinterval_ms
: Time of interval
-
esp_err_t
periph_is31fl3216_set_shift_mode
(esp_periph_handle_t periph, periph_is31_shift_mode_t mode)¶ Set the shift mode.
- Return
- ESP_OK Success
- ESP_FAIL Fail
- Parameters
periph
: The is31fl3216 handlemode
: Mode of periph_is31_shift_mode_t
-
esp_err_t
periph_is31fl3216_set_light_on_num
(esp_periph_handle_t periph, uint16_t light_on_num, uint16_t max_light_num)¶ Set the light on numbers.
- Return
- ESP_OK Success
- ESP_FAIL Fail
- Parameters
periph
: The is31fl3216 handlelight_on_num
: Enabled led numbermax_light_num
: Maximum led number
-
esp_err_t
periph_is31fl3216_set_act_time
(esp_periph_handle_t periph, uint16_t act_ms)¶ Set the action time.
- Return
- ESP_OK Success
- ESP_FAIL Fail
- Parameters
periph
: The is31fl3216 handleact_ms
: Action time, unit is millisecond, 0 is infinite
Structures¶
-
struct
periph_is31fl3216_cfg_t
¶ The configuration of is31fl3216.
Public Members
-
uint32_t
duty
[IS31FL3216_CH_NUM
]¶ An array of the is31fl3216’s duty
-
uint16_t
is31fl3216_pattern
¶ Current enable channel
-
periph_is31fl3216_state_t
state
¶ The state of all the channels
-
uint32_t