📄 m128_alky_touch_con1.c
字号:
EEPROM_write(EE_Set_LD_AddrH, Set_LD_Value/256);
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
SEI();
break;
case 1: //浓度周期修改
CLI();
F_LDZQ_Value= KEY_TEMP[3] * 1000 + KEY_TEMP[2] * 100 +KEY_TEMP[1] * 10 + KEY_TEMP[0];
if(F_LDZQ_Value>4000) F_LDZQ_Value=4000;
EEPROM_write(EE_F_LDZQ_AddrL, F_LDZQ_Value%256);
EEPROM_write(EE_F_LDZQ_AddrH, F_LDZQ_Value/256);
ICR1_TEMP = (unsigned int)(F_LDZQ_Value*16);
TCNT1 = 0x0000;
OCR1A = 0xFFFF;
ICR1 = ICR1_TEMP;
Clr_BENG_CON();
TCCR1A = 0xC2;
TCCR1B = 0x1C;
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
SEI();
break;
case 2: //温度周期修改
CLI();
F_WDZQ_Value= KEY_TEMP[1] * 10 + KEY_TEMP[0];
if(F_WDZQ_Value>16) F_LDZQ_Value=16;
EEPROM_write(EE_F_WDZQ_Addr, F_WDZQ_Value);
ICR3_TEMP = (unsigned int)(F_WDZQ_Value*3906);
TCNT3 = 0x0000;
OCR3B = 0xFFFF;
ICR3 = ICR3_TEMP;
TCCR3A = 0x32;
TCCR3B = 0x1D;
ZhuQi_WenDu_Value = 30;
ZhuQi_WenDu_TOT = 0;
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
SEI();
break;
case 3: //时间修改
DS1302_Write(DS1302_CONTROL_Reg,0x00);//关闭写保护
Hour = (KEY_TEMP[3]<<4) | KEY_TEMP[2];
if(Hour>0x23) Hour=0x23;
DS1302_Write(DS1302_HR_Reg,Hour); //时
Minute = (KEY_TEMP[1]<<4) | KEY_TEMP[0];
if(Minute>0x59) Minute=0x59;
DS1302_Write(DS1302_MIN_Reg,Minute); //分
DS1302_Write(DS1302_CONTROL_Reg,0x80);//打开写保护
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
break;
case 4: //浓度PID修改
CLI();
LD_PID.Proportion = KEY_TEMP[5] * 10 + KEY_TEMP[4];
if(LD_PID.Proportion>25) LD_PID.Proportion=25;
LD_PID.Integral = KEY_TEMP[3] * 10 + KEY_TEMP[2];
if(LD_PID.Integral>12) LD_PID.Integral=12;
LD_PID.Derivative = KEY_TEMP[1] * 10 + KEY_TEMP[0];
if(LD_PID.Derivative>25) LD_PID.Derivative=25;
EEPROM_write(EE_LDPID_P_Addr, LD_PID.Proportion);
EEPROM_write(EE_LDPID_I_Addr, LD_PID.Integral);
EEPROM_write(EE_LDPID_D_Addr, LD_PID.Derivative);
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
SEI();
break;
case 5: //温度PID修改
CLI();
WD_PID.Proportion = KEY_TEMP[5] * 10 + KEY_TEMP[4];
if(WD_PID.Proportion>99) WD_PID.Proportion=99;
WD_PID.Integral = KEY_TEMP[3] * 10 + KEY_TEMP[2];
if(LD_PID.Integral>20) WD_PID.Integral=20;
WD_PID.Derivative = KEY_TEMP[1] * 10 + KEY_TEMP[0];
if(WD_PID.Derivative>99) WD_PID.Derivative=99;
EEPROM_write(EE_WDPID_P_Addr, WD_PID.Proportion);
EEPROM_write(EE_WDPID_I_Addr, WD_PID.Integral);
EEPROM_write(EE_WDPID_D_Addr, WD_PID.Derivative);
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
SEI();
break;
case 6: //日期修改
DS1302_Write(DS1302_CONTROL_Reg,0x00);//关闭写保护
Year = (KEY_TEMP[5]<<4) | KEY_TEMP[4];
DS1302_Write(DS1302_YEAR_Reg,Year); //年
Month = (KEY_TEMP[3]<<4) | KEY_TEMP[2];
if(Month>0x12) Month=0x12;
if(Month==0) Month=1;
DS1302_Write(DS1302_MONTH_Reg,Month); //月
Date = (KEY_TEMP[1]<<4) | KEY_TEMP[0];
if(Date>0x31) Date=0x31;
if(Date==0) Date=1;
DS1302_Write(DS1302_DATE_Reg,Date); //日
DS1302_Write(DS1302_CONTROL_Reg,0x80);//打开写保护
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
break;
case 7: //标定52PPM
case 8: //标定130PPM
case 9: //标定208PPM
case 10: //标定300PPM
case 11: //标定0PPM
Set_LD_Value= KEY_TEMP[2] * 100 +KEY_TEMP[1] * 10 + KEY_TEMP[0];
LD_PID.SetPoint = Set_LD_Value;
break;
case 14: //温度修改
CLI();
Set_WenDu_Value= KEY_TEMP[1] * 10 + KEY_TEMP[0];
if(Set_WenDu_Value>40) Set_WenDu_Value=40;
WD_PID.SetPoint =Set_WenDu_Value;
EEPROM_write(EE_Set_WD_Addr, Set_WenDu_Value);
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
SEI();
break;
case 15: //风量修改
CLI();
Set_LiuLiang_Value= KEY_TEMP[3] * 1000 + KEY_TEMP[2] * 100 +KEY_TEMP[1] * 10 + KEY_TEMP[0];
if(Set_LiuLiang_Value>1280) Set_LiuLiang_Value=1280;
EEPROM_write(EE_Set_FL_AddrL, Set_LiuLiang_Value%256);
EEPROM_write(EE_Set_FL_AddrH, Set_LiuLiang_Value/256);
OCR0=255-(Set_LiuLiang_Value/10);
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
SEI();
break;
}
else
k=20;
}
else
if(k==11) //取消
{
Display_Time_CLR();
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
}
else
if(k==12) //清除
{
KEY_TEMP[0]=KEY_TEMP[1];
KEY_TEMP[1]=KEY_TEMP[2];
KEY_TEMP[2]=KEY_TEMP[3];
KEY_TEMP[3]=KEY_TEMP[4];
KEY_TEMP[4]=KEY_TEMP[5];
KEY_TEMP[5]=0;
}
else
if(k==13) //标定
{
delay_nms(800);
if(keyboard()==13)
switch(MENU_NUM)
{
case 7: //标定52PPM
BDLD_052 = BDLD_AD_Value;
Set_LD_Value = 52;
LD_PID.SetPoint = 52;
BDLD_130 = (BDLD_AD_Value * 13)/5;
BDLD_208 = (BDLD_AD_Value * 20)/5;
BDLD_300 = (BDLD_AD_Value * 27)/5;
BDLD_520 = (BDLD_AD_Value * 36)/5;
BDLD_780 = (BDLD_AD_Value * 46)/5;
Sound_Nms(70);
delay_nms(100);
BDLD_YN_FLAG052=1;
CLI();
EEPROM_write(EE_BDLD_052_AddrL, BDLD_052%256);
EEPROM_write(EE_BDLD_052_AddrH, BDLD_052/256);
EEPROM_write(EE_BDLD_130_AddrL, BDLD_130%256);
EEPROM_write(EE_BDLD_130_AddrH, BDLD_130/256);
EEPROM_write(EE_BDLD_208_AddrL, BDLD_208%256);
EEPROM_write(EE_BDLD_208_AddrH, BDLD_208/256);
EEPROM_write(EE_BDLD_300_AddrL, BDLD_300%256);
EEPROM_write(EE_BDLD_300_AddrH, BDLD_300/256);
EEPROM_write(EE_BDLD_520_AddrL, BDLD_520%256);
EEPROM_write(EE_BDLD_520_AddrH, BDLD_520/256);
EEPROM_write(EE_BDLD_780_AddrL, BDLD_780%256);
EEPROM_write(EE_BDLD_780_AddrH, BDLD_780/256);
SEI();
delay_nms(10);
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
Display_Time_CLR();
break;
case 8: //标定130PPM
if(BDLD_AD_Value<BDLD_052 & BDLD_YN_FLAG052==1)
{
Sound_Nms(70);
delay_nms(250);
Sound_Nms(70);
delay_nms(250);
Sound_Nms(70);
delay_nms(250);
Sound_Nms(70);
delay_nms(250);
}
else
{
BDLD_130 = BDLD_AD_Value;
Set_LD_Value = 130;
LD_PID.SetPoint = 130;
BDLD_208 = (BDLD_AD_Value * 20)/13;
BDLD_300 = (BDLD_AD_Value * 27)/13;
BDLD_520 = (BDLD_AD_Value * 36)/13;
BDLD_780 = (BDLD_AD_Value * 46)/13;
Sound_Nms(70);
delay_nms(100);
BDLD_YN_FLAG130=1;
if(BDLD_YN_FLAG052==0)
{
BDLD_052 = (BDLD_AD_Value * 5)/13;
BDLD_YN_FLAG052=1;
}
CLI();
EEPROM_write(EE_BDLD_052_AddrL, BDLD_052%256);
EEPROM_write(EE_BDLD_052_AddrH, BDLD_052/256);
EEPROM_write(EE_BDLD_130_AddrL, BDLD_130%256);
EEPROM_write(EE_BDLD_130_AddrH, BDLD_130/256);
EEPROM_write(EE_BDLD_208_AddrL, BDLD_208%256);
EEPROM_write(EE_BDLD_208_AddrH, BDLD_208/256);
EEPROM_write(EE_BDLD_300_AddrL, BDLD_300%256);
EEPROM_write(EE_BDLD_300_AddrH, BDLD_300/256);
EEPROM_write(EE_BDLD_520_AddrL, BDLD_520%256);
EEPROM_write(EE_BDLD_520_AddrH, BDLD_520/256);
EEPROM_write(EE_BDLD_780_AddrL, BDLD_780%256);
EEPROM_write(EE_BDLD_780_AddrH, BDLD_780/256);
SEI();
delay_nms(10);
}
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
Display_Time_CLR();
break;
case 9: //标定208PPM
if(BDLD_AD_Value<BDLD_130 & BDLD_YN_FLAG130==1)
{
Sound_Nms(70);
delay_nms(250);
Sound_Nms(70);
delay_nms(250);
Sound_Nms(70);
delay_nms(250);
Sound_Nms(70);
delay_nms(250);
}
else
{
BDLD_208 = BDLD_AD_Value;
Set_LD_Value = 208;
LD_PID.SetPoint = 208;
BDLD_300 = (BDLD_AD_Value * 27)/20;
BDLD_520 = (BDLD_AD_Value * 36)/20;
BDLD_780 = (BDLD_AD_Value * 46)/20;
Sound_Nms(70);
delay_nms(100);
BDLD_YN_FLAG208=1;
if(BDLD_YN_FLAG052==0)
{
BDLD_052 = (BDLD_AD_Value * 5)/20;
BDLD_YN_FLAG052=1;
}
if(BDLD_YN_FLAG130==0)
{
BDLD_130 = (BDLD_AD_Value * 13)/20;
BDLD_YN_FLAG130=1;
}
CLI();
EEPROM_write(EE_BDLD_052_AddrL, BDLD_052%256);
EEPROM_write(EE_BDLD_052_AddrH, BDLD_052/256);
EEPROM_write(EE_BDLD_130_AddrL, BDLD_130%256);
EEPROM_write(EE_BDLD_130_AddrH, BDLD_130/256);
EEPROM_write(EE_BDLD_208_AddrL, BDLD_208%256);
EEPROM_write(EE_BDLD_208_AddrH, BDLD_208/256);
EEPROM_write(EE_BDLD_300_AddrL, BDLD_300%256);
EEPROM_write(EE_BDLD_300_AddrH, BDLD_300/256);
EEPROM_write(EE_BDLD_520_AddrL, BDLD_520%256);
EEPROM_write(EE_BDLD_520_AddrH, BDLD_520/256);
EEPROM_write(EE_BDLD_780_AddrL, BDLD_780%256);
EEPROM_write(EE_BDLD_780_AddrH, BDLD_780/256);
SEI();
delay_nms(10);
}
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
Display_Time_CLR();
break;
case 10: //标定300PPM
if(BDLD_AD_Value<BDLD_208 & BDLD_YN_FLAG208==1)
{
Sound_Nms(70);
delay_nms(250);
Sound_Nms(70);
delay_nms(250);
Sound_Nms(70);
delay_nms(250);
Sound_Nms(70);
delay_nms(250);
}
else
{
BDLD_300 = BDLD_AD_Value;
Set_LD_Value = 300;
LD_PID.SetPoint = 300;
BDLD_520 = (BDLD_AD_Value * 36)/27;
BDLD_780 = (BDLD_AD_Value * 46)/27;
Sound_Nms(70);
delay_nms(100);
BDLD_YN_FLAG300=1;
if(BDLD_YN_FLAG052==0)
{
BDLD_052 = (BDLD_AD_Value * 5)/27;
BDLD_YN_FLAG052=1;
}
if(BDLD_YN_FLAG130==0)
{
BDLD_130 = (BDLD_AD_Value * 13)/27;
BDLD_YN_FLAG130=1;
}
if(BDLD_YN_FLAG208==0)
{
BDLD_208 = (BDLD_AD_Value * 20)/27;
BDLD_YN_FLAG208=1;
}
CLI();
EEPROM_write(EE_BDLD_052_AddrL, BDLD_052%256);
EEPROM_write(EE_BDLD_052_AddrH, BDLD_052/256);
EEPROM_write(EE_BDLD_130_AddrL, BDLD_130%256);
EEPROM_write(EE_BDLD_130_AddrH, BDLD_130/256);
EEPROM_write(EE_BDLD_208_AddrL, BDLD_208%256);
EEPROM_write(EE_BDLD_208_AddrH, BDLD_208/256);
EEPROM_write(EE_BDLD_300_AddrL, BDLD_300%256);
EEPROM_write(EE_BDLD_300_AddrH, BDLD_300/256);
EEPROM_write(EE_BDLD_520_AddrL, BDLD_520%256);
EEPROM_write(EE_BDLD_520_AddrH, BDLD_520/256);
EEPROM_write(EE_BDLD_780_AddrL, BDLD_780%256);
EEPROM_write(EE_BDLD_780_AddrH, BDLD_780/256);
SEI();
delay_nms(10);
}
Display_TOUCH_MENU();
Display_TOUCH_Message(15);
Clr_TOUCH_KEY_DISP_F();
Display_Time_CLR();
break;
case 11: //标定0PPM
Set_LD_Value = 0;
LD_PID.SetPoint = 0;
LD_CLR_FLAG=1;
LD_CLR_Count=800;
Clr_TOUCH_MENU_DISP_F();
Clr_TOUCH_KEY_DISP_F();
Display_Time_CLR();
Display_CON320240();
break;
}
else
k=20;
}
}
else //if(YN_TOUCH_KEY_DISP_F)
if(YN_TOUCH_MENU_DISP_F)
{
switch(k)
{
case 0: //浓度修改
MENU_NUM=0;
KEY_TEMP[5]=0;
KEY_TEMP[4]=0;
KEY_TEMP[3]=0;
KEY_TEMP[2]=Set_LD_Value/100;
KEY_TEMP[1]=(Set_LD_Value%100)/10;
KEY_TEMP[0]=(Set_LD_Value%100)%10;
Set_TOUCH_KEY_DISP_F();
Display_TOUCH_KEY();
Display_TOUCH_Message(0);
break;
case 1: //浓度周期修改
MENU_NUM=1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -