更新:

1、切换至菜单后,输出信号保持;
2、返回主界面后,输入输出曲线绘制计数清零,重新绘制;
This commit is contained in:
吴俊潮 2025-08-07 08:39:48 +08:00
parent 10737c6231
commit d0c8a9138b
2 changed files with 11784 additions and 11781 deletions

View File

@ -46,11 +46,11 @@ void main_data_init(void)
menu_data.o_numbers[i] = 0; //输出值/设定值 menu_data.o_numbers[i] = 0; //输出值/设定值
} }
menu_data.input_mode = CUR.tag; //输入功能初始为电流模式 menu_data.input_mode = CUR.tag; //输入功能初始为电流模式
menu_data.input_mode_type = CUR.typ; //电流单位为mA menu_data.input_mode_type = CUR.typ; //电流单位为mA
menu_data.output_mode = CUR.tag; //输出功能初始为电流模式 menu_data.output_mode = CUR.tag; //输出功能初始为电流模式
menu_data.output_mode_type = CUR.typ; //电压单位初始为mA menu_data.output_mode_type = CUR.typ; //电压单位初始为mA
sig_channel_select(menu_data.io_mode, menu_data.output_mode_type); //默认通道 sig_channel_select(menu_data.io_mode, menu_data.output_mode_type); //默认通道
//绘图数据初始化 //绘图数据初始化
plot_data_init(); plot_data_init();
@ -137,6 +137,8 @@ void scr_init_run(void)
menu_data.scr_now = SCREEN_MAIN; //开机动画结束后,默认进入主界面 menu_data.scr_now = SCREEN_MAIN; //开机动画结束后,默认进入主界面
set_coil_val(COIL_ADDR_SCREEN_SWITCH, 0); set_coil_val(COIL_ADDR_SCREEN_SWITCH, 0);
set_working_mode(menu_data.output_mode, menu_data.output_mode_type); //默认工作模式
init_step = 0; init_step = 0;
} }
break; break;
@ -858,13 +860,15 @@ void scr_main_recover(void)
// 运行时间 和 电池电量 在主界面的函数中已存在,无需额外恢复 // 运行时间 和 电池电量 在主界面的函数中已存在,无需额外恢复
//恢复默认工作模式 //恢复默认工作模式
menu_data.io_mode = IO_OUTPUT; // menu_data.io_mode = IO_OUTPUT;
menu_data.output_mode = SIG_CURRENT; // menu_data.output_mode = SIG_CURRENT;
menu_data.output_mode_type = CURRENT_MA; // menu_data.output_mode_type = CURRENT_MA;
set_working_mode(menu_data.output_mode, menu_data.output_mode_type); // set_working_mode(menu_data.output_mode, menu_data.output_mode_type);
//输入/输出曲线、图例、上下限颜色更新 //输入/输出曲线、图例、上下限颜色更新
scr_main_chart_update(); scr_main_chart_update();
pltdata.pri_wait_tick = 0;
pltdata.scd_wait_tick = 0;
//熄灭设置界面的选项卡缓存(隐藏式切换界面) //熄灭设置界面的选项卡缓存(隐藏式切换界面)
setting_items_check(ITEM_NONE, tabdata.item_cursor); setting_items_check(ITEM_NONE, tabdata.item_cursor);
@ -926,7 +930,7 @@ void plot_drawing(void)
{ {
//变化幅度小的情况下不更新显示值 //变化幅度小的情况下不更新显示值
//等待一段时间后不再更新 //等待一段时间后不再更新
if(pltdata.pri_wait_tick < tabdata.item1_page0_plot_num) if(pltdata.pri_wait_tick <= tabdata.item1_page0_plot_num)
{ {
pltdata.pri_wait_tick++; pltdata.pri_wait_tick++;
@ -963,7 +967,7 @@ void plot_drawing(void)
{ {
//变化幅度小的情况下不更新显示值 //变化幅度小的情况下不更新显示值
//等待一段时间后不再更新 //等待一段时间后不再更新
if(pltdata.scd_wait_tick < tabdata.item1_page0_plot_num) if(pltdata.scd_wait_tick <= tabdata.item1_page0_plot_num)
{ {
pltdata.scd_wait_tick++; pltdata.scd_wait_tick++;

File diff suppressed because it is too large Load Diff