📄 gpio.c
字号:
{
if(((*(c+i*l+j))&(0x80>>m))>0) *WDAT=colorf;
else *WDAT=colorb;
}
}
}
} */
/*void AD(void)
{
//InitSysCtrl();
//DINT;
//IER = 0x0000;
//IFR = 0x0000;
//InitPieCtrl();
//PieCtrl.PIEIER1.bit.INTx6 = 1;
//InitPieVectTable();
//EALLOW; // This is needed to write to EALLOW protected registers
//PieVectTable.ADCINT=&ad;//对中断入口向量进行映射
//EDIS; // This is needed to disable write to EALLOW protected registers
//InitAdc();
// Enable INT14 which is connected to CPU-Timer 2:
//IER |= M_INT1;//使INT1口使能,因为ADC中断在此进入
//KickDog();
// Enable global Interrupts and higher priority real-time debug events:
//EINT; // Enable Global interrupt INTM//全局中断使能
//ERTM; // Enable Global realtime interrupt DBGM
while(AdcRegs.ADC_ST_FLAG.bit.SEQ1_BSY==0)//当SEQ1处于空闲状态时
{
AdcRegs.ADCTRL2.bit.SOC_SEQ1=1;// 启动数摸转换器
aa2=1;
}
//aa2=0;
while(aa2==0)//等待中断
{
KickDog();
}
} */
interrupt void ad(void)
{ xueliang++;
if(xueliang==1000){xueliang=0;}
IFR=0x0000;//
// PieCtrl.PIEIFR1.all = 0;
PieCtrl.PIEACK.all=0xffff;
//AdcRegs.ADC_ST_FLAG.bit.INT_SEQ1_CLR=1;
//AdcRegs.ADCTRL2.bit.SOC_SEQ1=1;
a0[0]=((float)AdcRegs.RESULT0)*3.0/65520.0+adclo;
a0[1]=((float)AdcRegs.RESULT2)*3.0/65520.0+adclo;
a0[2]=((float)AdcRegs.RESULT4)*3.0/65520.0+adclo;
a0[2]=2*a0[2];
AdcRegs.ADC_ST_FLAG.bit.INT_SEQ1_CLR=1;//SEQ1中断复位以便下次执行中断
// AdcRegs.ADCTRL2.bit.SOC_SEQ1=1;//关断数摸转换
EINT;//中断返回
press_C(a0[0]);a1[0]=temp;
oxsg_C(a0[1]);a1[1]=temp;
if(a0[2]>2.5)
{
flux_C1(a0[2]);
a1[2]=temp;
}
else
{
flux_C2(a0[2]);
a1[2]=temp;
}
c1[a2]=a1[0];
c2[a2]=a1[1];
c3[a2]=a1[2];
a2++;
if(a2==3)
{
Mid(c1);
b1[a3]=temp;
Mid(c2);
b2[a3]=temp;
Mid(c3);
b3[a3]=temp;
// show_tql(b3[a3]);
/*flux+=b3[a3];
if(cishu==0)
{
show_tql((int)Flux1);
}
cishu++;*/
if(ii==1)
{
boo[a3]=b3[a3];
}
else
{
boo[a3]=(0-b3[a3]);
}
//bx1[a3]=b1[a3];
//bo1[a3]=bo[a3];
a2=0;
a3++;
}
if(a3%30==0)
{
press=b1[a3];
show_yl(press);
oxsg=b2[a3];
show_ynd(oxsg);
flux+=b3[a3];
if(cishu==0)
{show_tql(Flux1);}
//show_tql(b3[a3]);
cishu++;
}
if(a3==100)
{
int s,m,n;
for(s=0;s<300;s++)
{
bx1[s+100]=bx1[s];
bo1[s+100]=bo1[s];
}
for(m=0;m<100;m++)
{
bx1[m]=b1[m];
bo1[m]=boo[m];
}
a3=0;
// color_temp=color_change;
// color_change=color_ground;
clear(181,90,599,209);
clear(181,240,599,369);
//color_change=color_temp;
for(n=0;n<400;n++)
{
bx1[n]=(int)(bx1[n]*1.75);
bo1[n]=(int)(bo1[n]/1.333);
}
//show_yalibo();
//show_huxibo();
}
//aa2=0;*/
}
void Mid(int *d)
{
if((*d<*(d+1))&&(*(d+1)<*(d+2))||(*d>*(d+1))&&(*(d+1)>*(d+2)))
{
temp=(*(d+1));
}
else if((*(d+1)<*d)&&(*d<*(d+2))||(*d<*(d+1))&&(*d>*(d+2)))
{
temp=(*d);
}
else temp=(*(d+2));
}
/*void Mid1()
{
if((c1[0]<c1[1])&&(c1[1]<c1[2])||(c1[0]>c1[1])&&(c1[1]>c1[2]))
{
temp=(c1[1]);
}
else if((c1[1]<c1[0])&&(c1[0]<c1[2])||(c1[0]<c1[1])&&(c1[0]>c1[2]))
{
temp=(c1[0]);
}
else temp=(c1[2]);
}
void Mid2()
{
if((*c2<*(c2+1))&&(*(c2+1)<*(c2+2))||(*c2>*(c2+1))&&(*(c2+1)>*(c2+2)))
{
b2[a3]=(*(c2+1));
}
else if((*(c2+1)<*c2)&&(*c2<*(c2+2))||(*c2<*(c2+1))&&(*c2>*(c2+2)))
{
b2[a3]=(*c2);
}
else b2[a3]=(*(c2+2));
}
void Mid3()
{
if((*c3<*(c3+1))&&(*(c3+1)<*(c3+2))||(*c3>*(c3+1))&&(*(c3+1)>*(c3+2)))
{
b3[a3]=(*(c3+1));
}
else if((*(c3+1)<*c3)&&(*c3<*(c3+2))||(*c3<*(c3+1))&&(*c3>*(c3+2)))
{
b3[a3]=(*c3);
}
else b3[a3]=(*(c3+2));
}
*/
void press_C(float x)
{
temp=(int)(x*100/2.6);
}
void oxsg_C(float x)
{
temp=((x-2.106)/0.648*100);
}
void flux_C1(float x)
{
temp=(62.839*x*x*x*x-434.63*x*x*x+1097.3*x*x-1235.9*x+570.94);
}
void flux_C2(float x)
{
temp=(37.967*x*x*x*x-493.4*x*x*x+2388*x*x-5095.5*x+3951);
}
//===========================================================================
// No more.
//===========================================================================
void show_Init()
{ int l;
for(l=0;l<400;l++)
{
bo1[l]=1;
bx1[l]=0;
b1[l]=1.0;
b2[l]=0;
b3[l]=0;
boo[l]=0.5;
}
//flux_C1(2.5);
//ce=temp;
clearall();
//show_yalibo();
//show_huxibo();
show_kj();
//show_plsz();
show_hxbsz();
show_ptsz();
show_xqysz();
show_cfysz();
show_yljc();
show_yndjc();
show_tqljc();
show_pljc();
show_cqljc();
show_dqzt();
show_msxz();
show_plszs(pinlv);
show_hxb(huxibi);
show_pt(pt);
show_xqy(xiqiya);
show_cfy(cfy);
show_ylsx(yls);
show_ylxx(ylx);
show_yndsx(ynds);
show_yndxx(yndx);
show_tqlsx(tqls);
show_tqlxx(tqlx);
show_yl(90);
show_ynd(50);
show_tql(50);
show_pljcs(15);
show_cql(90);
show_zbz();
color_temp=color_word;
color_word=255;
show_plsz();
color_word=color_temp;
//show_yd3();
/* show_yd0();
show_yd1();
show_yd2();
show_yd3();*/
}
void change_beijing()
{ int status1=1;
color_change1=color_all[beijin];
show_bjys();
while(status1)
{ get_key();
while(key_sign)
{
while(key_sign)
{
realse_key();
delay(50000);
}
switch(key_number1)
{
case /*0x0004*/231: beijin++;
if(beijin==10)
{beijin=0;}
color_change1=color_all[beijin];
show_bjys();
break;//加
case /*0x0008*/175: beijin--;
if(beijin<0)
{beijin=9;}
color_change1=color_all[beijin];
show_bjys();
break;//减
case /*0x0020*/238:
{
color_ground=color_change1;
show_Init();
clear(529,397,639,479);
show_yssz(n3);
status1=0;
break;
}//确定
default:break;
}
}
}
color_ground=color_change1;
}
void change_kuangjia()
{ int status1=1;
color_change1=color_all[kuangjia];
show_kxys();
while(status1)
{ get_key();
while(key_sign)
{
while(key_sign)
{
realse_key();
delay(50000);
}
switch(key_number1)
{
case /*0x0004*/231: kuangjia++;
if(kuangjia==10)
{kuangjia=0;}
color_change1=color_all[kuangjia];
show_kxys();
break;//加
case /*0x0008*/175: kuangjia--;
if(kuangjia<0)
{kuangjia=9;}
color_change1=color_all[kuangjia];
show_kxys();
break;//减
case /*0x0020*/238:
{
color_frame=color_change1;
show_kj();
show_zbz();
clear(529,397,639,479);
show_yssz(n3);
status1=0;
break;
}//确定
default:break;
}
}
}
color_frame=color_change1;
}
void change_hanzi()
{int status1=1;
color_change1=color_all[hanzi];
show_hanziy();
while(status1)
{ get_key();
while(key_sign)
{
while(key_sign)
{
realse_key();
delay(50000);
}
switch(key_number1)
{
case /*0x0004*/231: hanzi++;
if(hanzi==10)
{hanzi=0;}
color_change1=color_all[hanzi];
show_hanziy();
break;//加
case /*0x0008*/175: hanzi--;
if(hanzi<0)
{hanzi=9;}
color_change1=color_all[hanzi];
show_hanziy();
break;//减
case /*0x0020*/238:
{
status1=0;
break;}//确定
default:break;
}
}
}
color_word=color_change1;
show_Init();
clear(529,397,639,479);
show_yssz(n3);
}
void change_boxing()
{int status1=1;
color_change1=color_all[boxin];
show_bxys();
while(status1)
{ get_key();
while(key_sign)
{
while(key_sign)
{
realse_key();
delay(50000);
}
switch(key_number1)
{
case /*0x0004*/231: boxin++;
if(boxin==10)
{boxin=0;}
color_change1=color_all[boxin];
show_bxys();
break;//加
case /*0x0008*/175: boxin--;
if(boxin<0)
{boxin=9;}
color_change1=color_all[boxin];
show_bxys();
break;//减
case /*0x0020*/238:
{
status1=0;
break;}//确定
default:break;
}
}
}
color_wave=color_change1;
show_huxibo();
show_yalibo();
clear(529,397,639,479);
show_yssz(n3);
}
void change_top_shu()
{int status1=1;
color_change1=color_all[dingbu];
show_tcolor();
while(status1)
{ get_key();
while(key_sign)
{
while(key_sign)
{
realse_key();
delay(50000);
}
switch(key_number1)
{
case /*0x0004*/231: dingbu++;
if(dingbu==10)
{dingbu=0;}
color_change1=color_all[dingbu];
show_tcolor();
break;//加
case /*0x0008*/175: dingbu--;
if(dingbu<0)
{dingbu=9;}
color_change1=color_all[dingbu];
show_tcolor();
break;//减
case /*0x0020*/238:
{
status1=0;
break;}//确定
default:break;
}
}
}
color_top_number=color_change1;
show_plszs(pinlv);
show_hxb(huxibi);
show_pt(pt);
show_xqy(xqy);
show_cfy(cfy);
clear(529,397,639,479);
show_yssz(n3);
}
void change_bottom_shu()
{int status1=1;
color_change1=color_all[dibu];
show_bcolor();
while(status1)
{ get_key();
while(key_sign)
{
while(key_sign)
{
realse_key();
delay(50000);
}
switch(key_number1)
{
case /*0x0004*/231: dibu++;
if(dibu==10)
{dibu=0;}
color_change1=color_all[dibu];
show_bcolor();
break;//加
case /*0x0008*/175: dibu--;
if(dibu<0)
{dibu=9;}
color_change1=color_all[dibu];
show_bcolor();
break;//减
case /*0x0020*/238:
{
status1=0;
break;}//确定
default:break;
}
}
}
color_down_number=color_change1;
show_pljcs(24);
show_cql(90);
clear(529,397,639,479);
show_yssz(n3);
}
void change_right_limit()
{int status1=1;
color_change1=color_all[youbaojing];
show_ycbjy();
while(status1)
{ get_key();
while(key_sign)
{
while(key_sign)
{
realse_key();
delay(50000);
}
switch(key_number1)
{
case /*0x0004*/231: youbaojing++;
if(youbaojing==10)
{youbaojing=0;}
color_change1=color_all[youbaojing];
show_ycbjy();
break;//加
case /*0x0008*/175: youbaojing--;
if(youbaojing<0)
{youbaojing=9;}
color_change1=color_all[youbaojing];
show_ycbjy();
break;//减
case /*0x0020*/238:
{
status1=0;
break;}//确定
default:break;
}
}
}
color_alarm=color_change1;
show_ylsx(40);
show_ylxx(40);
show_yndsx(54);
show_yndxx(36);
show_tqlsx(12);
show_tqlxx(85);
clear(529,397,639,479);
show_yssz(n3);
}
void change_right_shu()
{int status1=1;
color_change1=color_all[youjiance];
show_ycjcy();
while(status1)
{ get_key();
while(key_sign)
{
while(key_sign)
{
realse_key();
delay(50000);
}
switch(key_number1)
{
case /*0x0004*/231: youj
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -