2020-02-05 09:18发布
LM1876 发表于 2012-5-22 09:57 哪用乘来乘去的,收一个脉冲就加一次不就得累计里程。你看一下你那一个脉冲是走几远。然后就累加不是更方便 ...
最多设置5个标签!
你的意思我明白,可是这程序怎么用C语言写 我不是很明白 能举个例子么
if(Pulse_Pin==0 && b_PulseStatus==1)
{
b_PulseStatus = 0;//状态转变
m_TotalFlux++;//收到脉冲
}
if (m_TotalFlux>100) //假设一个脉冲1米,计量为0.1公里,那么每100米时里程+1.
{
m_TotalFlux=0; //计数复位
总里程++; //显示时要记得这个是0.1kM单位的
保存(); //保存1次,不过这样写的次数太多,一般最好是用电压检测掉电前保存
}
if (PCON & 0x20) //低电压判断
{
PCON &= 0xDF ; //标志位复位
if(old_Mileage != m_Mileage) //如果里程有改动
{
old_Mileage = m_Mileage; //旧里程=最新里程,下次如果里程没有改动时就没必要进入保存
FlashRom_Save(); // 保存
}
}
一周热门 更多>