当前位置:首页 > 水温控制系统
+ pp->Integral * pp->SumError //积分项 + pp->Derivative * dError); // 微分项 }
/************************************************************************/
按键子程序
本系统采用四个按键,完成
温度的设定。当选择键K1每按下一次,K1num加1,根据K1num值选择对温度值的百位(预留)、十位、个位进行数值调节。每按一次按键K2,对应位数值加1,每按一次按键K1,对应位数值减1,并将设定温度值写到液晶显示器的相应位置。
按键子程序如下: /**********************
***按键子程序***********************************/
void sheding() {
if(k1==0) {
delay1(10);
if(k1==0) //按键K1按
下
while(!k1);//按键K1
抬起
write_com(0x0f);write_com(0x94);
k1num++; switch(k1num) { case
1:
write_com(0x0f);write_com(0x94);//液晶显示位置,十位
break; case
write_com(0x95);//液晶显示位置,个位
break; case
write_com(0x96);//液晶显示位置,小数位
break; case
k1num=0;write_com(0x0c);//清零
break; } }
if(k1num!=0)//返回 {
4:3:2:
//温度值加处理: if(k2==0) //按键K2按
下
{
delay1(10); if(k2==0) {
while(!k2); switch(k1num) {
case
shi++;if(shi==10)shi=0;a=shi;//十位加1,到10清零
write_com(0x94);write_d
ate(table[shi]);write_com(0x94);
break; case
ge++;if(ge==10)ge=0;b=ge;//个位加1,到10清零
write_com(0x95);;write_date(table[ge]);write_com(0x95);
break; case
3:2:1:
xs++;if(xs==10)xs=0;c=xs;//小数位加1,到10清零
write_com(0x96);write_d
ate('.');write_date(table[xs]);write_com(0x96);//在液晶对应位置画点
break; } } }
//温度值减处理: if(k3==0) { delay1(10); if(k3==0) {
while(!k3); switch(k1num) { case
shi--;if(shi==-1)shi=9;a=shi;
write_com(0x94);write_date(table[shi]);write_com(0x94);
1:
共分享92篇相关文档