From c825014599d07a08a7d4e9beed2cc05ca4700a75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=95=E6=98=8E=E6=B1=9F?= <246462502@qq.com> Date: Wed, 14 Aug 2024 14:30:32 +0800 Subject: [PATCH] =?UTF-8?q?pref:=E5=BC=AF=E9=81=93=E9=80=9F=E5=BA=A6?= =?UTF-8?q?=E6=8C=89=E6=9B=B2=E7=8E=87=E5=88=86=E6=AE=B5=E6=8E=A7=E5=88=B6?= =?UTF-8?q?=20=E5=A2=9E=E5=8A=A0=E6=96=91=E9=A9=AC=E7=BA=BF=E7=A7=AF?= =?UTF-8?q?=E5=88=86=E6=8C=89=E9=94=AE=E6=9B=B4=E6=94=B9=E8=B7=9D=E7=A6=BB?= =?UTF-8?q?=20=E4=BC=98=E5=8C=96=E6=8C=89=E9=94=AE=E8=B0=83=E5=8F=82?= =?UTF-8?q?=E5=8A=A0=E5=87=8F=E6=96=B9=E5=90=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/jj_motion.c | 47 ++++++++++++++++++++--------------- app/jj_motion.h | 1 + app/jj_param.c | 1 + app/jj_param.h | 1 + app/page/page_gocar.c | 10 ++++++++ app/page/page_param_pid0.c | 44 ++++++++++++++++----------------- app/page/page_param_pid1.c | 50 +++++++++++++++++++------------------- app/page/page_param_pid2.c | 50 +++++++++++++++++++------------------- app/page/page_param_pid3.c | 50 +++++++++++++++++++------------------- app/page/page_stopcar.c | 6 ++--- 10 files changed, 140 insertions(+), 120 deletions(-) diff --git a/app/jj_motion.c b/app/jj_motion.c index 894f03c..249e3d0 100644 --- a/app/jj_motion.c +++ b/app/jj_motion.c @@ -93,7 +93,7 @@ float set_speed3 = 666.f; float set_speed4 = 720.f; int cnt1 = 0; int cnt2 = 0; -int cnt3 = 0; +int cnt3 = 0; int cnt4 = 0; // int cnt5 = 0; int cnt6 = 0; // @@ -115,7 +115,8 @@ int32_t stop_cnt = 0; int32_t last_lb = 0; int32_t last_rb = 0; float start_dis = 0; -uint8_t go_cnt = 0;//0 停车 1 测试侧向风扇 2 启动 3成功运行 +float set_dis=1.f; +uint8_t go_cnt = 0; // 0 停车 1 测试侧向风扇 2 启动 3成功运行 float bug_sw = 0; float out_sw = 0; float sho_sw = 0; @@ -157,12 +158,12 @@ void sport_motion() ////////////////////////////////////////停车任务/////////////////////////////////////////////// // 抖动停车,计次50 - if (imu660ra_acc_z <= 900) { + if (imu660ra_acc_z <= 800) { cnt7++; } else { cnt7 = 0; } - if (cnt7 >= 10 && (uint8_t)sho_sw == 1) { + if (cnt7 >= 50 && (uint8_t)sho_sw == 1) { bt_fly_flag = bt_run_flag = 0; bt_printf("up"); go_cnt = 0; @@ -183,7 +184,7 @@ void sport_motion() go_cnt = 0; } // 出界停车,已经积分路过斑马线,保证斑马线不会触发 - if (2 == in_stop && (start_dis >= 1 || bt_run_flag == 0) && (uint8_t)out_sw == 1) { + if (2 == in_stop && (start_dis >= set_dis|| bt_run_flag == 0) && (uint8_t)out_sw == 1) { bt_printf("out"); go_cnt = 0; bt_fly_flag = bt_run_flag = 0; @@ -195,7 +196,7 @@ void sport_motion() cnt2++; cnt5++; // 斑马线积分,系数随便给的 - start_dis += in_speed * 0.000001; + start_dis += in_speed * 0.0000018f; if (if_start == 0) { cnt8++; @@ -239,7 +240,11 @@ void sport_motion() } if (in_state == 1) { - set_speed = set_speed0 - fabs(rate_K * powf(myclip_f(in_pos, -50.f, 50.f), 2)); + if (fabs(in_pos) <= 12.0f) { + set_speed = set_speed0 - fabs(rate_K / 3 * myclip_f(in_pos, -50.f, 50.f)); + } else { + set_speed = set_speed0 - fabs(rate_K * myclip_f(in_pos, -50.f, 50.f)); + } } // 记录上一次状态 last_state = in_state; @@ -260,8 +265,9 @@ void sport_motion() cnt5 = 0; } // 并级pid,限幅 - pwm_duty_ls = (int32_t)myclip_f(180 - out_pos, 100.0f, 500.f); - pwm_duty_rs = (int32_t)myclip_f(180 + out_pos, 100.0f, 500.f); + pwm_duty_ls = (int32_t)myclip_f(240 - out_pos, 100.0f, 500.f); + pwm_duty_rs = (int32_t)myclip_f(240 + out_pos, 100.0f, 500.f); + // 并级pid的缺点补偿 if (out_speed >= 1000) { pwm_duty_lb = (int32_t)myclip_f(out_speed + out_gyro, 1000.0f, 3000.f); pwm_duty_rb = (int32_t)myclip_f(out_speed - out_gyro, 1000.0f, 3000.f); @@ -289,17 +295,18 @@ void sport_motion() by_pwm_update_duty(bt_fly + 500, bt_fly + 500); if (bt_run_flag == 0) { // 测试状态 - if (go_cnt == 1) { - by_pwm_power_duty(550, 550, 3000, 3000); - } - else if (2 == go_cnt) { - by_pwm_power_duty(550, 550, 4000, 4000); + if (1 == go_cnt) { + by_pwm_power_duty(600, 600, 3000, 3000); + } else if (2 == go_cnt) { cnt3++; - if(cnt3>=2000) - { - bt_run_flag=1; - go_cnt=3; - cnt3=0; + if (cnt3 < 2000) { + by_pwm_power_duty(600, 600, 3000, 3000); + } else if (cnt3 >= 2000 && cnt3 < 3000) { + by_pwm_power_duty(600, 600, 4000, 4000); + } else if (cnt3 >= 3000) { + bt_run_flag = 1; + go_cnt = 3; + cnt3 = 0; } } } @@ -323,7 +330,7 @@ void sport_pid_init() PID(&pos_pid, &in_angle, &out_pos, &set_pos, po_Kp1, po_Ki1, po_Kd1, _PID_P_ON_E, _PID_CD_REVERSE); PID_SetMode(&pos_pid, _PID_MODE_AUTOMATIC); PID_SetSampleTime(&pos_pid, 20); - PID_SetOutputLimits(&pos_pid, -320.0f, 320.0f); + PID_SetOutputLimits(&pos_pid, -260.0f, 260.0f); /* 角速度控制 */ PID(&far_gyro_pid, &in_gyro, &out_gyro, &out_angle, gy_Kp1, gy_Ki1, gy_Kd1, _PID_P_ON_E, _PID_CD_REVERSE); // m是增量 diff --git a/app/jj_motion.h b/app/jj_motion.h index d796b93..e8f4d2d 100644 --- a/app/jj_motion.h +++ b/app/jj_motion.h @@ -61,6 +61,7 @@ extern float last_angle; extern float yuc_Kp; extern float rate_K; extern float start_dis; +extern float set_dis; extern int32_t pwm_duty_ls; extern int32_t pwm_duty_rs; extern int32_t pwm_duty_lb; diff --git a/app/jj_param.c b/app/jj_param.c index c6df060..ac6debe 100644 --- a/app/jj_param.c +++ b/app/jj_param.c @@ -80,6 +80,7 @@ void jj_param_eeprom_init(void) PARAM_REG(bug_stop, &bug_sw, EFLOAT, 1, "bug:"); // 注冊 PARAM_REG(out_stop, &out_sw, EFLOAT, 1, "out:"); // 注冊 PARAM_REG(shock_stop, &sho_sw, EFLOAT, 1, "shock:"); + PARAM_REG(dis, &set_dis, EFLOAT, 1, "dis:"); jj_param_read(); // 注冊 } /** diff --git a/app/jj_param.h b/app/jj_param.h index c3ea9be..fafc1c8 100644 --- a/app/jj_param.h +++ b/app/jj_param.h @@ -82,6 +82,7 @@ typedef enum { bug_stop = Page5_head, shock_stop, out_stop, + dis, DATA_IN_FLASH_NUM, diff --git a/app/page/page_gocar.c b/app/page/page_gocar.c index b39dabd..9b39e4e 100644 --- a/app/page/page_gocar.c +++ b/app/page/page_gocar.c @@ -37,8 +37,11 @@ static void Setup() ips200_show_int(80, 180, bt_run_flag, 1); ips200_show_string(10, 160, "fl_flag:"); ips200_show_int(80, 160, bt_fly_flag, 1); + ips200_show_string(10, 18, "fan_test"); ips200_show_string(10, 2 * 18, "run"); + ips200_show_string(10, 3 * 18, "fly_close"); + ips200_show_string(10, 4 * 18, "run_close"); } /** @@ -95,6 +98,13 @@ static void Event(page_event event) if (go_cnt == 1 && Curser == 2) { go_cnt = 2; } + if (Curser == 3 && bt_fly_flag != 0) { + bt_fly_flag = 0; + } + if (Curser == 4 && bt_run_flag != 0) { + bt_run_flag = 0; + go_cnt=0; + } } else if (page_event_press_long == event) { Page_Shift(page_menu); diff --git a/app/page/page_param_pid0.c b/app/page/page_param_pid0.c index c452b51..d211172 100644 --- a/app/page/page_param_pid0.c +++ b/app/page/page_param_pid0.c @@ -25,7 +25,7 @@ static void jj_param_show(); static void Setup() { ips200_clear(); - ips200_show_string(0, 2,"turn"); + ips200_show_string(0, 2, "turn"); Print_Curser(Curser, Curser_Last, RGB565_PURPLE); for (int16 i = 0; i < LINE_END; i++) { ips200_show_string(0, i * 18 + 20, Param_Data[i].text); @@ -88,25 +88,25 @@ static void Event(page_event event) Print_Curser(Curser, Curser_Last, RGB565_PURPLE); } else if (1 == event_flag) { if (page_event_forward == event) { - if (Param_Data[Curser-1].type == EFLOAT) { - *((float *)(Param_Data[Curser-1].p_data)) += powf(10.0f, (float)index_power); - } else if (Param_Data[Curser-1].type == EINT32) { - *((int32 *)(Param_Data[Curser-1].p_data)) += 1; - } else if (Param_Data[Curser-1].type == EUINT32) { - *((uint32 *)(Param_Data[Curser-1].p_data)) += 1; + if (Param_Data[Curser - 1].type == EFLOAT) { + *((float *)(Param_Data[Curser - 1].p_data)) += powf(10.0f, (float)index_power); + } else if (Param_Data[Curser - 1].type == EINT32) { + *((int32 *)(Param_Data[Curser - 1].p_data)) += 1; + } else if (Param_Data[Curser - 1].type == EUINT32) { + *((uint32 *)(Param_Data[Curser - 1].p_data)) += 1; } } else if (page_event_backward == event) { - if (Param_Data[Curser-1].type == EFLOAT) { - *((float *)(Param_Data[Curser-1].p_data)) -= powf(10.0f, (float)index_power); - } else if (Param_Data[Curser-1].type == EINT32) { - *((int32 *)(Param_Data[Curser-1].p_data)) -= 1; - } else if (Param_Data[Curser-1].type == EUINT32) { - *((uint32 *)(Param_Data[Curser-1].p_data)) -= 1; + if (Param_Data[Curser - 1].type == EFLOAT) { + *((float *)(Param_Data[Curser - 1].p_data)) -= powf(10.0f, (float)index_power); + } else if (Param_Data[Curser - 1].type == EINT32) { + *((int32 *)(Param_Data[Curser - 1].p_data)) -= 1; + } else if (Param_Data[Curser - 1].type == EUINT32) { + *((uint32 *)(Param_Data[Curser - 1].p_data)) -= 1; } } else if (page_event_press_short == event) { - index_power++; - if (index_power > 2) { - index_power = -2; + index_power--; + if (index_power < -2) { + index_power = 2; } ips200_show_int(100, 2, index_power, 5); } else if (page_event_press_long == event) { @@ -118,12 +118,12 @@ static void Event(page_event event) } static void jj_param_show() { - if (EINT32 == Param_Data[Curser-1].type) - ips200_show_int(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser-1].p_data)), 5); - else if (EUINT32 == Param_Data[Curser-1].type) - ips200_show_uint(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser-1].p_data)), 5); - else if (EFLOAT == Param_Data[Curser-1].type) - ips200_show_float(50, Curser * 18 + 2, *((float *)(Param_Data[Curser-1].p_data)), 4, 5); + if (EINT32 == Param_Data[Curser - 1].type) + ips200_show_int(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser - 1].p_data)), 5); + else if (EUINT32 == Param_Data[Curser - 1].type) + ips200_show_uint(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser - 1].p_data)), 5); + else if (EFLOAT == Param_Data[Curser - 1].type) + ips200_show_float(50, Curser * 18 + 2, *((float *)(Param_Data[Curser - 1].p_data)), 4, 5); } /** * @brief 页面注册函数 diff --git a/app/page/page_param_pid1.c b/app/page/page_param_pid1.c index 0e8c8f7..2eba136 100644 --- a/app/page/page_param_pid1.c +++ b/app/page/page_param_pid1.c @@ -4,8 +4,8 @@ #include "page.h" #include -#define LINE_HEAD 1 -#define LINE_END Page3_head - Page2_head +#define LINE_HEAD 1 +#define LINE_END Page3_head - Page2_head #define Strat_param Page2_head static char Text[] = "stra_pid"; static int event_flag = 0; @@ -26,10 +26,10 @@ static void jj_param_show(); static void Setup() { ips200_clear(); - ips200_show_string(0, 2,"straight"); + ips200_show_string(0, 2, "straight"); Print_Curser(Curser, Curser_Last, RGB565_PURPLE); for (int16 i = 0; i < LINE_END; i++) { - ips200_show_string(0, i * 18 + 20, Param_Data[i +Strat_param ].text); + ips200_show_string(0, i * 18 + 20, Param_Data[i + Strat_param].text); if (Param_Data[i + Strat_param].type == EINT32) ips200_show_int(50, i * 18 + 20, *((int32 *)(Param_Data[i + Strat_param].p_data)), 5); else if (Param_Data[i + Strat_param].type == EFLOAT) @@ -89,25 +89,25 @@ static void Event(page_event event) Print_Curser(Curser, Curser_Last, RGB565_PURPLE); } else if (1 == event_flag) { if (page_event_forward == event) { - if (Param_Data[Curser + Strat_param-1].type == EFLOAT) { - *((float *)(Param_Data[Curser + Strat_param-1].p_data)) += powf(10.0f, (float)index_power); - } else if (Param_Data[Curser + Strat_param-1].type == EINT32) { - *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)) += 1; - } else if (Param_Data[Curser + Strat_param-1].type == EUINT32) { - *((uint32 *)(Param_Data[Curser + Strat_param-1].p_data)) += 1; + if (Param_Data[Curser + Strat_param - 1].type == EFLOAT) { + *((float *)(Param_Data[Curser + Strat_param - 1].p_data)) += powf(10.0f, (float)index_power); + } else if (Param_Data[Curser + Strat_param - 1].type == EINT32) { + *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)) += 1; + } else if (Param_Data[Curser + Strat_param - 1].type == EUINT32) { + *((uint32 *)(Param_Data[Curser + Strat_param - 1].p_data)) += 1; } } else if (page_event_backward == event) { - if (Param_Data[Curser + Strat_param-1].type == EFLOAT) { - *((float *)(Param_Data[Curser + Strat_param-1].p_data)) -= powf(10.0f, (float)index_power); - } else if (Param_Data[Curser + Strat_param-1].type == EINT32) { - *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)) -= 1; - } else if (Param_Data[Curser + Strat_param-1].type == EUINT32) { - *((uint32 *)(Param_Data[Curser + Strat_param-1].p_data)) -= 1; + if (Param_Data[Curser + Strat_param - 1].type == EFLOAT) { + *((float *)(Param_Data[Curser + Strat_param - 1].p_data)) -= powf(10.0f, (float)index_power); + } else if (Param_Data[Curser + Strat_param - 1].type == EINT32) { + *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)) -= 1; + } else if (Param_Data[Curser + Strat_param - 1].type == EUINT32) { + *((uint32 *)(Param_Data[Curser + Strat_param - 1].p_data)) -= 1; } } else if (page_event_press_short == event) { - index_power++; - if (index_power > 2) { - index_power = -2; + index_power--; + if (index_power < -2) { + index_power = 2; } ips200_show_int(100, 2, index_power, 5); } else if (page_event_press_long == event) { @@ -119,12 +119,12 @@ static void Event(page_event event) } static void jj_param_show() { - if (EINT32 == Param_Data[Curser + Strat_param-1].type) - ips200_show_int(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)), 5); - else if (EUINT32 == Param_Data[Curser + Strat_param-1].type) - ips200_show_uint(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)), 5); - else if (EFLOAT == Param_Data[Curser + Strat_param-1].type) - ips200_show_float(50, Curser * 18 + 2, *((float *)(Param_Data[Curser + Strat_param-1].p_data)), 4, 5); + if (EINT32 == Param_Data[Curser + Strat_param - 1].type) + ips200_show_int(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)), 5); + else if (EUINT32 == Param_Data[Curser + Strat_param - 1].type) + ips200_show_uint(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)), 5); + else if (EFLOAT == Param_Data[Curser + Strat_param - 1].type) + ips200_show_float(50, Curser * 18 + 2, *((float *)(Param_Data[Curser + Strat_param - 1].p_data)), 4, 5); } /** * @brief 页面注册函数 diff --git a/app/page/page_param_pid2.c b/app/page/page_param_pid2.c index bdc658b..24c12a3 100644 --- a/app/page/page_param_pid2.c +++ b/app/page/page_param_pid2.c @@ -4,8 +4,8 @@ #include "page.h" #include -#define LINE_HEAD 1 -#define LINE_END Page4_head - Page3_head +#define LINE_HEAD 1 +#define LINE_END Page4_head - Page3_head #define Strat_param Page3_head static char Text[] = "cir_pid"; static int event_flag = 0; @@ -26,10 +26,10 @@ static void jj_param_show(); static void Setup() { ips200_clear(); - ips200_show_string(0, 2,"circle"); + ips200_show_string(0, 2, "circle"); Print_Curser(Curser, Curser_Last, RGB565_PURPLE); for (int16 i = 0; i < LINE_END; i++) { - ips200_show_string(0, i * 18 + 20, Param_Data[i +Strat_param ].text); + ips200_show_string(0, i * 18 + 20, Param_Data[i + Strat_param].text); if (Param_Data[i + Strat_param].type == EINT32) ips200_show_int(50, i * 18 + 20, *((int32 *)(Param_Data[i + Strat_param].p_data)), 5); else if (Param_Data[i + Strat_param].type == EFLOAT) @@ -89,25 +89,25 @@ static void Event(page_event event) Print_Curser(Curser, Curser_Last, RGB565_PURPLE); } else if (1 == event_flag) { if (page_event_forward == event) { - if (Param_Data[Curser + Strat_param-1].type == EFLOAT) { - *((float *)(Param_Data[Curser + Strat_param-1].p_data)) += powf(10.0f, (float)index_power); - } else if (Param_Data[Curser + Strat_param-1].type == EINT32) { - *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)) += 1; - } else if (Param_Data[Curser + Strat_param-1].type == EUINT32) { - *((uint32 *)(Param_Data[Curser + Strat_param-1].p_data)) += 1; + if (Param_Data[Curser + Strat_param - 1].type == EFLOAT) { + *((float *)(Param_Data[Curser + Strat_param - 1].p_data)) += powf(10.0f, (float)index_power); + } else if (Param_Data[Curser + Strat_param - 1].type == EINT32) { + *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)) += 1; + } else if (Param_Data[Curser + Strat_param - 1].type == EUINT32) { + *((uint32 *)(Param_Data[Curser + Strat_param - 1].p_data)) += 1; } } else if (page_event_backward == event) { - if (Param_Data[Curser + Strat_param-1].type == EFLOAT) { - *((float *)(Param_Data[Curser + Strat_param-1].p_data)) -= powf(10.0f, (float)index_power); - } else if (Param_Data[Curser + Strat_param-1].type == EINT32) { - *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)) -= 1; - } else if (Param_Data[Curser + Strat_param-1].type == EUINT32) { - *((uint32 *)(Param_Data[Curser + Strat_param-1].p_data)) -= 1; + if (Param_Data[Curser + Strat_param - 1].type == EFLOAT) { + *((float *)(Param_Data[Curser + Strat_param - 1].p_data)) -= powf(10.0f, (float)index_power); + } else if (Param_Data[Curser + Strat_param - 1].type == EINT32) { + *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)) -= 1; + } else if (Param_Data[Curser + Strat_param - 1].type == EUINT32) { + *((uint32 *)(Param_Data[Curser + Strat_param - 1].p_data)) -= 1; } } else if (page_event_press_short == event) { - index_power++; - if (index_power > 2) { - index_power = -2; + index_power--; + if (index_power < -2) { + index_power = 2; } ips200_show_int(100, 2, index_power, 5); } else if (page_event_press_long == event) { @@ -119,12 +119,12 @@ static void Event(page_event event) } static void jj_param_show() { - if (EINT32 == Param_Data[Curser + Strat_param-1].type) - ips200_show_int(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)), 5); - else if (EUINT32 == Param_Data[Curser + Strat_param-1].type) - ips200_show_uint(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)), 5); - else if (EFLOAT == Param_Data[Curser + Strat_param-1].type) - ips200_show_float(50, Curser * 18 + 2, *((float *)(Param_Data[Curser + Strat_param-1].p_data)), 4, 5); + if (EINT32 == Param_Data[Curser + Strat_param - 1].type) + ips200_show_int(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)), 5); + else if (EUINT32 == Param_Data[Curser + Strat_param - 1].type) + ips200_show_uint(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)), 5); + else if (EFLOAT == Param_Data[Curser + Strat_param - 1].type) + ips200_show_float(50, Curser * 18 + 2, *((float *)(Param_Data[Curser + Strat_param - 1].p_data)), 4, 5); } /** * @brief 页面注册函数 diff --git a/app/page/page_param_pid3.c b/app/page/page_param_pid3.c index 4b4d20c..470ecea 100644 --- a/app/page/page_param_pid3.c +++ b/app/page/page_param_pid3.c @@ -4,8 +4,8 @@ #include "page.h" #include -#define LINE_HEAD 1 -#define LINE_END Page5_head - Page4_head +#define LINE_HEAD 1 +#define LINE_END Page5_head - Page4_head #define Strat_param Page4_head static char Text[] = "barr_pid"; static int event_flag = 0; @@ -26,10 +26,10 @@ static void jj_param_show(); static void Setup() { ips200_clear(); - ips200_show_string(0, 2,"barrir"); + ips200_show_string(0, 2, "barrir"); Print_Curser(Curser, Curser_Last, RGB565_PURPLE); for (int16 i = 0; i < LINE_END; i++) { - ips200_show_string(0, i * 18 + 20, Param_Data[i +Strat_param ].text); + ips200_show_string(0, i * 18 + 20, Param_Data[i + Strat_param].text); if (Param_Data[i + Strat_param].type == EINT32) ips200_show_int(50, i * 18 + 20, *((int32 *)(Param_Data[i + Strat_param].p_data)), 5); else if (Param_Data[i + Strat_param].type == EFLOAT) @@ -89,25 +89,25 @@ static void Event(page_event event) Print_Curser(Curser, Curser_Last, RGB565_PURPLE); } else if (1 == event_flag) { if (page_event_forward == event) { - if (Param_Data[Curser + Strat_param-1].type == EFLOAT) { - *((float *)(Param_Data[Curser + Strat_param-1].p_data)) += powf(10.0f, (float)index_power); - } else if (Param_Data[Curser + Strat_param-1].type == EINT32) { - *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)) += 1; - } else if (Param_Data[Curser + Strat_param-1].type == EUINT32) { - *((uint32 *)(Param_Data[Curser + Strat_param-1].p_data)) += 1; + if (Param_Data[Curser + Strat_param - 1].type == EFLOAT) { + *((float *)(Param_Data[Curser + Strat_param - 1].p_data)) += powf(10.0f, (float)index_power); + } else if (Param_Data[Curser + Strat_param - 1].type == EINT32) { + *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)) += 1; + } else if (Param_Data[Curser + Strat_param - 1].type == EUINT32) { + *((uint32 *)(Param_Data[Curser + Strat_param - 1].p_data)) += 1; } } else if (page_event_backward == event) { - if (Param_Data[Curser + Strat_param-1].type == EFLOAT) { - *((float *)(Param_Data[Curser + Strat_param-1].p_data)) -= powf(10.0f, (float)index_power); - } else if (Param_Data[Curser + Strat_param-1].type == EINT32) { - *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)) -= 1; - } else if (Param_Data[Curser + Strat_param-1].type == EUINT32) { - *((uint32 *)(Param_Data[Curser + Strat_param-1].p_data)) -= 1; + if (Param_Data[Curser + Strat_param - 1].type == EFLOAT) { + *((float *)(Param_Data[Curser + Strat_param - 1].p_data)) -= powf(10.0f, (float)index_power); + } else if (Param_Data[Curser + Strat_param - 1].type == EINT32) { + *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)) -= 1; + } else if (Param_Data[Curser + Strat_param - 1].type == EUINT32) { + *((uint32 *)(Param_Data[Curser + Strat_param - 1].p_data)) -= 1; } } else if (page_event_press_short == event) { - index_power++; - if (index_power > 2) { - index_power = -2; + index_power--; + if (index_power < -2) { + index_power = 2; } ips200_show_int(100, 2, index_power, 5); } else if (page_event_press_long == event) { @@ -119,12 +119,12 @@ static void Event(page_event event) } static void jj_param_show() { - if (EINT32 == Param_Data[Curser + Strat_param-1].type) - ips200_show_int(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)), 5); - else if (EUINT32 == Param_Data[Curser + Strat_param-1].type) - ips200_show_uint(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param-1].p_data)), 5); - else if (EFLOAT == Param_Data[Curser + Strat_param-1].type) - ips200_show_float(50, Curser * 18 + 2, *((float *)(Param_Data[Curser + Strat_param-1].p_data)), 4, 5); + if (EINT32 == Param_Data[Curser + Strat_param - 1].type) + ips200_show_int(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)), 5); + else if (EUINT32 == Param_Data[Curser + Strat_param - 1].type) + ips200_show_uint(50, Curser * 18 + 2, *((int32 *)(Param_Data[Curser + Strat_param - 1].p_data)), 5); + else if (EFLOAT == Param_Data[Curser + Strat_param - 1].type) + ips200_show_float(50, Curser * 18 + 2, *((float *)(Param_Data[Curser + Strat_param - 1].p_data)), 4, 5); } /** * @brief 页面注册函数 diff --git a/app/page/page_stopcar.c b/app/page/page_stopcar.c index 371cca1..786cfb2 100644 --- a/app/page/page_stopcar.c +++ b/app/page/page_stopcar.c @@ -105,9 +105,9 @@ static void Event(page_event event) *((uint32 *)(Param_Data[Curser + Strat_param-1].p_data)) -= 1; } } else if (page_event_press_short == event) { - index_power++; - if (index_power > 2) { - index_power = -2; + index_power--; + if (index_power <-2) { + index_power = 2; } ips200_show_int(100, 2, index_power, 5); } else if (page_event_press_long == event) {