mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-04-24 03:29:57 -07:00
XFW setting can just use FuriHal enum
This commit is contained in:
@@ -1,8 +1,7 @@
|
||||
#include <furi_hal.h>
|
||||
#include <xtreme/xtreme.h>
|
||||
|
||||
#define UART_CH \
|
||||
(xtreme_settings.uart_nmea_channel == UARTDefault ? FuriHalUartIdUSART1 : FuriHalUartIdLPUART1)
|
||||
#define UART_CH (xtreme_settings.uart_nmea_channel)
|
||||
|
||||
#define RX_BUF_SIZE 1024
|
||||
|
||||
|
||||
@@ -33,28 +33,31 @@ static void xtreme_app_scene_protocols_gpio_nrf24_handle_changed(VariableItem* i
|
||||
|
||||
static void xtreme_app_scene_protocols_gpio_esp32_channel_changed(VariableItem* item) {
|
||||
XtremeApp* app = variable_item_get_context(item);
|
||||
xtreme_settings.uart_esp_channel =
|
||||
variable_item_get_current_value_index(item) == 0 ? UARTDefault : UARTExtra;
|
||||
xtreme_settings.uart_esp_channel = variable_item_get_current_value_index(item) == 0 ?
|
||||
FuriHalSerialIdUsart :
|
||||
FuriHalSerialIdLpuart;
|
||||
variable_item_set_current_value_text(
|
||||
item, xtreme_settings.uart_esp_channel == UARTDefault ? "13,14" : "15,16");
|
||||
item, xtreme_settings.uart_esp_channel == FuriHalSerialIdUsart ? "13,14" : "15,16");
|
||||
app->save_settings = true;
|
||||
}
|
||||
|
||||
static void xtreme_app_scene_protocols_gpio_nmea_channel_changed(VariableItem* item) {
|
||||
XtremeApp* app = variable_item_get_context(item);
|
||||
xtreme_settings.uart_nmea_channel =
|
||||
variable_item_get_current_value_index(item) == 0 ? UARTDefault : UARTExtra;
|
||||
xtreme_settings.uart_nmea_channel = variable_item_get_current_value_index(item) == 0 ?
|
||||
FuriHalSerialIdUsart :
|
||||
FuriHalSerialIdLpuart;
|
||||
variable_item_set_current_value_text(
|
||||
item, xtreme_settings.uart_nmea_channel == UARTDefault ? "13,14" : "15,16");
|
||||
item, xtreme_settings.uart_nmea_channel == FuriHalSerialIdUsart ? "13,14" : "15,16");
|
||||
app->save_settings = true;
|
||||
}
|
||||
|
||||
static void xtreme_app_scene_protocols_gpio_general_channel_changed(VariableItem* item) {
|
||||
XtremeApp* app = variable_item_get_context(item);
|
||||
xtreme_settings.uart_general_channel =
|
||||
variable_item_get_current_value_index(item) == 0 ? UARTDefault : UARTExtra;
|
||||
xtreme_settings.uart_general_channel = variable_item_get_current_value_index(item) == 0 ?
|
||||
FuriHalSerialIdUsart :
|
||||
FuriHalSerialIdLpuart;
|
||||
variable_item_set_current_value_text(
|
||||
item, xtreme_settings.uart_general_channel == UARTDefault ? "13,14" : "15,16");
|
||||
item, xtreme_settings.uart_general_channel == FuriHalSerialIdUsart ? "13,14" : "15,16");
|
||||
app->save_settings = true;
|
||||
}
|
||||
|
||||
@@ -91,7 +94,7 @@ void xtreme_app_scene_protocols_gpio_on_enter(void* context) {
|
||||
app);
|
||||
variable_item_set_current_value_index(item, xtreme_settings.uart_esp_channel);
|
||||
variable_item_set_current_value_text(
|
||||
item, xtreme_settings.uart_esp_channel == UARTDefault ? "13,14" : "15,16");
|
||||
item, xtreme_settings.uart_esp_channel == FuriHalSerialIdUsart ? "13,14" : "15,16");
|
||||
|
||||
item = variable_item_list_add(
|
||||
var_item_list,
|
||||
@@ -101,7 +104,7 @@ void xtreme_app_scene_protocols_gpio_on_enter(void* context) {
|
||||
app);
|
||||
variable_item_set_current_value_index(item, xtreme_settings.uart_nmea_channel);
|
||||
variable_item_set_current_value_text(
|
||||
item, xtreme_settings.uart_nmea_channel == UARTDefault ? "13,14" : "15,16");
|
||||
item, xtreme_settings.uart_nmea_channel == FuriHalSerialIdUsart ? "13,14" : "15,16");
|
||||
|
||||
item = variable_item_list_add(
|
||||
var_item_list,
|
||||
@@ -111,7 +114,7 @@ void xtreme_app_scene_protocols_gpio_on_enter(void* context) {
|
||||
app);
|
||||
variable_item_set_current_value_index(item, xtreme_settings.uart_general_channel);
|
||||
variable_item_set_current_value_text(
|
||||
item, xtreme_settings.uart_general_channel == UARTDefault ? "13,14" : "15,16");
|
||||
item, xtreme_settings.uart_general_channel == FuriHalSerialIdUsart ? "13,14" : "15,16");
|
||||
|
||||
variable_item_list_set_enter_callback(
|
||||
var_item_list, xtreme_app_scene_protocols_gpio_var_item_list_callback, app);
|
||||
|
||||
@@ -39,9 +39,9 @@ XtremeSettings xtreme_settings = {
|
||||
.charge_cap = 100, // 100%
|
||||
.spi_cc1101_handle = SpiDefault, // &furi_hal_spi_bus_handle_external
|
||||
.spi_nrf24_handle = SpiDefault, // &furi_hal_spi_bus_handle_external
|
||||
.uart_esp_channel = UARTDefault, // pin 13,14
|
||||
.uart_nmea_channel = UARTDefault, // pin 13,14
|
||||
.uart_general_channel = UARTDefault, // pin 13,14
|
||||
.uart_esp_channel = FuriHalSerialIdUsart, // pin 13,14
|
||||
.uart_nmea_channel = FuriHalSerialIdUsart, // pin 13,14
|
||||
.uart_general_channel = FuriHalSerialIdUsart, // pin 13,14
|
||||
};
|
||||
|
||||
void XTREME_SETTINGS_LOAD() {
|
||||
@@ -187,15 +187,15 @@ void XTREME_SETTINGS_LOAD() {
|
||||
}
|
||||
flipper_format_rewind(file);
|
||||
if(flipper_format_read_uint32(file, "uart_esp_channel", &u, 1)) {
|
||||
x->uart_esp_channel = CLAMP(u, UARTCount - 1U, 0U);
|
||||
x->uart_esp_channel = CLAMP(u, FuriHalSerialIdMax - 1U, 0U);
|
||||
}
|
||||
flipper_format_rewind(file);
|
||||
if(flipper_format_read_uint32(file, "uart_nmea_channel", &u, 1)) {
|
||||
x->uart_nmea_channel = CLAMP(u, UARTCount - 1U, 0U);
|
||||
x->uart_nmea_channel = CLAMP(u, FuriHalSerialIdMax - 1U, 0U);
|
||||
}
|
||||
flipper_format_rewind(file);
|
||||
if(flipper_format_read_uint32(file, "uart_general_channel", &u, 1)) {
|
||||
x->uart_general_channel = CLAMP(u, UARTCount - 1U, 0U);
|
||||
x->uart_general_channel = CLAMP(u, FuriHalSerialIdMax - 1U, 0U);
|
||||
}
|
||||
}
|
||||
flipper_format_free(file);
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
#include <furi_hal_serial_types.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -44,12 +45,6 @@ typedef enum {
|
||||
SpiCount,
|
||||
} SpiHandle;
|
||||
|
||||
typedef enum {
|
||||
UARTDefault, // pin 13,14
|
||||
UARTExtra, // pin 15,16
|
||||
UARTCount,
|
||||
} UARTChannel;
|
||||
|
||||
typedef struct {
|
||||
char asset_pack[XTREME_ASSETS_PACK_NAME_LEN];
|
||||
uint32_t anim_speed;
|
||||
@@ -84,9 +79,9 @@ typedef struct {
|
||||
uint32_t charge_cap;
|
||||
SpiHandle spi_cc1101_handle;
|
||||
SpiHandle spi_nrf24_handle;
|
||||
UARTChannel uart_esp_channel;
|
||||
UARTChannel uart_nmea_channel;
|
||||
UARTChannel uart_general_channel;
|
||||
FuriHalSerialId uart_esp_channel;
|
||||
FuriHalSerialId uart_nmea_channel;
|
||||
FuriHalSerialId uart_general_channel;
|
||||
} XtremeSettings;
|
||||
|
||||
typedef enum {
|
||||
|
||||
Reference in New Issue
Block a user