📄 data.c
字号:
#include <c8051f020.h> // SFR declarations
#include <stdio.h>
#include <var.h>
#include <lib.h>
#include <define.h>
data()
{
for(i=0;i<326;) //将电容信号差值赋予v[]
{
v[i]=t[i+2]-t[i+1];
if(v[i]<0)
{
v[i]=-v[i];
}
i=i+1;
}
for(vv=0;vv<326;) //检验差值小于0.05,找出n0
{
if((v[vv]<0.05)&&(v[vv+1]<0.05)&&(v[vv+2]<0.05)&&(v[vv+3]<0.05)&&(v[vv+4]<0.05))
{
n0=vv;
break;
}
vv=vv+1;
}
for(vv=n0;vv<326;)
{
if((v[vv]>0.05)&&((v[vv+1]>0.05)||(v[vv+2]>0.05)))
{
n1=vv;
break;
}
vv=vv+1;
}
for(vv=n1;vv<326;)
{
if((v[vv]<0.05)&&(v[vv+1]<0.05)&&(v[vv+2]<0.05))
{
n2=vv;
break;
}
vv=vv+1;
}
for(vv=n2;vv<326;)
{
if((v[vv]>0.05)&&((v[vv+1]>0.05)||(v[vv+2]>0.05)))
{
n3=vv;
break;
}
vv=vv+1;
}
n1=n1+1;
n2=n2+1;
n3=n3+1;
T1=n2-n1;
add=t[n1];
for(i=n1;i<n2-1;i++)
{
add=add+t[i+1];
}
Equ1=add/T1;
add=u[n1];
for(i=n1;i<n2-1;i++)
{
add=add+u[i+1];
}
Equ2=add/T1;
Tn=n3-n2;
add=t[n2];
for(i=n2;i<n3-1;i++)
{
add=add+t[i+1];
}
EquT=add/Tn;
add=u[n2];
for(i=n2;i<n3-1;i++)
{
add=add+u[i+1];
}
EquU=add/Tn;
T0=0;
for(i=n2;i<=n3-1;i++)
{
if(u[i]==0)
{
T0=T0+1;
}
}
if(Tn%2==0)
{
n4=n2+Tn/2-1;
add=t[n2];
for(i=n2;i<n4;i++)
{
add=add+t[i+1];
}
EquT1=add/Tn*2;
add=t[n4+1];
for(i=n4+1;i<n3-1;i++)
{
add=add+t[i+1];
}
EquT2=add/Tn*2;
add=u[n2];
for(i=n2;i<n4;i++)
{
add=add+u[i+1];
}
EquU1=add/Tn*2;
add=u[n4+1];
for(i=n4+1;i<n3-1;i++)
{
add=add+u[i+1];
}
EquU2=add/Tn*2;
}
else
{
n4=n2+Tn/2;
add=t[n2];
for(i=n2;i<n4-2;i++)
{
add=add+t[i+1];
}
EquT1=add/Tn*2;
add=t[n4+1];
for(i=n4+1;i<n3-2;i++)
{
add=add+t[i+1];
}
EquT2=add/Tn*2;
add=u[n2];
for(i=n2;i<n4-2;i++)
{
add=add+u[i+1];
}
EquU1=add/Tn*2;
add=u[n4+1];
for(i=n4+1;i<n3-2;i++)
{
add=add+u[i+1];
}
EquU2=add/Tn*2;
}
a[0] = T1;
a[1] = Equ1;
a[2] = Equ2;
a[3] = Tn;
a[4] = EquT;
a[5] = EquT1;
a[6] = EquT2;
a[7] = EquU;
a[8] = EquU1;
a[9] = EquU2;
a[10] = T0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -