📄 lcdinterface.c
字号:
#include "Headfiles.h"
void Interface_Main(void)
{
Code_Inputs("铣面机伺服控制系统 ",
"P1(MPa) ",
"P2(MPa) ",
"L(mm) ",
"I(mA) ");
Number_Display(9, 1, 3, 1, (P1_Cylinder[0] - Channel_Parameter[0][0]) / 10);
Number_Display(16, 1, 3, 1, (P1_Cylinder[1] - Channel_Parameter[1][0])/ 10);
Number_Display(9, 2, 3, 1, (P2_Cylinder[0] - Channel_Parameter[0][1]) / 10);
Number_Display(16, 2, 3, 1, (P2_Cylinder[1] - Channel_Parameter[1][1]) / 10);
Number_Display(9, 3, 3, 1, (L_Cylinder[0] - Channel_Parameter[0][4]) / 10);
Number_Display(16, 3, 3, 1, (L_Cylinder[1] - Channel_Parameter[1][4]) / 10);
Number_Display(8, 4, 4, 1, I_Sevovalve[0]);
Number_Display(15, 4, 4, 1, I_Sevovalve[1]);
switch (Arrow_Position)
{
case 0 : Code[3][14] = ' ';
Code[3][8] = 0x84;
break;
case 1 : Code[3][14] = 0x84;
Code[3][8] = ' ';
break;
default: break;
}
}
void Interface_Menu(void)
{
if (Arrow_Position <= 4)
{
Code_Inputs(" 1.控制参数设定 ",
" 2.一通道参数设定 ",
" 3.二通道参数设定 ",
" 4.系统参数设定 ",
" 5.系统调试界面 ");
}
else if ((Arrow_Position <= 9))
{
Code_Inputs(" 6.系统自检 ",
" 7.系统自整定 ",
" 8.历史信息查询 ",
" 9.帮助信息 ",
" 10.恢复默认设置 ");
}
LCD_Arrow_Display(Arrow_Position);
}
void Interface_ControlSet(void)
{
if (Arrow_Position <= 4)
{
Code_Inputs("一通道PID 参数设定 ",
" 比例Kp1 ",
" 积分Ki1 ",
" 微分Kd1 ",
" DF1 ");
Number_Display(14, 1, 3, 1, Control_Parameter[0] / 10); //Kp1
Number_Display(14, 2, 3, 1, Control_Parameter[1] / 10); //Ki1
Number_Display(14, 3, 3, 1, Control_Parameter[2] / 10); //Kd1
Number_Display(14, 4, 4, 1, Control_Parameter[3]); //DF1
}
else if (Arrow_Position <= 9)
{
Code_Inputs(" FN1 ",
" Kpp1 ",
" Sim1 ",
"二通道PID 参数设定 ",
" 比例Kp2 ");
Number_Display(14, 0 , 4, 1, Control_Parameter[4]);
Number_Display(14, 1 , 4, 1, Control_Parameter[5]);
Number_Display(14, 2 , 4, 0, Control_Parameter[6]);
Number_Display(14, 4 , 3, 1, Control_Parameter[7] / 10);
}
else if (Arrow_Position <= 14)
{
Code_Inputs(" 积分Ki2 ",
" 微分Kd2 ",
" DF2 ",
" FN2 ",
" Kpp2 ");
Number_Display(14, 0, 3, 1, Control_Parameter[8] / 10);
Number_Display(14, 1, 3, 1, Control_Parameter[9] / 10);
Number_Display(14, 2, 4, 1, Control_Parameter[10]);
Number_Display(14, 3, 4, 1, Control_Parameter[11]);
Number_Display(14, 4, 4, 1, Control_Parameter[12]);
}
else if (Arrow_Position <= 19)
{
Code_Inputs(" Sim2 ",
"一通道PDF 参数设定 ",
" 比例1 ",
" 积分1 ",
" 微分1 ");
Number_Display(14, 0 , 4, 0, Control_Parameter[13]);
/*for (i = 0; i < 3; i++)
{
Number_Display(14, i , 4, 2, Control_Parameter[i + 14]);
}*/
}
else if (Arrow_Position <= 24)
{
Code_Inputs(" 积分限1 ",
" 压力限1(MPa) ",
" 力增益1 ",
"二通道PDF 参数设定 ",
" 比例2 ");
/*for (i = 0; i < 3; i++)
{
Number_Display(14, i + 2 , 4, 2, Control_Parameter[i + 17]);
}
Number_Display(14, 4 , 4, 2, Control_Parameter[20]);*/
}
else if (Arrow_Position <= 29)
{
Code_Inputs(" 积分2 ",
" 微分2 ",
" 积分限2 ",
" 压力限2(MPa) ",
" 力增益2 ");
/*for (i = 0; i < 5; i++)
{
Number_Display(14, i , 4, 2, Control_Parameter[i + 21]);
}*/
}
LCD_Arrow_Display(Arrow_Position);
}
void Interface_ChannelSet(unsigned char channel)
{
if (Arrow_Position <= 4)
{
Code_Inputs(" 通道压力校零设定 ",
" P1(MPa) ",
" P2(MPa) ",
" 通道压力系数设定 ",
" P1 ");
if (channel == 0)
{
Code[0][0] = 0xd2;
Code[0][1] = 0xbb;
Code[3][0] = 0xd2;
Code[3][1] = 0xbb;
}
else
{
Code[0][0] = 0xb6;
Code[0][1] = 0xfe;
Code[3][0] = 0xb6;
Code[3][1] = 0xfe;
}
Number_Display(15, 1, 3, 1, Channel_Parameter[channel][0] / 10);
Number_Display(15, 2, 3, 1, Channel_Parameter[channel][1] / 10);
Number_Display(15, 4, 3, 1, Channel_Parameter[channel][2] / 10);
}
else if (Arrow_Position <= 9)
{
Code_Inputs(" P2 ",
" 通道位移参数设定 ",
" 校零(mm) ",
" 增益 ",
" ");
if (channel == 0)
{
Code[1][0] = 0xd2;
Code[1][1] = 0xbb; //Chinese character "one"
}
else
{
Code[1][0] = 0xb6;
Code[1][1] = 0xfe; //Chinese Character "two"
}
Number_Display(15, 0, 3, 1, Channel_Parameter[channel][3] / 10);
Number_Display(15, 2, 3, 1, Channel_Parameter[channel][4] / 10);
Number_Display(15, 3, 3, 1, Channel_Parameter[channel][5] / 10);
}
LCD_Arrow_Display(Arrow_Position);
}
void Interface_SystemSet(void)
{
if (Arrow_Position <= 4)
{
Code_Inputs("液压系统参数设定 ",
" 最高压力(MPa) ",
" 工作压力(MPa) ",
" 温度限定(C) ",
"开关机状态参数设定 ");
Number_Display(16, 1, 3, 1, System_Parameter[0] / 10);
Number_Display(16, 2, 3, 1, System_Parameter[1] / 10);
Number_Display(16, 3, 3, 0, System_Parameter[2]);
}
else if (Arrow_Position <= 9)
{
Code_Inputs(" 停机状态 ",
" 开机状态 ",
" 故障处理 ",
" 通讯模式 ",
" 通讯参数1 ");
switch (System_Parameter_Asic[0])
{
case 0 : Code[0][15] = 'Z';
Code[0][16] = 'e';
Code[0][17] = 'r';
Code[0][18] = 'o';
break;
case 1 : Code[0][15] = 'H';
Code[0][16] = 'o';
Code[0][17] = 'l';
Code[0][18] = 'd';
break;
default : break;
}
switch (System_Parameter_Asic[1])
{
case 0 : Code[1][15] = 'Z';
Code[1][16] = 'e';
Code[1][17] = 'r';
Code[1][18] = 'o';
break;
case 1 : Code[1][15] = 'P';
Code[1][16] = 'b';
Code[1][17] = 'j';
Code[1][18] = '.';
break;
default : break;
}
switch (System_Parameter_Asic[2])
{
case 0 : Code[2][15] = 'Z';
Code[2][16] = 'e';
Code[2][17] = 'r';
Code[2][18] = 'o';
break;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -