本届的难点主要在采集10个温度数值并且依次显示上。这里的存储并不是掉电存储,用不到EEPROM,并且根据题目中要求,还要设定采集间隔时间。所以这项功能要写在定时器里完成。
解决办法:
定义一个一维数组,内含10个数据:unsigned char caijiwendu[10];
定义数组的个数值,从0开始:num=0;
相当于:caijiwendu[num]数据本身【数据的第几个】
当要采集温度时,打开定时器的开关。当时间到了一次采集温度间隔时,把温度的值赋给caijiwendu[num]。
caijiwendu[num]=wendu;
num++;
if(num==10) //10个数据采集完毕
{
num=0; //计数值归零
}
当要显示数据的时候,在定时器里面
one=10;two=num/10:three=num%10:four=11;
five=11;six=10;seven=caijiwendu[num]/10;
eight=caijiwendu[num]%10;
num++;
if(num==10)
{
num=0;
}