rusEFI
The most advanced open source ECU
|
Controllers package entry point code.
This file is part of rusEfi - see http://rusefi.com
rusEfi is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
rusEfi is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
Definition in file engine_controller.cpp.
Functions | |
void | initDataStructures () |
static void | doPeriodicSlowCallback () |
static void | resetAccel () |
void | initPeriodicEvents () |
char * | getPinNameByAdcChannel (const char *msg, adc_channel_e hwChannel, char *buffer) |
static void | printSensorInfo () |
static void | getShort (int offset) |
static void | getByte (int offset) |
static void | setBit (const char *offsetStr, const char *bitStr, const char *valueStr) |
static void | setShort (const int offset, const int value) |
static void | setByte (const int offset, const int value) |
static void | getBit (int offset, int bit) |
static void | getInt (int offset) |
static void | setInt (const int offset, const int value) |
static void | getFloat (int offset) |
static void | setFloat (const char *offsetStr, const char *valueStr) |
static void | initConfigActions () |
void | commonInitEngineController () |
bool | validateConfig () |
void | commonEarlyInit () |
void | initRealHardwareEngineController () |
int | getRusEfiVersion (void) |
Variables | |
Engine ___engine | CCM_OPTIONAL |
Engine * | engine |
static PeriodicFastController | fastController |
static PeriodicSlowController | slowController |
static EngineStateBlinkingTask | engineStateBlinkingTask |
AdcDevice | fastAdc |
static volatile char | UNUSED_RAM_SIZE [RAM_UNUSED_SIZE] |
void commonEarlyInit | ( | ) |
Initialize hardware drivers
Definition at line 670 of file engine_controller.cpp.
Referenced by runRusEfiWithConfig().
void commonInitEngineController | ( | ) |
This has to go after 'enginePins.startPins()' in order to properly detect un-assigned output pins
Definition at line 422 of file engine_controller.cpp.
Referenced by initRealHardwareEngineController().
|
static |
rusEfi usually runs on hardware which halts execution while writing to internal flash, so we postpone writes to until engine is stopped. Writes in case of self-stimulation are fine.
todo: allow writing if 2nd bank of flash is used
Definition at line 189 of file engine_controller.cpp.
|
static |
this response is part of rusEfi console API
Definition at line 344 of file engine_controller.cpp.
Referenced by initConfigActions().
|
static |
this response is part of rusEfi console API
Definition at line 287 of file engine_controller.cpp.
Referenced by initConfigActions(), and setByte().
|
static |
this response is part of rusEfi console API
Definition at line 375 of file engine_controller.cpp.
Referenced by initConfigActions(), and setFloat().
|
static |
this response is part of rusEfi console API
Definition at line 355 of file engine_controller.cpp.
Referenced by initConfigActions(), and setInt().
char* getPinNameByAdcChannel | ( | const char * | msg, |
adc_channel_e | hwChannel, | ||
char * | buffer | ||
) |
Definition at line 244 of file engine_controller.cpp.
Referenced by AdcSubscription::PrintInfo(), printMAPInfo(), and printTpsSenser().
int getRusEfiVersion | ( | void | ) |
See also VCS_VERSION
Definition at line 755 of file engine_controller.cpp.
Referenced by firmwareError(), handleGetVersion(), myerror(), printRusefiVersion(), readFromFlash(), sayHello(), and updateTunerStudioState().
|
static |
this response is part of rusEfi console API
Definition at line 276 of file engine_controller.cpp.
Referenced by initConfigActions(), and setShort().
|
static |
Definition at line 405 of file engine_controller.cpp.
Referenced by commonInitEngineController().
void initDataStructures | ( | ) |
Definition at line 113 of file engine_controller.cpp.
Referenced by runRusEfi().
void initPeriodicEvents | ( | ) |
Definition at line 239 of file engine_controller.cpp.
Referenced by runRusEfi().
void initRealHardwareEngineController | ( | ) |
Definition at line 711 of file engine_controller.cpp.
Referenced by runRusEfiWithConfig().
|
static |
Definition at line 263 of file engine_controller.cpp.
Referenced by commonInitEngineController().
|
static |
Definition at line 179 of file engine_controller.cpp.
Referenced by commonInitEngineController(), and doPeriodicSlowCallback().
|
static |
this response is part of rusEfi console API
Definition at line 298 of file engine_controller.cpp.
Referenced by initConfigActions().
|
static |
Definition at line 335 of file engine_controller.cpp.
Referenced by initConfigActions().
|
static |
Definition at line 386 of file engine_controller.cpp.
Referenced by initConfigActions().
|
static |
Definition at line 366 of file engine_controller.cpp.
Referenced by initConfigActions().
|
static |
Definition at line 326 of file engine_controller.cpp.
Referenced by initConfigActions().
bool validateConfig | ( | ) |
Definition at line 533 of file engine_controller.cpp.
Referenced by runRusEfiWithConfig().
volatile char UNUSED_CCM_SIZE [CCM_UNUSED_SIZE] CCM_OPTIONAL |
Would love to pass reference to configuration object into constructor but C++ does allow attributes after parenthesized initializer
Definition at line 104 of file engine_controller.cpp.
Engine* engine |
Definition at line 108 of file engine_controller.cpp.
Referenced by WallFuel::adjust(), applyIACposition(), applyNonPersistentConfiguration(), applyPidSettings(), applyPinState(), assertTimeIsLinear(), RpmCalculator::assignRpmValue(), attachMsdSdCard(), auxPlainPinTurnOn(), blipIdle(), boardInitHardware(), brain_pin_markUsed(), HpfpQuantity::calcFuelPercent(), canDashboardHaltech(), canInfo(), RpmCalculator::checkIfSpinning(), TriggerCentral::checkIfTriggerConfigChanged(), EtbController::checkStatus(), TunerStudio::cmdOutputChannels(), commonInitEngineController(), completionCallback(), configureRusefiLuaHooks(), TriggerCentral::decodeMapCam(), AemXSeriesWideband::decodeRusefiDiag(), detectHellenBoardType(), IdleController::determinePhase(), disableTriggerStimulator(), disengageStarterIfNeeded(), doInitElectronicThrottle(), StepperMotorBase::doIteration(), doPeriodicSlowCallback(), emulatorApplyPinState(), enableExternalTriggerStimulator(), enableOrDisable(), enableTriggerStimulator(), etbAutocal(), etbPidReset(), executeTSCommand(), executorStatistics(), extIonCallback(), HpfpLobe::findNextLobe(), finishIdleTestIfNeeded(), fireSparkAndPrepareNextSchedule(), firmwareError(), fuelClosedLoopCorrection(), getAcrState(), getAdvance(), getAdvanceCorrections(), SpeedDensityAirmass::getAirmass(), getAirmassModel(), AngleBasedEvent::getAngleFromNow(), getBaseFuelMass(), getBoardId(), getBrainUsedPin(), getBrakePedalState(), VvtController::getClosedLoop(), BoostController::getClosedLoop(), AlternatorController::getClosedLoop(), IdleController::getClosedLoop(), EtbController::getClosedLoopAutotune(), getClutchUpState(), getCoilDutyCycle(), getCrankingFuel(), getCrankingFuel3(), IdleController::getCrankingTaperFraction(), TriggerCentral::getCurrentEnginePhase(), getCurrentIgnitionMode(), getEngineRotationState(), getEngineState(), getExecutorInterface(), getFuelALSCorrection(), getFuelSchedule(), getIdlePosition(), IdleController::getIdlePosition(), IdleController::getIdleTimingAdjustment(), getIgnitionEvents(), getInjectionMass(), getInjectorDutyCycle(), getInjectorDutyCycleStage2(), ClosedLoopFuelCellImpl::getLambdaError(), getLimpManager(), getLiveData(), SpeedDensityAirmass::getMap(), LambdaMonitor::getMaxAllowedLambda(), getMultiSparkCount(), BoostController::getOpenLoop(), RpmCalculator::getOperationMode(), getOutputValueByName(), getPerCylinderFiringOrderOffset(), PrimeController::getPrimeDuration(), getRunningAdvance(), getRunningFuel(), IdleController::getRunningOpenLoop(), BoostController::getSetpoint(), VvtController::getSetpoint(), EtbController::getSetpointEtb(), EtbController::getSetpointIdleValve(), IgnitionState::getSparkDwell(), FanController::getState(), IdleController::getTargetRpm(), TpsAccelEnrichment::getTpsEnrichment(), getTriggerCentral(), getTunerStudioOutputChannels(), AirmassVeModelBase::getVe(), grabPedalIsUp(), grabPedalIsWideOpen(), handleCommandX14(), handleFuel(), handleGetDataRequest(), handleShaftSignal(), TriggerCentral::handleShaftSignal(), handleTestCommand(), handleVvtCamSignal(), hipThread(), incrementGlobalConfigurationVersion(), Gm4l6xTransmissionController::init(), initAlternatorCtrl(), initAuxValves(), initBoostCtrl(), initDataStructures(), initDcMotor(), initElectronicThrottle(), initGearController(), initGpPwm(), initializeIgnitionActions(), initPwmTester(), initSpeedometer(), initTachometer(), initVrThresholdPwm(), initVvtActuators(), is_F_OrOlder(), LambdaMonitorBase::isCurrentlyGood(), LaunchControlBase::isInsideSwitchCondition(), isMegaModuleRevision(), isTriggerErrorNow(), lua_getDigital(), lua_setDebug(), mainTriggerCallback(), mapAveragingAdcCallback(), mapAveragingTriggerCallback(), mountMmc(), myAlloc(), obdOnCanPacketRx(), VvtController::observePlant(), onConfigurationChangeTriggerCallback(), onEcuStartDoSomethingTriggerInputPins(), onFastAdcComplete(), HpfpController::onFastCallback(), WallFuelController::onFastCallback(), KnockControllerBase::onKnockSenseCompleted(), RpmCalculator::onSlowCallback(), IdleController::onSlowCallback(), FanController::onSlowCallback(), FuelPumpController::onSlowCallback(), HarleyAcr::onSlowCallback(), MainRelayController::onSlowCallback(), TripOdometer::onSlowCallback(), IgnitionController::onSlowCallback(), SensorChecker::onSlowCallback(), onStartStopButtonToggle(), onTdcCallback(), PrimaryTriggerDecoder::onTriggerError(), onTriggerEventSparkLogic(), Engine::OnTriggerSynchronization(), InjectionEvent::onTriggerTooth(), overFireSparkAndPrepareNextSchedule(), Engine::periodicFastCallback(), EngineState::periodicFastCallback(), Engine::periodicSlowCallback(), CanWrite::PeriodicTask(), pokeAuxDigital(), populateFrame(), postCanState(), StepperMotorBase::postCurrentPosition(), postMapState(), GearControllerBase::postState(), Engine::preCalculate(), prepareCylinderIgnitionSchedule(), prepareIgnitionSchedule(), prepareOutputSignals(), printConfiguration(), printErrorCounters(), processCanRxImu_BoschM5_10_RollX(), processCanRxImu_BoschM5_10_YawY(), processCanRxImu_BoschM5_10_Z(), processLastKnockEvent(), StepDirectionStepper::pulse(), readGppwmChannel(), recalculateAuxValveTiming(), CanStreamerState::receiveFrame(), refreshMapAveragingPreCalc(), reportLogicAnalyzerToTS(), resetAccel(), resetLua(), rpmShaftPositionCallback(), runBench(), runOneLua(), runRusEfi(), sayHello(), scheduleByAngle(), TriggerScheduler::scheduleEventsUntilNextTriggerTooth(), HpfpController::scheduleNextCycle(), scheduleOpen(), scheduleSparkEvent(), sendQcBenchAuxDigitalCounters(), sendQcBenchButtonCounters(), sendQcBenchEventCounters(), sendWidebandInfo(), SentDecoderThread(), setAltPFactor(), setBoardConfigOverrides(), setEngineType(), setEtbIdlePosition(), setEtbLuaAdjustment(), setEtbWastegatePosition(), IgnitionOutputPin::setHigh(), StepperMotorBase::setInitialPosition(), IgnitionOutputPin::setLow(), SetNextCompositeEntry(), EtbController::setOutput(), Gm4l6xTransmissionController::setPcState(), setPin(), RpmCalculator::setRpmValue(), RpmCalculator::setSpinningUp(), RpmCalculator::setStopped(), setToothLogReady(), setTpsAccelLen(), setTriggerEmulatorRPM(), setTriggerType(), setValue(), setWholeTimingMapCmd(), setWholeVeCmd(), shouldCorrect(), shouldUpdateCorrection(), slowStartStopButtonCallback(), startAveraging(), startBoostPin(), startDwellByTurningSparkPinHigh(), startIdleBench(), startIdleThread(), startKnockSampling(), startLua(), startPwm(), startPwmTest(), startSimulatedTriggerSignal(), startTriggerInputPins(), tdcMarkCallback(), testCallback(), THD_FUNCTION(), tle8888PostState(), tle8888startup(), toggleTestAndScheduleNext(), triggerScopeDisable(), triggerScopeGetBuffer(), turnSparkPinHighStartCharging(), turnVvtPidOn(), undoIdleBlipIfNeeded(), InjectionEvent::update(), SimpleTransmissionController::update(), Gm4l6xTransmissionController::update(), DynoView::update(), updateDevConsoleState(), updateEgtSensors(), updateFlags(), updateFuelCorrections(), updateFuelInfo(), updateFuelResults(), updateFuelSensors(), updateGppwm(), updateIgnition(), updateLambda(), updateMiscSensors(), updatePressures(), updateRawSensors(), EngineState::updateSparkSkip(), LimpManager::updateState(), Engine::updateSwitchInputs(), EngineState::updateTChargeK(), updateTempSensors(), updateThrottles(), Engine::updateTriggerWaveform(), updateTriggerWaveformIfNeeded(), updateTunerStudioState(), updateVehicleSpeed(), updateVvtSensors(), updateWarningCodes(), TriggerCentral::updateWaveform(), validateConfiguration(), validateHardwareTimer(), warning(), watchDogBuddyCallback(), writeToFlashNow(), and CanTxMessage::~CanTxMessage().
|
static |
Definition at line 177 of file engine_controller.cpp.
Referenced by initRealHardwareEngineController().
|
extern |
Referenced by addChannel(), fast_adc_callback(), getAdcMode(), getInternalAdcValue(), initAdcInputs(), and printFullAdcReport().
|
static |
Definition at line 152 of file engine_controller.cpp.
Referenced by initPeriodicEvents().
|
static |
Definition at line 153 of file engine_controller.cpp.
Referenced by initPeriodicEvents().
|
static |
Definition at line 749 of file engine_controller.cpp.
Referenced by getRusEfiVersion().