📄 shui.txt
字号:
j=i*O_Y+O_X+0x0800;
for(count1=0;count1<32;count1=count1+2)
{
dat1=j%256; dat2=j/256; com=0x24;PR1();
dat2=CCTAB[code_1][count1]; com=0xc0;
if(x1==0)
{dat2=~dat2;}
PR11();dat2=CCTAB[code_1][count1+1];
if(x1==0)
{dat2=~dat2;}PR11();j=j+i;
}
}
void CCW2_Num(uchar x1)
{ unsigned char i,count1;
unsigned int j;
i=para1;PR1();j=i*O_Y+O_X+0x0800;
for(count1=0;count1<16;count1++)
{dat1=j%256;dat2=j/256;com=0x24;PR1();
dat2=CCNum[code_1][count1];com=0xc4;
if(x1==0){dat2=~dat2;}
PR11();j=j+i;
}
}
int In_yj(void)
{
P0=0xf0;
P2=0x00;
chushi_1();
CLEAR();
code_1=0;O_X=0;O_Y=0;CCW2_PR(1); code_1=1;O_X=2;O_Y=0;CCW2_PR(1);
code_1=4;O_X=4;O_Y=0;CCW2_PR(1); code_1=5;O_X=6;O_Y=0;CCW2_PR(1);
code_1=10;O_X=8;O_Y=0;CCW2_Num(1);
code_1=0;O_X=9;O_Y=0;CCW2_Num(1); code_1=0;O_X=10;O_Y=0;CCW2_Num(1);
code_1=0;O_X=11;O_Y=0;CCW2_Num(1);
code_1=8;O_X=12;O_Y=0;CCW2_PR(1);code_1=15;O_X=13;O_Y=0;CCW2_Num(1); //显示℃
code_1=2;O_X=0;O_Y=16;CCW2_PR(w_s);code_1=3;O_X=2;O_Y=16;CCW2_PR(w_s);
code_1=4;O_X=4;O_Y=16;CCW2_PR(w_s);code_1=5;O_X=6;O_Y=16;CCW2_PR(w_s);
code_1=10;O_X=8;O_Y=16;CCW2_Num(w_s);
code_1=0;O_X=9;O_Y=16;CCW2_Num(w_s);code_1=0;O_X=10;O_Y=16;CCW2_Num(w_s);
code_1=0;O_X=11;O_Y=16;CCW2_Num(w_s);
code_1=8;O_X=12;O_Y=16;CCW2_PR(w_s);code_1=15;O_X=13;O_Y=16;CCW2_Num(w_s);//显示℃
code_1=0;O_X=0;O_Y=32;CCW2_PR(1);code_1=1;O_X=2;O_Y=32;CCW2_PR(1);
code_1=6;O_X=4;O_Y=32;CCW2_PR(1);code_1=7;O_X=6;O_Y=32;CCW2_PR(1);
code_1=10;O_X=8;O_Y=32;CCW2_Num(1);
code_1=13;O_X=9;O_Y=32;CCW2_Num(1);
code_1=11;O_X=13;O_Y=32;CCW2_PR(1);
code_1=2;O_X=0;O_Y=48;CCW2_PR(s_s);code_1=3;O_X=2;O_Y=48;CCW2_PR(s_s);
code_1=6;O_X=4;O_Y=48;CCW2_PR(s_s);code_1=7;O_X=6;O_Y=48;CCW2_PR(s_s);
code_1=10;O_X=8;O_Y=48;CCW2_Num(s_s);
code_1=13;O_X=9;O_Y=48;CCW2_Num(s_s);
}
int yej(void)
{
code_1=tb;O_X=9;O_Y=0;CCW2_Num(1);code_1=ts;O_X=10;O_Y=0;CCW2_Num(1);
code_1=tg;O_X=11;O_Y=0;CCW2_Num(1);
code_1=s_tb;O_X=9;O_Y=16;CCW2_Num(w_s);code_1=s_ts;O_X=10;O_Y=16;CCW2_Num(w_s);
code_1=s_tg;O_X=11;O_Y=16;CCW2_Num(w_s);
code_1=shs;O_X=9;O_Y=32;CCW2_Num(1);code_1=shz;O_X=13;O_Y=32;CCW2_PR(1);
code_1=s_sh;O_X=9;O_Y=48;CCW2_Num(s_s);
}
/************键盘扫描函数*****************/
int scan(void)
{ int i,j,r=16,key=16;
for(i=0;i<=3;i++)
{P1|=0xff;
P1&=~(0x01<<i); //i行输出为0
for(j=4;j<8;j++)
{if((P1&(0x01<<j))==0) //j行为0
{delay(30);
if((P1&(0x01<<j))==0)
{key=P1&0xff;
switch(key)
{
case 0xe7: r=0;break;
case 0xee: r=1;break;
case 0xde: r=2;break;
case 0xbe: r=3;break;
case 0xed: r=4;break;
case 0xdd: r=5;break;
case 0xbd: r=6;break;
case 0xeb: r=7;break;
case 0xdb: r=8;break;
case 0xbb: r=9;break;
case 0xd7: r=10;break;
case 0xb7: r=11;break;
case 0x7e: r=12;break;
case 0x7d: r=13;break;
case 0x7b: r=14;break;
case 0x77: r=15;break;
default : r=16;break;
}
}
}
}
}
return r;
}
/*************水位控制************/
void std3(void)
{ uchar ii,i=16;
w_s=1;
s_s=0;
yej();
while(1)
{
if(i>0&i<5)
{ii=i;delay(3000);i=scan();
if(ii==i)
{s_sh=i+12;
if((shz==9)||(shz==10)==1)shs=s_sh;
s_s=0;yej();break;
}
}
else if(i==10)break;
else i=scan();
}
w_s=1;s_s=1;
}
/********************水温控制****************************/
void std2(void)
{uchar ii,ws=0,i=16;
w_s=0;
s_s=1;
s_tb=0;s_ts=0;s_tg=0;
yej();
while(1)
{
if(i<10)
{ii=i;delay(6000);delay(6000);i=scan();
if((ws==2)&(ii==i)){s_tb=s_ts;s_ts=s_tg;s_tg=i;yej();ws++;break;}
if((ws==1)&(ii==i)){s_ts=s_tg;s_tg=i;yej();ws++;i=scan();continue;}
if((ws==0)&(ii==i)){s_tg=i;yej();ws++;i=scan();continue;}
}
if(i==10)break;
if(i==11){ws=0;s_tb=0;s_ts=0;s_tg=0;yej();}
i=scan();
}
if(s_tb>1){s_tb=1;s_ts=0;s_tg=0;}
else if(((s_tb==1)&&(s_ts>0))||((s_tb==1)&&(s_tg>0))==1)
{s_tb=1;s_ts=0;s_tg=0;}
else ;
w_s=1;s_s=1;
}
/************键值处理函数*****************/
void std1()
{
switch(kk)
{
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
case 6:
case 7:
case 8:
case 9:
case 10: break;
case 11: s_tb=0;s_ts=0;s_tg=0;shs=13;shz=11;s_sh=13;break; //清零
case 12: std2();break; // 转温度设置
case 13: std3();break; // 转水位设置
case 14: shz=9; csh=1;yej();break; //加水
case 15: shz=10;jsh=1;yej();break; //进水
default : kk=16; break;
}
}
/************************探测水位点*********************/
void control(void)
{
switch(shz) //探测水位点
{ case 9: jsh=0;
if(s_a==0)shs=13;
if(s_b==0)shs=14;
if(s_c==0)shs=15;
if(s_d==0)shs=16; break;
case 10: csh=0;
if(s_d==0)shs=16;
if(s_c==0)shs=15;
if(s_b==0)shs=14;
if(s_a==0)shs=13;
break;
case 11: jsh=1;csh=1;
if(s_a==0)shs=13;
if(s_b==0)shs=14;
if(s_c==0)shs=15;
if(s_d==0)shs=16;break;
default: break;
}
}
///********************主函数************************/
void main()
{static unsigned int ss=0;
kk=16;
In_yj();
L1=1;L2=0;
L3=1;L4=1;
s_a=1;s_b=1;s_c=1;s_d=1;
jsh=1;csh=1;
swen=1;
while(1)
{
if((ss%100)==0)
{t=read_temperature();
if(t<=(s_tb*100+s_ts*10+s_tg)) //温度判断到没
swen=0;
else swen=1;
tb=t/100;
ts=t/10%10;
tg=t%10;
yej();
}
if(ss==600) {ss=0;L2=~L2;}
ss++;
kk=scan();
if(kk!=16)
{delay(100);kk=scan();
if(kk!=16)std1();
else ;
}
control();
if(jsh==0){if(s_sh<=shs){jsh=1;shz=11;}} //水位判断到点没
if(csh==0){if(s_sh>=shs){csh=1;shz=11;}}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -