33#define CRANK_ANGLE_MAX (max(CRANK_ANGLE_MAX_IGN, CRANK_ANGLE_MAX_INJ))
35#define MICROS_PER_SEC INT32_C(1000000)
36#define MICROS_PER_MIN INT32_C(MICROS_PER_SEC*60U)
37#define MICROS_PER_HOUR INT32_C(MICROS_PER_MIN*60U)
38#define MILLI_PER_SEC INT32_C(MICROS_PER_SEC/1000)
40#define UINT16_HALF_RANGE 0x8000
42#define SERIAL_PORT_PRIMARY 0
43#define SERIAL_PORT_SECONDARY 3
45#define BIT_TIMER_1HZ 0
46#define BIT_TIMER_4HZ 1
47#define BIT_TIMER_10HZ 2
48#define BIT_TIMER_15HZ 3
49#define BIT_TIMER_30HZ 4
50#define BIT_TIMER_50HZ 5
51#define BIT_TIMER_200HZ 6
52#define BIT_TIMER_1KHZ 7
55#define TOOTH_LOG_SIZE 127U
57#define TOOTH_LOG_SIZE 1U
63#define COMPOSITE_LOG_PRI 0
64#define COMPOSITE_LOG_SEC 1
65#define COMPOSITE_LOG_THIRD 2
66#define COMPOSITE_LOG_TRIG 3
67#define COMPOSITE_LOG_SYNC 4
68#define COMPOSITE_ENGINE_CYCLE 5
70#define OUTPUT_CONTROL_DIRECT 0
71#define OUTPUT_CONTROL_MC33810 10
91#define CALIBRATION_TABLE_SIZE 512
93#define OFFSET_FUELTRIM 127U
94#define OFFSET_IGNITION 40
96#define SERIAL_BUFFER_THRESHOLD 32
98#define LOGGER_CSV_SEPARATOR_SEMICOLON 0
99#define LOGGER_CSV_SEPARATOR_COMMA 1
100#define LOGGER_CSV_SEPARATOR_TAB 2
101#define LOGGER_CSV_SEPARATOR_SPACE 3
103#define LOGGER_DISABLED 0
105#define LOGGER_BINARY 2
107#define LOGGER_RATE_1HZ 0
108#define LOGGER_RATE_4HZ 1
109#define LOGGER_RATE_10HZ 2
110#define LOGGER_RATE_30HZ 3
112#define LOGGER_FILENAMING_OVERWRITE 0
113#define LOGGER_FILENAMING_DATETIME 1
114#define LOGGER_FILENAMING_SEQENTIAL 2
The tune page structs and related defines.
byte pinTrigger3
the 2nd cam sensor pin
Definition globals.cpp:80
byte pinStepperEnable
Definition globals.cpp:121
volatile uint16_t ignitionCount
Definition globals.cpp:41
byte pinMC33810_2_CS
Definition globals.cpp:134
int CRANK_ANGLE_MAX_IGN
Definition globals.cpp:42
int CRANK_ANGLE_MAX_INJ
The number of crank degrees that the system track over. 360 for wasted / timed batch and 720 for sequ...
Definition globals.cpp:43
byte pinVSS
Definition globals.cpp:125
byte pinSpareLOut4
Definition globals.cpp:113
byte pinSpareLOut2
Definition globals.cpp:111
byte pinFuelPump
Definition globals.cpp:92
table3d6RpmLoad trimTable3d
Definition globals.h:128
byte pinSpareOut6
Definition globals.cpp:107
byte pinCoil4
Pin for coil 4.
Definition globals.cpp:71
struct table3d8RpmLoad stagingTable
8x8 fuel staging table
Definition globals.cpp:12
byte pinTrigger2
RPM2 (Typically the Cam Sensor) pin.
Definition globals.cpp:79
byte pinTPS
Definition globals.cpp:81
byte injectorOutputControl
Definition globals.cpp:66
struct statuses currentStatus
Definition globals.cpp:143
trimTable3d trim5Table
6x6 Fuel trim 5 map
Definition globals.cpp:22
byte pinFan
Cooling fan output (on/off? See: auxiliaries.ino)
Definition globals.cpp:118
volatile byte TIMER_mask
Definition globals.cpp:54
trimTable3d trim3Table
6x6 Fuel trim 3 map
Definition globals.cpp:20
byte pinBat
Definition globals.cpp:89
volatile uint32_t seclx10
Definition globals.cpp:45
byte pinTachOut
Definition globals.cpp:91
byte pinO2_2
Definition globals.cpp:88
byte pinVVT_2
vvt (variable valve timing) output 2
Definition globals.cpp:117
struct table3d8RpmLoad vvt2Table
8x8 vvt2 map
Definition globals.cpp:16
volatile unsigned int toothHistoryIndex
Current index to toothHistory array.
Definition globals.cpp:39
trimTable3d trim4Table
6x6 Fuel trim 4 map
Definition globals.cpp:21
byte pinAirConComp
Definition globals.cpp:139
unsigned long currentLoopTime
Definition globals.cpp:40
byte ignitionOutputControl
Definition globals.cpp:76
byte pinAirConFan
Definition globals.cpp:140
volatile uint32_t runSecsX10
Definition globals.cpp:44
#define TOOTH_LOG_SIZE
Definition globals.h:55
uint16_t fixedCrankingOverride
Definition globals.cpp:34
struct table3d16RpmLoad afrTable
16x16 afr target map
Definition globals.cpp:11
byte pinInjector3
Output pin injector 3.
Definition globals.cpp:60
byte pinInjector2
Output pin injector 2.
Definition globals.cpp:59
volatile byte HWTest_IGN_Pulsed
Definition globals.cpp:49
byte fpPrimeTime
The time (in seconds, based on statuses::secl) that the fuel pump started priming.
Definition globals.cpp:29
struct table3d16RpmLoad ignitionTable2
16x16 ignition map
Definition globals.cpp:10
byte pinCTPS
Definition globals.cpp:97
byte pinMAP
Definition globals.cpp:82
byte pinCoil5
Pin for coil 5.
Definition globals.cpp:72
bool pinIsOutput(byte pin)
Definition globals.cpp:153
byte pinWMIEnabled
Definition globals.cpp:132
byte pinResetControl
Definition globals.cpp:127
byte pinSpareOut5
Definition globals.cpp:106
byte pinBoost
Definition globals.cpp:115
byte resetControl
resetControl needs to be here (as global) because using the config page (4) directly can prevent burn...
Definition globals.cpp:52
byte pinIdleUp
Definition globals.cpp:95
byte pinIgnBypass
Definition globals.cpp:123
byte pinSpareTemp2
Definition globals.cpp:101
byte pinSpareOut3
Definition globals.cpp:104
byte pinCoil3
Pin for coil 3.
Definition globals.cpp:70
volatile byte HWTest_INJ
Definition globals.cpp:46
byte pinBaro
Definition globals.cpp:126
byte pinCoil8
Pin for coil 8.
Definition globals.cpp:75
byte pinCLT
Definition globals.cpp:86
struct table3d16RpmLoad fuelTable2
16x16 fuel map
Definition globals.cpp:8
byte pinLaunch
Definition globals.cpp:122
trimTable3d trim6Table
6x6 Fuel trim 6 map
Definition globals.cpp:23
byte pinEMAP
Definition globals.cpp:83
byte pinO2
Definition globals.cpp:87
byte pinTrigger
RPM1 (Typically CAS=crankshaft angle sensor) pin.
Definition globals.cpp:78
byte pinInjector6
Output pin injector 6.
Definition globals.cpp:63
byte pinStepperDir
Definition globals.cpp:119
byte pinSpareTemp1
Definition globals.cpp:100
byte pinSpark2Input
Definition globals.cpp:99
byte pinFlex
Definition globals.cpp:124
byte pinCoil1
Pin for coil 1.
Definition globals.cpp:68
byte pinIAT
Definition globals.cpp:85
byte pinWMIEmpty
Definition globals.cpp:130
byte pinSpareHOut2
Definition globals.cpp:109
struct config15 configPage15
Definition engineProtection.cpp:187
struct table3d8RpmLoad wmiTable
8x8 wmi map
Definition globals.cpp:17
byte pinInjector1
Various pin numbering (Injectors, Ign outputs, CAS, Cam, Sensors. etc.) assignments.
Definition globals.cpp:58
struct config10 configPage10
Definition auxiliaries.cpp:191
volatile byte LOOP_TIMER
Definition globals.cpp:55
byte pinWMIIndicator
Definition globals.cpp:131
byte pinSpareLOut1
Definition globals.cpp:110
byte pinInjector5
Output pin injector 5.
Definition globals.cpp:62
byte pinStepperStep
Definition globals.cpp:120
volatile unsigned long timer5_overflow_count
Definition globals.cpp:32
trimTable3d trim7Table
6x6 Fuel trim 7 map
Definition globals.cpp:24
byte pinSpareLOut5
Definition globals.cpp:114
byte pinSpareOut4
Definition globals.cpp:105
byte pinIdle1
Definition globals.cpp:93
volatile byte HWTest_IGN
Definition globals.cpp:48
struct table3d4RpmLoad dwellTable
4x4 Dwell map
Definition globals.cpp:26
byte pinDisplayReset
Definition globals.cpp:90
byte pinVVT_1
vvt (variable valve timing) output 1
Definition globals.cpp:116
struct table3d8RpmLoad boostTable
8x8 boost map
Definition globals.cpp:13
struct config9 configPage9
Definition engineProtection.cpp:13
uint8_t softLimitTime
Definition globals.cpp:30
byte pinIdle2
Definition globals.cpp:94
struct table3d16RpmLoad fuelTable
16x16 fuel map
Definition globals.cpp:7
byte pinSpareOut1
Definition globals.cpp:102
volatile byte HWTest_INJ_Pulsed
Definition globals.cpp:47
byte pinCoil6
Pin for coil 6.
Definition globals.cpp:73
volatile uint8_t compositeLogHistory[TOOTH_LOG_SIZE]
Definition globals.cpp:38
byte pinInjector8
Output pin injector 8.
Definition globals.cpp:65
byte pinInjector7
Output pin injector 7.
Definition globals.cpp:64
byte pinAirConRequest
Definition globals.cpp:141
struct config13 configPage13
Definition globals.cpp:149
byte pinSpareLOut3
Definition globals.cpp:112
volatile unsigned long ms_counter
Definition globals.cpp:33
struct config6 configPage6
Definition auxiliaries.cpp:172
volatile uint16_t mainLoopCount
Definition globals.cpp:31
byte pinMAP2
Definition globals.cpp:84
byte pinSpareOut2
Definition globals.cpp:103
struct config2 configPage2
Definition corrections.cpp:59
byte pinMC33810_1_CS
Definition globals.cpp:133
struct table3d8RpmLoad boostTableLookupDuty
8x8 boost map lookup table
Definition globals.cpp:14
byte pinFuel2Input
Definition globals.cpp:98
byte pinFuelPressure
Definition globals.cpp:128
byte pinSDEnable
Definition globals.cpp:135
volatile uint32_t toothHistory[TOOTH_LOG_SIZE]
Tooth trigger history - delta time (in uS) from last tooth (Indexed by toothHistoryIndex)
Definition globals.cpp:37
bool pinIsUsed(byte pin)
Definition globals.cpp:208
trimTable3d trim2Table
6x6 Fuel trim 2 map
Definition globals.cpp:19
struct config4 configPage4
Definition corrections.cpp:56
byte pinCoil2
Pin for coil 2.
Definition globals.cpp:69
byte pinSpareHOut1
Definition globals.cpp:108
byte pinOilPressure
Definition globals.cpp:129
byte pinIdleUpOutput
Definition globals.cpp:96
byte pinInjector4
Output pin injector 4.
Definition globals.cpp:61
struct table3d16RpmLoad ignitionTable
16x16 ignition map
Definition globals.cpp:9
byte pinCoil7
Pin for coil 7.
Definition globals.cpp:74
trimTable3d trim1Table
6x6 Fuel trim 1 map
Definition globals.cpp:18
trimTable3d trim8Table
6x6 Fuel trim 8 map
Definition globals.cpp:25
struct table3d8RpmLoad vvtTable
8x8 vvt map
Definition globals.cpp:15
static TIntegral readSerialIntegralTimeout(void)
Reads an integral type, timing out if necessary.
Definition comms.cpp:175
The statuses struct and related defines.
Definition config_pages.h:643
Definition config_pages.h:834
Definition config_pages.h:883
Definition config_pages.h:176
Definition config_pages.h:361
Definition config_pages.h:460
Definition config_pages.h:565
The status struct with current values for all 'live' variables.
Definition statuses.h:25
3D table data types and functions