pid[9]=wendu;//存储温度值
for(j=0;j<9;j++)
pid[j]=pid[j+1];
//P比例计算 P参数为1
if(wendu<set)
p=(set-wendu)+128;
else
p=128-(wendu-set);
//I积分计算 I参数为1
k=0;
for(j=0;j<10;j++)
k=k+pid[j];
k=k/10;
if(k<set)
i=(set-k)+128;
else
i=128-(k-set);
//D微分计算 D参数为1
if(pid[8]<pid[9])
{
d=128+(pid[9]-pid[8]);
}
else
d=128-(pid[8]-pid[9]);
k=p+i+d;
k=k/3;
PCF8591_write(k);
for(j=0;j<9;j++)
pid[j]=pid[j+1];
//P比例计算 P参数为1
if(wendu<set)
p=(set-wendu)+128;
else
p=128-(wendu-set);
//I积分计算 I参数为1
k=0;
for(j=0;j<10;j++)
k=k+pid[j];
k=k/10;
if(k<set)
i=(set-k)+128;
else
i=128-(k-set);
//D微分计算 D参数为1
if(pid[8]<pid[9])
{
d=128+(pid[9]-pid[8]);
}
else
d=128-(pid[8]-pid[9]);
k=p+i+d;
k=k/3;
PCF8591_write(k);