mirror of https://github.com/FOME-Tech/fome-fw.git
invert vvt in one spot, like trigger
This commit is contained in:
parent
6ddf551c3f
commit
a2652d31dc
|
@ -479,8 +479,6 @@ static void enableOrDisable(const char *param, bool isEnabled) {
|
||||||
engineConfiguration->verboseTriggerSynchDetails = isEnabled;
|
engineConfiguration->verboseTriggerSynchDetails = isEnabled;
|
||||||
} else if (strEqualCaseInsensitive(param, "vvt_details")) {
|
} else if (strEqualCaseInsensitive(param, "vvt_details")) {
|
||||||
engineConfiguration->verboseVVTDecoding = isEnabled;
|
engineConfiguration->verboseVVTDecoding = isEnabled;
|
||||||
} else if (strEqualCaseInsensitive(param, "invertCamVVTSignal")) {
|
|
||||||
engineConfiguration->invertCamVVTSignal = isEnabled;
|
|
||||||
} else if (strEqualCaseInsensitive(param, CMD_IGNITION)) {
|
} else if (strEqualCaseInsensitive(param, CMD_IGNITION)) {
|
||||||
engineConfiguration->isIgnitionEnabled = isEnabled;
|
engineConfiguration->isIgnitionEnabled = isEnabled;
|
||||||
#if EFI_EMULATE_POSITION_SENSORS
|
#if EFI_EMULATE_POSITION_SENSORS
|
||||||
|
|
|
@ -229,6 +229,9 @@ void hwHandleVvtCamSignal(bool isRising, efitick_t nowNt, int index) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Invert if so configured
|
||||||
|
isRising ^= engineConfiguration->invertCamVVTSignal;
|
||||||
|
|
||||||
int bankIndex = index / CAMS_PER_BANK;
|
int bankIndex = index / CAMS_PER_BANK;
|
||||||
int camIndex = index % CAMS_PER_BANK;
|
int camIndex = index % CAMS_PER_BANK;
|
||||||
if (isRising) {
|
if (isRising) {
|
||||||
|
|
|
@ -42,8 +42,6 @@ static void cam_callback(void *arg, efitick_t stamp) {
|
||||||
|
|
||||||
bool rise = (palReadLine(pal_line) == PAL_HIGH);
|
bool rise = (palReadLine(pal_line) == PAL_HIGH);
|
||||||
|
|
||||||
rise ^= engineConfiguration->invertCamVVTSignal;
|
|
||||||
|
|
||||||
hwHandleVvtCamSignal(rise, stamp, index);
|
hwHandleVvtCamSignal(rise, stamp, index);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -107,7 +107,7 @@ void CsvReader::processLine(EngineTestHelper *eth) {
|
||||||
}
|
}
|
||||||
|
|
||||||
efitick_t nowNt = getTimeNowNt();
|
efitick_t nowNt = getTimeNowNt();
|
||||||
bool isRising = newVvtState[vvtIndex] ^ engineConfiguration->invertCamVVTSignal;
|
bool isRising = newVvtState[vvtIndex];
|
||||||
// todo: configurable selection of vvt mode - dual bank or dual cam single bank
|
// todo: configurable selection of vvt mode - dual bank or dual cam single bank
|
||||||
int bankIndex;
|
int bankIndex;
|
||||||
int camIndex;
|
int camIndex;
|
||||||
|
|
|
@ -27,7 +27,7 @@ static void func(TriggerCallback *callback) {
|
||||||
|
|
||||||
efitick_t nowNt = getTimeNowNt();
|
efitick_t nowNt = getTimeNowNt();
|
||||||
if (callback->isVvt) {
|
if (callback->isVvt) {
|
||||||
hwHandleVvtCamSignal(value, nowNt, callback->vvtBankIndex * CAMS_PER_BANK);
|
hwHandleVvtCamSignal(!value, nowNt, callback->vvtBankIndex * CAMS_PER_BANK);
|
||||||
} else {
|
} else {
|
||||||
handleShaftSignal(0, value, nowNt);
|
handleShaftSignal(0, value, nowNt);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue