一段看不懂的C程序 求助高手帮忙解释一下 谢谢
时间:10-02
整理:3721RD
点击:
uchar ad_dat1=0; //读取滤波后的AD值
uchar Water_dat=0;
uchar set_flag=0;
//水位计算
void Water_Calculate()
{
if(ad_dat1<33)
{
Water_dat=10-((33-ad_dat1)/3);
}
else
{
Water_dat=10+((ad_dat1-33)/3);
}
}
void main()
{
uint AD_DAT=0;
uchar i=0;
LED_OK=0;
init_1602();
while(1)
{
if(i<10) // 滤
{
i++;
AD_DAT+=A_D(); // 波
}
else // 算
{
i=0; // 法
ad_dat1=(uchar)(AD_DAT/10);
AD_DAT=0;
}
Water_Calculate();
display();
key();
control();
}
}
uchar Water_dat=0;
uchar set_flag=0;
//水位计算
void Water_Calculate()
{
if(ad_dat1<33)
{
Water_dat=10-((33-ad_dat1)/3);
}
else
{
Water_dat=10+((ad_dat1-33)/3);
}
}
void main()
{
uint AD_DAT=0;
uchar i=0;
LED_OK=0;
init_1602();
while(1)
{
if(i<10) // 滤
{
i++;
AD_DAT+=A_D(); // 波
}
else // 算
{
i=0; // 法
ad_dat1=(uchar)(AD_DAT/10);
AD_DAT=0;
}
Water_Calculate();
display();
key();
control();
}
}
你要说出哪里看不懂才行,不然大家直到怎么回复你!
我也看不懂
void main()
{
uint AD_DAT=0;
uchar i=0;
LED_OK=0;
init_1602();
while(1)
{
if(i<10) // 滤
{
i++;
AD_DAT+=A_D(); // 波
}
else // 算
{
i=0; // 法
ad_dat1=(uchar)(AD_DAT/10);
AD_DAT=0;
}
就是这部分不理解它那个算法是怎么写的 知道的可以告诉我它的思路是什么就可以了
PCB打样找华强 http://www.hqpcb.com 样板2天出货
每10个点做一次平均值
我也看不懂。
定义一个计数变量i,i每自增一次进行一次AD采集,当i自增到10,i清零,并对之前采集的10组数据取平均值。其实就是计算机算法里的均值采样
哦 ,明白了 谢谢大家
关于c程序,我掌握的也不是很好!但我会用,你说到的上个程序,我看了下,很简单嘛!就四个函数,一个是处理水位的,也就是采样函数,,,你可以不用细看的,因为他是一个整体,也没必要每一句都看懂,那样太累啦,不是吗?又一个是键盘扫描函数,该函数主要是针对外部(人为按键)而设置的程序,紧接着是控制函数,这个函数是专门针对于采样函数采样出的结果而设置的(功能大概就像这样:若水位低,就启动电动机往里抽水,从而使水位不至于太低;若水位太高,就启动电动机向外抽水,不至于水位太高;就是这样,从而使水位始终保持在某一水平),,我的理解就是这样的,希望能对你有所帮助!