|
| static void | setSequentialCallbacks (uint8_t numChannels) |
| |
| static void | setWastedSparkCallbacks (void) |
| |
| static void | setSingleChannelCallbacks (void) |
| |
| static void | setWastedCOPCallbacks (uint8_t numCylinders) |
| |
| static void | setRotaryCallbacks (uint8_t rotaryType) |
| |
| static void | setCallbacks (uint8_t sparkMode, uint8_t numCylinders, uint8_t rotaryMode) |
| |
| TESTABLE_STATIC void | resetIgnitionSchedulers (void) |
| |
| void | initialiseIgnitionSchedules (uint8_t sparkMode, uint8_t numCylinders, uint8_t rotaryMode) |
| | Initialise all ignition schedules.
|
| |
| TESTABLE_INLINE_STATIC bool | isAnyIgnScheduleRunning (void) |
| |
| static bool | isSwitchableCylinderCount (const config2 &page2) |
| |
| static bool | isSemiSequentialIgnition (const config2 &page2, const config4 &page4, const decoder_status_t &decoderStatus) |
| |
| static bool | isFullSequentialIgnition (const config4 &page4, const decoder_status_t &decoderStatus) |
| |
| TESTABLE_STATIC void | changeIgnitionToHalfSync (const config2 &page2, statuses ¤t) |
| |
| TESTABLE_STATIC void | changeIgnitionToFullSequential (const config2 &page2, statuses ¤t) |
| |
| TESTABLE_INLINE_STATIC void | matchIgnitionSchedulersToSyncState (const config2 &page2, const config4 &page4, statuses ¤t) |
| |
| static void | calculateRotaryIgnitionAngles (uint16_t dwellAngle, const statuses ¤t) |
| |
| static void | calculateNonRotaryIgnitionAngles (uint16_t dwellAngle, const statuses ¤t) |
| |
| | BEGIN_LTO_ALWAYS_INLINE (void) calculateIgnitionAngles(const config2 &page2 |
| |
| | if ((current.maxIgnOutputs==4U) &&(page4.sparkMode==IGN_MODE_ROTARY)) |
| |
| | if (page2.perToothIgn==true) |
| |
| TESTABLE_INLINE_STATIC void | setIgnitionScheduleDuration (IgnitionSchedule &schedule, uint32_t delay, uint16_t duration) |
| |
| static void | setIgnitionChannel (IgnitionSchedule &schedule, uint16_t crankAngle, uint16_t dwellDuration, byte channelMask, uint8_t channelIdx) |
| |
| TESTABLE_INLINE_STATIC void | applyChannelOverDwellProtection (IgnitionSchedule &schedule, uint32_t targetOverdwellTime) |
| |
| TESTABLE_INLINE_STATIC bool | isOverDwellActive (const config4 &page4, const statuses ¤t) |
| |
| void | applyOverDwellProtection (const config4 &page4, const statuses ¤t) |
| | Check that no ignition channel has been charging the coil for too long.
|
| |
| void | startIgnitionSchedulers (void) |
| | Start the timers that drive schedulers
|
| |
| void | stopIgnitionSchedulers (void) |
| | Stop the timers that drive schedulers
|
| |