NWPU_CHEN 发表于 2014-7-19 09:15
你这想法明显不行,自己取个临界电压算算就知道了
我取电压0.76,根据计算,进入 else result = 1;因此档位为1。
第二次得到跳动电压0.77,根据计算,进入
else if(voltage >= 0.77)
{
if(result >2) result = 2;
if(result <1) result = 1;
}
因为上次result为1, 所以这次即不符合if(result >2),也不符合if(result <1) ,那么结果没有重新赋值,还是上次的result值,那么档位仍然为1。
调动电压为0.87,进入 else if(voltage >=0.87),所以档位为2.
然后电压跳动为0.86,进入
else if(voltage >= 0.77)
{
if(result >2) result = 2;
if(result <1) result = 1;
}
因为上次result值为2,所以result也没有得新赋值,仍然为2.
我不知道你用哪个电压值算出明显不行? |