Speeduino
Loading...
Searching...
No Matches
scheduler_ignition_controller.h
Go to the documentation of this file.
1#pragma once
2#include "scheduler.h"
3#include "config_pages.h"
4#include "statuses.h"
5
11#if IGN_CHANNELS >= 6
13#endif
14#if IGN_CHANNELS >= 7
16#endif
17#if IGN_CHANNELS >= 8
19#endif
20
31
40
49
52
55
The tune page structs and related defines.
const config2 & page2
Definition engineProtection.cpp:438
const config4 & page4
Definition engineProtection.cpp:155
static TIntegral readSerialIntegralTimeout(void)
Reads an integral type, timing out if necessary.
Definition comms.cpp:175
uint16_t crankAngle
Definition scheduler_ignition_controller.cpp:399
const config4 statuses & current
Definition scheduler_ignition_controller.cpp:367
void startIgnitionSchedulers(void)
Start the timers that drive schedulers
void setIgnitionChannels(const statuses &current, uint16_t crankAngle, uint16_t dwellTime)
Schedule all ignition channels.
void stopIgnitionSchedulers(void)
Stop the timers that drive schedulers
IgnitionSchedule ignitionSchedule5
void initialiseIgnitionSchedules(uint8_t sparkMode, uint8_t numCylinders, uint8_t rotaryMode)
Initialise all ignition schedules.
Definition scheduler_ignition_controller.cpp:209
IgnitionSchedule ignitionSchedule1
IgnitionSchedule ignitionSchedule4
void calculateIgnitionAngles(const config2 &page2, const config4 &page4, statuses &current)
Calculate the charge & discharge angles for all ignition channels.
void applyOverDwellProtection(const config4 &page4, const statuses &current)
Check that no ignition channel has been charging the coil for too long.
IgnitionSchedule ignitionSchedule3
IgnitionSchedule ignitionSchedule2
The statuses struct and related defines.
An ignition schedule.
Definition scheduler.h:189
Definition config_pages.h:171
Definition config_pages.h:356
The status struct with current values for all 'live' variables.
Definition statuses.h:36