Code: Select all
if (d->sens.inst_frq > d->param.ie_hit)
{
//When RPM > hi threshold, then check TPS, CTS and MAP
if ((!d->sens.carb) && (d->sens.temperat > d->param.fuelcut_cts_thrd) && (d->sens.map < d->param.fuelcut_map_thrd))
{
if (!state)
{
s_timer_set(fuelcut_delay_time_counter, d->param.shutoff_delay);
state = 1;
}
else
{
if (s_timer_is_action(fuelcut_delay_time_counter))
d->ie_valve = 0; //Cut fuel
}
}
else
{
d->ie_valve = 1; //normal operation
state = 0;
}
}
else if (d->sens.inst_frq < d->param.ie_lot)
{ //always turn on fuel when RPM < low threshold
d->ie_valve = 1;
state = 0;
}