2021-10-03 10:36:05 +00:00
|
|
|
/**
|
2022-01-05 16:10:18 +00:00
|
|
|
* @file furi_hal_light.h
|
2021-10-03 10:36:05 +00:00
|
|
|
* Light control HAL API
|
|
|
|
*/
|
|
|
|
|
2021-02-18 12:49:32 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <stdbool.h>
|
|
|
|
#include <stdint.h>
|
2022-01-05 16:10:18 +00:00
|
|
|
#include <furi_hal_resources.h>
|
2021-02-18 12:49:32 +00:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2021-10-03 10:36:05 +00:00
|
|
|
/** Init light driver
|
|
|
|
*/
|
2024-03-19 14:43:52 +00:00
|
|
|
void furi_hal_light_init(void);
|
2021-02-18 12:49:32 +00:00
|
|
|
|
2021-10-03 10:36:05 +00:00
|
|
|
/** Set light value
|
|
|
|
*
|
|
|
|
* @param light Light
|
|
|
|
* @param value light brightness [0-255]
|
2021-03-24 09:35:33 +00:00
|
|
|
*/
|
2021-08-08 18:03:25 +00:00
|
|
|
void furi_hal_light_set(Light light, uint8_t value);
|
2021-02-18 12:49:32 +00:00
|
|
|
|
2022-06-09 07:33:46 +00:00
|
|
|
/** Start hardware LED blinking mode
|
|
|
|
*
|
|
|
|
* @param light Light
|
|
|
|
* @param brightness light brightness [0-255]
|
|
|
|
* @param on_time LED on time in ms
|
|
|
|
* @param period LED blink period in ms
|
|
|
|
*/
|
|
|
|
void furi_hal_light_blink_start(Light light, uint8_t brightness, uint16_t on_time, uint16_t period);
|
|
|
|
|
|
|
|
/** Stop hardware LED blinking mode
|
|
|
|
*/
|
2024-03-19 14:43:52 +00:00
|
|
|
void furi_hal_light_blink_stop(void);
|
2022-06-09 07:33:46 +00:00
|
|
|
|
|
|
|
/** Set color in hardware LED blinking mode
|
|
|
|
*
|
|
|
|
* @param light Light
|
|
|
|
*/
|
|
|
|
void furi_hal_light_blink_set_color(Light light);
|
|
|
|
|
2022-04-13 20:50:25 +00:00
|
|
|
/** Execute sequence
|
|
|
|
*
|
|
|
|
* @param sequence Sequence to execute
|
|
|
|
*/
|
|
|
|
void furi_hal_light_sequence(const char* sequence);
|
|
|
|
|
2021-02-18 12:49:32 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|