Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ClusterM/flipperzero-firmware.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/targets/f6/furi-hal/furi-hal-light.c')
-rw-r--r--firmware/targets/f6/furi-hal/furi-hal-light.c57
1 files changed, 30 insertions, 27 deletions
diff --git a/firmware/targets/f6/furi-hal/furi-hal-light.c b/firmware/targets/f6/furi-hal/furi-hal-light.c
index ecf0d4f2..15a69f09 100644
--- a/firmware/targets/f6/furi-hal/furi-hal-light.c
+++ b/firmware/targets/f6/furi-hal/furi-hal-light.c
@@ -1,46 +1,49 @@
#include <furi-hal-light.h>
#include <lp5562.h>
-#define TAG "FuriHalLight"
-
-#define LED_CURRENT_RED 50
-#define LED_CURRENT_GREEN 50
-#define LED_CURRENT_BLUE 50
-#define LED_CURRENT_WHITE 150
+#define LED_CURRENT_RED 50
+#define LED_CURRENT_GREEN 50
+#define LED_CURRENT_BLUE 50
+#define LED_CURRENT_WHITE 150
void furi_hal_light_init() {
- lp5562_reset();
+ furi_hal_i2c_acquire(&furi_hal_i2c_handle_power);
+
+ lp5562_reset(&furi_hal_i2c_handle_power);
+
+ lp5562_set_channel_current(&furi_hal_i2c_handle_power, LP5562ChannelRed, LED_CURRENT_RED);
+ lp5562_set_channel_current(&furi_hal_i2c_handle_power, LP5562ChannelGreen, LED_CURRENT_GREEN);
+ lp5562_set_channel_current(&furi_hal_i2c_handle_power, LP5562ChannelBlue, LED_CURRENT_BLUE);
+ lp5562_set_channel_current(&furi_hal_i2c_handle_power, LP5562ChannelWhite, LED_CURRENT_WHITE);
- lp5562_set_channel_current(LP5562ChannelRed, LED_CURRENT_RED);
- lp5562_set_channel_current(LP5562ChannelGreen, LED_CURRENT_GREEN);
- lp5562_set_channel_current(LP5562ChannelBlue, LED_CURRENT_BLUE);
- lp5562_set_channel_current(LP5562ChannelWhite, LED_CURRENT_WHITE);
+ lp5562_set_channel_value(&furi_hal_i2c_handle_power, LP5562ChannelRed, 0x00);
+ lp5562_set_channel_value(&furi_hal_i2c_handle_power, LP5562ChannelGreen, 0x00);
+ lp5562_set_channel_value(&furi_hal_i2c_handle_power, LP5562ChannelBlue, 0x00);
+ lp5562_set_channel_value(&furi_hal_i2c_handle_power, LP5562ChannelWhite, 0x00);
- lp5562_set_channel_value(LP5562ChannelRed, 0x00);
- lp5562_set_channel_value(LP5562ChannelGreen, 0x00);
- lp5562_set_channel_value(LP5562ChannelBlue, 0x00);
- lp5562_set_channel_value(LP5562ChannelWhite, 0x00);
+ lp5562_enable(&furi_hal_i2c_handle_power);
+ lp5562_configure(&furi_hal_i2c_handle_power);
- lp5562_enable();
- lp5562_configure();
- FURI_LOG_I(TAG, "Init OK");
+ furi_hal_i2c_release(&furi_hal_i2c_handle_power);
}
void furi_hal_light_set(Light light, uint8_t value) {
+ furi_hal_i2c_acquire(&furi_hal_i2c_handle_power);
switch(light) {
- case LightRed:
- lp5562_set_channel_value(LP5562ChannelRed, value);
+ case LightRed:
+ lp5562_set_channel_value(&furi_hal_i2c_handle_power, LP5562ChannelRed, value);
break;
- case LightGreen:
- lp5562_set_channel_value(LP5562ChannelGreen, value);
+ case LightGreen:
+ lp5562_set_channel_value(&furi_hal_i2c_handle_power, LP5562ChannelGreen, value);
break;
- case LightBlue:
- lp5562_set_channel_value(LP5562ChannelBlue, value);
+ case LightBlue:
+ lp5562_set_channel_value(&furi_hal_i2c_handle_power, LP5562ChannelBlue, value);
break;
- case LightBacklight:
- lp5562_set_channel_value(LP5562ChannelWhite, value);
+ case LightBacklight:
+ lp5562_set_channel_value(&furi_hal_i2c_handle_power, LP5562ChannelWhite, value);
break;
- default:
+ default:
break;
}
+ furi_hal_i2c_release(&furi_hal_i2c_handle_power);
} \ No newline at end of file