ETB target is using integer values #945

refactoring - ADC mocking is a mess
This commit is contained in:
rusefi 2019-09-22 17:19:08 -04:00
parent bce63b112a
commit 5a43153541
3 changed files with 37 additions and 27 deletions

View File

@ -75,7 +75,7 @@
#if ! EFI_UNIT_TEST #if ! EFI_UNIT_TEST
#include "init.h" #include "init.h"
#endif #endif /* EFI_UNIT_TEST */
#if EFI_PROD_CODE #if EFI_PROD_CODE
#include "pwm_generator.h" #include "pwm_generator.h"
@ -96,7 +96,7 @@
void mostCommonInitEngineController(Logging *sharedLogger DECLARE_ENGINE_PARAMETER_SUFFIX) { void mostCommonInitEngineController(Logging *sharedLogger DECLARE_ENGINE_PARAMETER_SUFFIX) {
#if !EFI_UNIT_TEST #if !EFI_UNIT_TEST
initSensors(); initSensors();
#endif #endif /* EFI_UNIT_TEST */
initSensors(sharedLogger PASS_ENGINE_PARAMETER_SUFFIX); initSensors(sharedLogger PASS_ENGINE_PARAMETER_SUFFIX);
@ -593,39 +593,40 @@ static void setFloat(const char *offsetStr, const char *valueStr) {
getFloat(offset); getFloat(offset);
onConfigurationChanged(); onConfigurationChanged();
} }
#endif /* EFI_UNIT_TEST */
#if EFI_ENABLE_MOCK_ADC #if EFI_ENABLE_MOCK_ADC
void setMockCltVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX) { void setMockCltVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX) {
setMockVoltage(engineConfiguration->clt.adcChannel, voltage); setMockVoltage(engineConfiguration->clt.adcChannel, voltage PASS_ENGINE_PARAMETER_SUFFIX);
} }
void setMockIatVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX) { void setMockIatVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX) {
setMockVoltage(engineConfiguration->iat.adcChannel, voltage); setMockVoltage(engineConfiguration->iat.adcChannel, voltage PASS_ENGINE_PARAMETER_SUFFIX);
} }
void setMockMafVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX) { void setMockMafVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX) {
setMockVoltage(engineConfiguration->mafAdcChannel, voltage); setMockVoltage(engineConfiguration->mafAdcChannel, voltage PASS_ENGINE_PARAMETER_SUFFIX);
} }
void setMockAfrVoltage(float voltage) { void setMockAfrVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX) {
setMockVoltage(engineConfiguration->afr.hwChannel, voltage); setMockVoltage(engineConfiguration->afr.hwChannel, voltage PASS_ENGINE_PARAMETER_SUFFIX);
} }
void setMockThrottlePedalSensorVoltage(float voltage) { void setMockThrottlePedalSensorVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX) {
setMockVoltage(engineConfiguration->throttlePedalPositionAdcChannel, voltage); setMockVoltage(engineConfiguration->throttlePedalPositionAdcChannel, voltage PASS_ENGINE_PARAMETER_SUFFIX);
} }
void setMockThrottlePositionSensorVoltage(float voltage) { void setMockThrottlePositionSensorVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX) {
setMockVoltage(engineConfiguration->tps1_1AdcChannel, voltage); setMockVoltage(engineConfiguration->tps1_1AdcChannel, voltage PASS_ENGINE_PARAMETER_SUFFIX);
} }
void setMockMapVoltage(float voltage) { void setMockMapVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX) {
setMockVoltage(engineConfiguration->map.sensor.hwChannel, voltage); setMockVoltage(engineConfiguration->map.sensor.hwChannel, voltage PASS_ENGINE_PARAMETER_SUFFIX);
} }
void setMockVBattVoltage(float voltage) { void setMockVBattVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX) {
setMockVoltage(engineConfiguration->vbattAdcChannel, voltage); setMockVoltage(engineConfiguration->vbattAdcChannel, voltage PASS_ENGINE_PARAMETER_SUFFIX);
} }
static void initMockVoltage(void) { static void initMockVoltage(void) {
@ -641,6 +642,9 @@ static void initMockVoltage(void) {
#endif /* EFI_ENABLE_MOCK_ADC */ #endif /* EFI_ENABLE_MOCK_ADC */
#if !EFI_UNIT_TEST
static void initConfigActions(void) { static void initConfigActions(void) {
addConsoleActionSS("set_float", (VoidCharPtrCharPtr) setFloat); addConsoleActionSS("set_float", (VoidCharPtrCharPtr) setFloat);
addConsoleActionII("set_int", (VoidIntInt) setInt); addConsoleActionII("set_int", (VoidIntInt) setInt);

View File

@ -23,15 +23,15 @@ void mostCommonInitEngineController(Logging *sharedLogger DECLARE_ENGINE_PARAMET
void setMockVoltage(int hwChannel, float voltage DECLARE_ENGINE_PARAMETER_SUFFIX); void setMockVoltage(int hwChannel, float voltage DECLARE_ENGINE_PARAMETER_SUFFIX);
#endif #endif
void setMockVBattVoltage(float voltage); void setMockVBattVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX);
void setMockMapVoltage(float voltage); void setMockMapVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX);
// throttle body sensor // throttle body sensor
void setMockThrottlePositionSensorVoltage(float voltage); void setMockThrottlePositionSensorVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX);
void setMockThrottlePedalSensorVoltage(float voltage); void setMockThrottlePedalSensorVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX);
void setMockAfrVoltage(float voltage); void setMockAfrVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX);
void setMockMafVoltage(float voltage); void setMockMafVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX);
void setMockIatVoltage(float voltage); void setMockIatVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX);
void setMockCltVoltage(float voltage); void setMockCltVoltage(float voltage DECLARE_ENGINE_PARAMETER_SUFFIX);
void printCurrentState(Logging *logging, int seconds, const char *engineTypeName, const char *firmwareBuildId); void printCurrentState(Logging *logging, int seconds, const char *engineTypeName, const char *firmwareBuildId);

