📄 control.c
字号:
switch(key)
{
case up_key:
set_data_temp++;
if(union_vlaue.revalue_buf[0]) //读取工作模式
{
if(set_data_temp>=9) set_data_temp=0; //550模式,有双电源方式
}
else
{
if(set_data_temp>=8) set_data_temp=0;//500模式,无双电源方式
}
break;
case down_key:
if(union_vlaue.revalue_buf[0])
{
if(set_data_temp==0) set_data_temp=10; //550模式,有双电源方式
}
else
{
if(set_data_temp==0) set_data_temp=9;//550模式,有双电源方式
}
set_data_temp--;
break;
case ok_key:
//组织发送数据
set_bit=0; //至察看状态标志,进入察看状态
show_bit=1; //重至第一次刷新标志
break;
case esc_key:
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
break;
}
}
}
}
*/
//启动时间设定
void start_time_setting(/*12*/)
{
unsigned int temp;
if(set_bit==0)
{
if(remote_sign.furbish==0)
{
remote_sign.furbish=1; //刷新标志
dis_message_count=1;
remote_type.value=1;
temp=union_vlaue.revalue_buf_int[0]*2;
lcd_partclr(0,40,40); //显示时限值
data_switch_display(temp,2,0,74,6);
if(show_bit) //判断是否是第一次显示
{//第一次显示
clr_fullscreen();//清屏
if(union_state.state_buf[11]==two_speed_start)
{
lcdwrite_chinese(2,4,13,&di[0]); //显示低速起动时限
lcdwrite_chinese(2,17,13,&su[0]);
lcdwrite_chinese(2,30,13,&qidong[0]);
lcdwrite_chinese(2,43,13,&dong[0]);
lcdwrite_chinese(2,56,13,&shijian_shi[0]);
lcdwrite_chinese(2,69,13,&shixian_xian[0]);
}
else
{
lcdwrite_chinese(2,4,13,&qidong[0]); //显示起动时限
lcdwrite_chinese(2,17,13,&dong[0]);
lcdwrite_chinese(2,30,13,&shijian_shi[0]);
lcdwrite_chinese(2,43,13,&shixian_xian[0]);
}
lcdwrite_arrow(0,115,set_bit); //显示箭头
lcdwrite(0,81,6,&ascS[0]); //显示S
show_bit=0;
}
}
if(key) //处理按键
{
switch(key)
{
case up_key: //至上一界面号
if(upcount==0)
{
dis_number=15; //端子属性界面
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
remote_sign.furbish=1;
remote_type.value=1;
dis_message_count=1;
}
break;
case down_key: //至下一界面号
if(downcount==0)
{
temp=union_state.state_buf[11];
switch(temp)
{
case two_speed_start:
dis_number=13; //高速起动时间设定界面
break;
case double_start:
dis_number=30; //操作连续设定界面
break;
case direct_start:
dis_number=28; //欠压重起设定界面
break;
case res_start:
case ydelta_start:
case auto_transfor:
dis_number=23; //转换方式设定
break;
}
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
remote_sign.furbish=1;
remote_type.value=1;
dis_message_count=1;
}
break;
case ok_key:
set_bit=1; //至设定状态标志,进入设定状态
show_bit=1; //重至第一次刷新标志
set_data.int_data=union_vlaue.revalue_buf_int[0]*2;//初始化设定暂存器
break;
case esc_key:
dis_number=33; //至返回界面号
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
remote_sign.furbish=1;
remote_type.value=1;
dis_message_count=0;
break;
}
}
}
else //设定界面显示
{
lcdwrite_arrow(0,115,set_bit); //显示箭头
lcd_partclr(0,40,40); //显示时限设定值
data_switch_display(set_data.int_data,2,0,74,6);
if(key) //处理按键
{
switch(key)
{
case up_key:
if(upcount<10)
{
set_data.int_data+=1;
if(set_data.int_data>6000) set_data.int_data=100; //上限控制
}
else if(upcount<40)
{
set_data.int_data+=10;
if(set_data.int_data>6000) set_data.int_data=100; //上限控制
}
else
{
set_data.int_data+=100;
if(set_data.int_data>6000) set_data.int_data=100; //上限控制
}
break;
case down_key:
if(downcount<10)
{
set_data.int_data-=1;
if(set_data.int_data<100) set_data.int_data=6000; //下限控制
}
else if(downcount<40)
{
set_data.int_data-=1;
if(set_data.int_data<100) set_data.int_data=6000; //下限控制
}
else
{
set_data.int_data-=1;
if(set_data.int_data<100) set_data.int_data=6000; //下限控制
}
break;
case ok_key:
set_addh=0x00; //组织发送数据
set_addl=0x5a;
set_data.int_data/=2;
set_valueh=set_data.char_data[0];
set_valuel=set_data.char_data[1];
remote_type.set=1;
set_bit=0; //至察看状态标志,进入察看状态
show_bit=1; //重至第一次刷新标志
break;
case esc_key:
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
break;
}
}
}
}
void hstart_time_setting(/*13*/)
{
unsigned int temp;
if(set_bit==0)
{
if(remote_sign.furbish==0)
{
remote_sign.furbish=1;
remote_type.value=1;
dis_message_count=1;
temp=union_vlaue.revalue_buf_int[0]*2;
lcd_partclr(0,40,40); //显示时限值
data_switch_display(temp,2,0,74,6);
if(show_bit) //判断是否是第一次显示
{//第一次显示
clr_fullscreen();//清屏
lcdwrite_chinese(2,4,13,&gao[0]); //显示高速起动时限
lcdwrite_chinese(2,17,13,&su[0]);
lcdwrite_chinese(2,30,13,&qidong[0]);
lcdwrite_chinese(2,43,13,&dong[0]);
lcdwrite_chinese(2,56,13,&shijian_shi[0]);
lcdwrite_chinese(2,69,13,&shixian_xian[0]);
lcdwrite_arrow(0,115,set_bit); //显示箭头
lcdwrite(1,81,6,&ascS[0]); //显示S
show_bit=0;
}
}
if(key) //处理按键
{
switch(key)
{
case up_key: //至上一界面号
if(upcount==0)
{
dis_number=12; //低速起动时间设定
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
remote_sign.furbish=1;
remote_type.value=1;
dis_message_count=1;
}
break;
case down_key: //至下一界面号
if(downcount==0)
{
dis_number=22; //高速直接起动设定
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
remote_sign.furbish=1;
remote_type.value=1;
dis_message_count=1;
}
break;
case ok_key:
set_bit=1; //至设定状态标志,进入设定状态
show_bit=1; //重至第一次刷新标志
set_data.int_data=union_vlaue.revalue_buf_int[0]*2;//初始化设定暂存器
break;
case esc_key:
dis_number=33; //至返回界面号
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
remote_sign.furbish=1;
remote_type.value=1;
dis_message_count=0;
break;
}
}
}
else //设定界面显示
{
lcdwrite_arrow(0,115,set_bit); //显示箭头
lcd_partclr(0,40,40); //显示时限设定值
data_switch_display(set_data.int_data,2,0,74,6);
if(key) //处理按键
{
switch(key)
{
case up_key:
if(upcount<10)
{
set_data.int_data+=1;
if(set_data.int_data>6000) set_data.int_data=100; //上限控制
}
else if(upcount<40)
{
set_data.int_data+=10;
if(set_data.int_data>6000) set_data.int_data=100; //上限控制
}
else
{
set_data.int_data+=100;
if(set_data.int_data>6000) set_data.int_data=100; //上限控制
}
break;
case down_key:
if(downcount<10)
{
set_data.int_data-=1;
if(set_data.int_data<100) set_data.int_data=6000; //下限控制
}
else if(downcount<40)
{
set_data.int_data-=1;
if(set_data.int_data<100) set_data.int_data=6000; //下限控制
}
else
{
set_data.int_data-=1;
if(set_data.int_data<100) set_data.int_data=6000; //下限控制
}
break;
case ok_key:
set_addh=0x00; //组织发送数据
set_addl=0x5b;
set_data.int_data/=2;
set_valueh=set_data.char_data[0];
set_valuel=set_data.char_data[1];
remote_type.set=1;
set_bit=0; //至察看状态标志,进入察看状态
show_bit=1; //重至第一次刷新标志
break;
case esc_key:
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
break;
}
}
}
}
//操作权限设定
/*此设置界面为上级菜单项入口*/
void ctrlright_setting(/*14*/)
{
if(set_bit==0)
{
if(remote_sign.furbish==0)
{
remote_sign.furbish=1;
remote_type.value=1;
dis_message_count=1;
switch(union_vlaue.revalue_buf[1])
{
case 0x00:
lcdwrite_chinese(0,48,13,&beng[0]); //显示本地
lcdwrite_chinese(0,62,13,&dadi_di[0]);
break;
case 0x01:
lcdwrite_chinese(0,48,13,&yuanjin_yuan[0]); //显示远程
lcdwrite_chinese(0,62,13,&cheng[0]);
break;
case 0x02:
lcdwrite_chinese(0,48,13,&jin[0]); //显示禁止
lcdwrite_chinese(0,62,13,&jinzhi_zhi[0]);
break;
default :break;
}
if(show_bit) //判断是否是第一次显示
{//第一次显示
clr_fullscreen();//清屏
lcdwrite_chinese(2,4,13,&kong[0]); //显示控制权限
lcdwrite_chinese(2,17,13,&kongzhi_zhi[0]);
lcdwrite_chinese(2,30,13,&quan[0]);
lcdwrite_chinese(2,43,13,&shixian_xian[0]);
lcdwrite_arrow(0,115,set_bit); //显示箭头
show_bit=0;
}
}
if(key) //处理按键
{
switch(key)
{
case up_key:
if(upcount==0)
{
//至上一界面号
/*此界面为起动参数设置最高级菜单*/
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
}
break;
case down_key:
if(downcount==0)
{
//至下一界面号,界面号15为端子属性界面
dis_number=15;
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
remote_sign.furbish=1;
remote_type.value=1;
dis_message_count=1;
}
break;
case ok_key:
set_bit=1; //至设定状态标志,进入设定状态
show_bit=1; //重至第一次刷新标志
set_data.char_data[1]=union_vlaue.revalue_buf[1];//初始化设定暂存器
break;
case esc_key:
dis_number=33;//至返回界面号
set_bit=0; //至察看标志
show_bit=1; //重至第一次刷新标志
remote_sign.furbish=1;
remote_type.value=1;
dis_message_count=0;
break;
}
}
}
else //设定界面显示
{
lcdwrite_arrow(0,115,set_bit); //显示箭头
switch(set_data.char_data[1])
{
case 0x00:
lcdwrite_chinese(0,48,13,&beng[0]); //显示本地
lcdwrite_chinese(0,62,13,&dadi_di[0]);
break;
case 0x01:
lcdwrite_chinese(0,48,13,&yuanjin_yuan[0]); //显示远程
lcdwrite_chinese(0,62,13,&cheng[0]);
break;
case 0x02:
lcdwrite_chinese(0,48,13,&jin[0]); //显示禁止
lcdwrite_chinese(0,62,13,&jinzhi_zhi[0]);
break;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -