LEDコントローラー周辺機器

LED Controller Peripheral

この周辺機器は、オーディオ変調モードを備えたライトLEDコントローラであるIS31Fl3216チップに適用できます。 小さなアニメーションを自動的に再生するために、内部RAMを備えた8フレームのデータを保存できます。 また、これを使用して、GPIOに接続されている多数のLEDを制御することもできます。 IS31Fl3216を使用する場合は、関数periph_is31fl3216_init()periph_is31fl3216_set_blink_pattern()periph_is31fl3216_set_duty()periph_is31fl3216_set_state()を参照してください。

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

このAPIの実装は、checks/check_msc_ledsの例で示されています。

Implementation of this API is demonstrated in checks/check_msc_leds example.

APIリファレンス

API Reference

ヘッダーファイル

Header File

関数

Functions
esp_periph_handle_t periph_is31fl3216_init(periph_is31fl3216_cfg_t *is31fl3216_config)

is31fl3216を初期化します。

Initializate the is31fl3216.

Return
  • ESP_OKの成功
    ESP_OK Success
  • ESP_FAIL失敗
    ESP_FAIL Fail
Parameters
  • is31fl3216_config:
    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の成功
    ESP_OK Success
  • ESP_FAIL失敗
    ESP_FAIL Fail
Parameters
  • periph: is31fl3216ハンドル
    periph: The is31fl3216 handle
  • state: すべてのチャネルの状態
    state: The state of all channels

現在のイネーブルチャネルを設定します。

Set the current enable channels.

Return
  • ESP_OKの成功
    ESP_OK Success
  • ESP_FAIL失敗
    ESP_FAIL Fail
Parameters
  • periph: is31fl3216ハンドル
    periph: The is31fl3216 handle
  • blink_pattern: 有効なチャネルのビットパターン
    blink_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の成功
    ESP_OK Success
  • ESP_FAIL失敗
    ESP_FAIL Fail
Parameters
  • periph: is31fl3216ハンドル
    periph: The is31fl3216 handle
  • index: チャンネル番号
    index: The channel number
  • value: 設定するチャネルの義務の値
    value: 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の成功
    ESP_OK Success
  • ESP_FAIL失敗
    ESP_FAIL Fail
Parameters
  • periph: is31fl3216ハンドル
    periph: The is31fl3216 handle
  • step: フラッシュのステップ
    step: 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の成功
    ESP_OK Success
  • ESP_FAIL失敗
    ESP_FAIL Fail
Parameters
  • periph: is31fl3216ハンドル
    periph: The is31fl3216 handle
  • interval_ms: 間隔の時間
    interval_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の成功
    ESP_OK Success
  • ESP_FAIL失敗
    ESP_FAIL Fail
Parameters
  • periph: is31fl3216ハンドル
    periph: The is31fl3216 handle
  • mode: periph_is31_shift_mode_tのモード
    mode: 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の成功
    ESP_OK Success
  • ESP_FAIL失敗
    ESP_FAIL Fail
Parameters
  • periph: is31fl3216ハンドル
    periph: The is31fl3216 handle
  • light_on_num: 有効なLED番号
    light_on_num: Enabled led number
  • max_light_num: 最大LED数
    max_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の成功
    ESP_OK Success
  • ESP_FAIL失敗
    ESP_FAIL Fail
Parameters
  • periph: is31fl3216ハンドル
    periph: The is31fl3216 handle
  • act_ms: アクション時間、単位はミリ秒、0は無限大
    act_ms: Action time, unit is millisecond, 0 is infinite

構造体

Structures
struct periph_is31fl3216_cfg_t

is31fl3216の構成。

The configuration of is31fl3216.

Public Members

uint32_t duty[IS31FL3216_CH_NUM]

is31fl3216の義務の配列

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

マクロ

Macros
IS31FL3216_CH_NUM
BLUE_LED_MAX_NUM

列挙

Enumerations
enum periph_is31fl3216_state_t

Values:

IS31FL3216_STATE_UNKNOWN
IS31FL3216_STATE_OFF
IS31FL3216_STATE_ON
IS31FL3216_STATE_FLASH
IS31FL3216_STATE_BY_AUDIO
IS31FL3216_STATE_SHIFT
enum periph_is31_shift_mode_t

Values:

PERIPH_IS31_SHIFT_MODE_UNKNOWN
PERIPH_IS31_SHIFT_MODE_ACC

蓄積モード

accumulation mode
PERIPH_IS31_SHIFT_MODE_SINGLE