View File

@ -6,28 +6,34 @@
*/ */
#include "boards.h" #include "boards.h"
#include "engine.h"
// todo: migrate to engine->engineState.mockAdcState
float testMafValue = 0; float testMafValue = 0;
float testCltValue = 0; float testCltValue = 0;
float testIatValue = 0; float testIatValue = 0;
float getVoltageDivided(const char *msg, adc_channel_e channel DECLARE_ENGINE_PARAMETER_SUFFIX) { float getVoltageDivided(const char *msg, adc_channel_e hwChannel DECLARE_ENGINE_PARAMETER_SUFFIX) {
switch(channel) { switch(hwChannel) {
case TEST_MAF_CHANNEL: case TEST_MAF_CHANNEL:
return testMafValue; return testMafValue;
case TEST_CLT_CHANNEL: case TEST_CLT_CHANNEL:
return testCltValue; return testCltValue;
//return adcToVolts(engine->engineState.mockAdcState.getMockAdcValue(hwChannel));
case TEST_IAT_CHANNEL: case TEST_IAT_CHANNEL:
return testIatValue; return testIatValue;
//return adcToVolts(engine->engineState.mockAdcState.getMockAdcValue(hwChannel));
} }
return 0; return 0;
} }
float getVoltage(const char *msg, adc_channel_e channel DECLARE_ENGINE_PARAMETER_SUFFIX) { float getVoltage(const char *msg, adc_channel_e hwChannel DECLARE_ENGINE_PARAMETER_SUFFIX) {
if (engine->engineState.mockAdcState.hasMockAdc[hwChannel])
return adcToVolts(engine->engineState.mockAdcState.getMockAdcValue(hwChannel) * engineConfiguration->analogInputDividerCoefficient);
return 0; return 0;
} }
int getAdcValue(const char *msg, adc_channel_e channel) { int getAdcValue(const char *msg, adc_channel_e hwChannel) {
return 0; return 0;
} }