fix: 分段pid的bug修复

This commit is contained in:
2024-03-28 19:55:43 +08:00
parent 2b214c4add
commit a9b488bc6e
6 changed files with 43 additions and 44 deletions

View File

@@ -7,8 +7,8 @@
#define LINE_HEAD 0
#define LINE_END Page2_head - 1
static char Text[] = "Param_pid0";
static int event_flag = 0;
static int index_power = 0;
static int event_flag = 0;
static int index_power = 0;
static int8_t Curser = LINE_HEAD; // 定义光标位置
static int8_t Curser_Last = LINE_HEAD; // 定义光标位置
static void jj_param_show();
@@ -26,15 +26,14 @@ static void Setup()
{
ips200_clear();
Print_Curser(Curser, Curser_Last, RGB565_PURPLE);
for (int16 i = LINE_HEAD; i < LINE_END; i++) {
for (int16 i = 0; i <= LINE_END; i++) {
ips200_show_string(0, i * 18 + 2, Param_Data[i].text);
if (Param_Data[i].type == EINT32)
ips200_show_int(50, i * 18 + 2, *((int32 *)(Param_Data[i].p_data)), 5);
else if (Param_Data[i].type == EFLOAT)
ips200_show_float(50, i * 18 + 2, *((float *)(Param_Data[i].p_data)), 4, 5);
}
ips200_show_int(100, 2, index_power, 5);
ips200_show_int(100, 2, index_power, 5);
}
/**
@@ -89,7 +88,7 @@ static void Event(page_event event)
} else if (1 == event_flag) {
if (page_event_forward == event) {
if (Param_Data[Curser].type == EFLOAT) {
*((float *)(Param_Data[Curser].p_data)) += powf(10.0f,(float)index_power);
*((float *)(Param_Data[Curser].p_data)) += powf(10.0f, (float)index_power);
} else if (Param_Data[Curser].type == EINT32) {
*((int32 *)(Param_Data[Curser].p_data)) += 1;
} else if (Param_Data[Curser].type == EUINT32) {
@@ -97,7 +96,7 @@ static void Event(page_event event)
}
} else if (page_event_backward == event) {
if (Param_Data[Curser].type == EFLOAT) {
*((float *)(Param_Data[Curser].p_data)) -=powf(10.0f,(float)index_power);
*((float *)(Param_Data[Curser].p_data)) -= powf(10.0f, (float)index_power);
} else if (Param_Data[Curser].type == EINT32) {
*((int32 *)(Param_Data[Curser].p_data)) -= 1;
} else if (Param_Data[Curser].type == EUINT32) {