183#define openInjector1_DIRECT() { *inj1_pin_port |= (inj1_pin_mask); BIT_SET(currentStatus.status1, BIT_STATUS1_INJ1); }
184#define closeInjector1_DIRECT() { *inj1_pin_port &= ~(inj1_pin_mask); BIT_CLEAR(currentStatus.status1, BIT_STATUS1_INJ1); }
185#define openInjector2_DIRECT() { *inj2_pin_port |= (inj2_pin_mask); BIT_SET(currentStatus.status1, BIT_STATUS1_INJ2); }
186#define closeInjector2_DIRECT() { *inj2_pin_port &= ~(inj2_pin_mask); BIT_CLEAR(currentStatus.status1, BIT_STATUS1_INJ2); }
187#define openInjector3_DIRECT() { *inj3_pin_port |= (inj3_pin_mask); BIT_SET(currentStatus.status1, BIT_STATUS1_INJ3); }
188#define closeInjector3_DIRECT() { *inj3_pin_port &= ~(inj3_pin_mask); BIT_CLEAR(currentStatus.status1, BIT_STATUS1_INJ3); }
189#define openInjector4_DIRECT() { *inj4_pin_port |= (inj4_pin_mask); BIT_SET(currentStatus.status1, BIT_STATUS1_INJ4); }
190#define closeInjector4_DIRECT() { *inj4_pin_port &= ~(inj4_pin_mask); BIT_CLEAR(currentStatus.status1, BIT_STATUS1_INJ4); }
191#define openInjector5_DIRECT() { *inj5_pin_port |= (inj5_pin_mask); }
192#define closeInjector5_DIRECT() { *inj5_pin_port &= ~(inj5_pin_mask); }
193#define openInjector6_DIRECT() { *inj6_pin_port |= (inj6_pin_mask); }
194#define closeInjector6_DIRECT() { *inj6_pin_port &= ~(inj6_pin_mask); }
195#define openInjector7_DIRECT() { *inj7_pin_port |= (inj7_pin_mask); }
196#define closeInjector7_DIRECT() { *inj7_pin_port &= ~(inj7_pin_mask); }
197#define openInjector8_DIRECT() { *inj8_pin_port |= (inj8_pin_mask); }
198#define closeInjector8_DIRECT() { *inj8_pin_port &= ~(inj8_pin_mask); }
200#define coil1Low_DIRECT() (*ign1_pin_port &= ~(ign1_pin_mask))
201#define coil1High_DIRECT() (*ign1_pin_port |= (ign1_pin_mask))
202#define coil2Low_DIRECT() (*ign2_pin_port &= ~(ign2_pin_mask))
203#define coil2High_DIRECT() (*ign2_pin_port |= (ign2_pin_mask))
204#define coil3Low_DIRECT() (*ign3_pin_port &= ~(ign3_pin_mask))
205#define coil3High_DIRECT() (*ign3_pin_port |= (ign3_pin_mask))
206#define coil4Low_DIRECT() (*ign4_pin_port &= ~(ign4_pin_mask))
207#define coil4High_DIRECT() (*ign4_pin_port |= (ign4_pin_mask))
208#define coil5Low_DIRECT() (*ign5_pin_port &= ~(ign5_pin_mask))
209#define coil5High_DIRECT() (*ign5_pin_port |= (ign5_pin_mask))
210#define coil6Low_DIRECT() (*ign6_pin_port &= ~(ign6_pin_mask))
211#define coil6High_DIRECT() (*ign6_pin_port |= (ign6_pin_mask))
212#define coil7Low_DIRECT() (*ign7_pin_port &= ~(ign7_pin_mask))
213#define coil7High_DIRECT() (*ign7_pin_port |= (ign7_pin_mask))
214#define coil8Low_DIRECT() (*ign8_pin_port &= ~(ign8_pin_mask))
215#define coil8High_DIRECT() (*ign8_pin_port |= (ign8_pin_mask))
218#define coil1Charging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil1Low_DIRECT() : coil1High_DIRECT())
219#define coil1StopCharging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil1High_DIRECT() : coil1Low_DIRECT())
220#define coil2Charging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil2Low_DIRECT() : coil2High_DIRECT())
221#define coil2StopCharging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil2High_DIRECT() : coil2Low_DIRECT())
222#define coil3Charging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil3Low_DIRECT() : coil3High_DIRECT())
223#define coil3StopCharging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil3High_DIRECT() : coil3Low_DIRECT())
224#define coil4Charging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil4Low_DIRECT() : coil4High_DIRECT())
225#define coil4StopCharging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil4High_DIRECT() : coil4Low_DIRECT())
226#define coil5Charging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil5Low_DIRECT() : coil5High_DIRECT())
227#define coil5StopCharging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil5High_DIRECT() : coil5Low_DIRECT())
228#define coil6Charging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil6Low_DIRECT() : coil6High_DIRECT())
229#define coil6StopCharging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil6High_DIRECT() : coil6Low_DIRECT())
230#define coil7Charging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil7Low_DIRECT() : coil7High_DIRECT())
231#define coil7StopCharging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil7High_DIRECT() : coil7Low_DIRECT())
232#define coil8Charging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil8Low_DIRECT() : coil8High_DIRECT())
233#define coil8StopCharging_DIRECT() (configPage4.IgInv == GOING_HIGH ? coil8High_DIRECT() : coil8Low_DIRECT())
235#define coil1Charging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil1Low_MC33810(); } else { coil1High_MC33810(); }
236#define coil1StopCharging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil1High_MC33810(); } else { coil1Low_MC33810(); }
237#define coil2Charging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil2Low_MC33810(); } else { coil2High_MC33810(); }
238#define coil2StopCharging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil2High_MC33810(); } else { coil2Low_MC33810(); }
239#define coil3Charging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil3Low_MC33810(); } else { coil3High_MC33810(); }
240#define coil3StopCharging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil3High_MC33810(); } else { coil3Low_MC33810(); }
241#define coil4Charging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil4Low_MC33810(); } else { coil4High_MC33810(); }
242#define coil4StopCharging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil4High_MC33810(); } else { coil4Low_MC33810(); }
243#define coil5Charging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil5Low_MC33810(); } else { coil5High_MC33810(); }
244#define coil5StopCharging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil5High_MC33810(); } else { coil5Low_MC33810(); }
245#define coil6Charging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil6Low_MC33810(); } else { coil6High_MC33810(); }
246#define coil6StopCharging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil6High_MC33810(); } else { coil6Low_MC33810(); }
247#define coil7Charging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil7Low_MC33810(); } else { coil7High_MC33810(); }
248#define coil7StopCharging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil7High_MC33810(); } else { coil7Low_MC33810(); }
249#define coil8Charging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil8Low_MC33810(); } else { coil8High_MC33810(); }
250#define coil8StopCharging_MC33810() if(configPage4.IgInv == GOING_HIGH) { coil8High_MC33810(); } else { coil8Low_MC33810(); }
252#define coil1Toggle_DIRECT() (*ign1_pin_port ^= ign1_pin_mask )
253#define coil2Toggle_DIRECT() (*ign2_pin_port ^= ign2_pin_mask )
254#define coil3Toggle_DIRECT() (*ign3_pin_port ^= ign3_pin_mask )
255#define coil4Toggle_DIRECT() (*ign4_pin_port ^= ign4_pin_mask )
256#define coil5Toggle_DIRECT() (*ign5_pin_port ^= ign5_pin_mask )
257#define coil6Toggle_DIRECT() (*ign6_pin_port ^= ign6_pin_mask )
258#define coil7Toggle_DIRECT() (*ign7_pin_port ^= ign7_pin_mask )
259#define coil8Toggle_DIRECT() (*ign8_pin_port ^= ign8_pin_mask )
261#define injector1Toggle_DIRECT() (*inj1_pin_port ^= inj1_pin_mask )
262#define injector2Toggle_DIRECT() (*inj2_pin_port ^= inj2_pin_mask )
263#define injector3Toggle_DIRECT() (*inj3_pin_port ^= inj3_pin_mask )
264#define injector4Toggle_DIRECT() (*inj4_pin_port ^= inj4_pin_mask )
265#define injector5Toggle_DIRECT() (*inj5_pin_port ^= inj5_pin_mask )
266#define injector6Toggle_DIRECT() (*inj6_pin_port ^= inj6_pin_mask )
267#define injector7Toggle_DIRECT() (*inj7_pin_port ^= inj7_pin_mask )
268#define injector8Toggle_DIRECT() (*inj8_pin_port ^= inj8_pin_mask )
static uint32_t rshift(uint32_t a)
Bitwise right shift - generic, unoptimized, case.
Definition bit_shifts.h:349
void closeInjector3(void)
Definition scheduledIO.cpp:17
void endCoil4and8Charge(void)
Definition scheduledIO.cpp:127
void closeInjector2and4(void)
Definition scheduledIO.cpp:52
void closeInjector8(void)
Definition scheduledIO.cpp:27
void beginCoil1and3Charge(void)
Definition scheduledIO.cpp:106
void beginCoil3and6Charge(void)
Definition scheduledIO.cpp:116
void coil8Toggle(void)
Definition scheduledIO.cpp:45
void endCoil1Charge(void)
Definition scheduledIO.cpp:77
void endCoil3Charge(void)
Definition scheduledIO.cpp:83
void beginCoil2and6Charge(void)
Definition scheduledIO.cpp:122
void openInjector4(void)
Definition scheduledIO.cpp:18
void closeInjector2and5(void)
Definition scheduledIO.cpp:63
void endTrailingCoilCharge2(void)
Definition scheduledIO.cpp:103
void openInjector3and7(void)
Definition scheduledIO.cpp:71
void beginCoil2Charge(void)
Definition scheduledIO.cpp:79
void closeInjector4and8(void)
Definition scheduledIO.cpp:74
void injector3Toggle(void)
Definition scheduledIO.cpp:31
void beginCoil5Charge(void)
Definition scheduledIO.cpp:88
void injector6Toggle(void)
Definition scheduledIO.cpp:34
void closeInjector3and6(void)
Definition scheduledIO.cpp:65
void openInjector3and5(void)
Definition scheduledIO.cpp:59
void beginCoil2and4Charge(void)
Definition scheduledIO.cpp:108
void openInjector2and4(void)
Definition scheduledIO.cpp:51
void injector8Toggle(void)
Definition scheduledIO.cpp:36
void endCoil6Charge(void)
Definition scheduledIO.cpp:92
void endCoil7Charge(void)
Definition scheduledIO.cpp:95
void openInjector2and5(void)
Definition scheduledIO.cpp:62
void openInjector5(void)
Definition scheduledIO.cpp:20
void beginTrailingCoilCharge(void)
Definition scheduledIO.cpp:101
void endTrailingCoilCharge1(void)
Definition scheduledIO.cpp:102
void closeInjector3and7(void)
Definition scheduledIO.cpp:72
void openInjector1and5(void)
Definition scheduledIO.cpp:67
void coil5Toggle(void)
Definition scheduledIO.cpp:42
void endCoil1and4Charge(void)
Definition scheduledIO.cpp:113
void beginCoil1and5Charge(void)
Definition scheduledIO.cpp:120
void tachoOutputOn(void)
Definition scheduledIO.cpp:129
void closeInjector3and5(void)
Definition scheduledIO.cpp:60
void coil3Toggle(void)
Definition scheduledIO.cpp:40
void openInjector3(void)
Definition scheduledIO.cpp:16
void closeInjector1(void)
Definition scheduledIO.cpp:13
void endCoil5Charge(void)
Definition scheduledIO.cpp:89
void tachoOutputOff(void)
Definition scheduledIO.cpp:130
void closeInjector1and3(void)
Definition scheduledIO.cpp:50
void endCoil1and3Charge(void)
Definition scheduledIO.cpp:107
void beginCoil3and7Charge(void)
Definition scheduledIO.cpp:124
void beginCoil1and4Charge(void)
Definition scheduledIO.cpp:112
void openInjector8(void)
Definition scheduledIO.cpp:26
void injector1Toggle(void)
Definition scheduledIO.cpp:29
void endCoil2and5Charge(void)
Definition scheduledIO.cpp:115
void closeInjector4(void)
Definition scheduledIO.cpp:19
void closeInjector6(void)
Definition scheduledIO.cpp:23
void coil2Toggle(void)
Definition scheduledIO.cpp:39
void nullCallback(void)
Definition scheduledIO.cpp:132
void injector2Toggle(void)
Definition scheduledIO.cpp:30
void endCoil2and6Charge(void)
Definition scheduledIO.cpp:123
void beginCoil4Charge(void)
Definition scheduledIO.cpp:85
void openInjector6(void)
Definition scheduledIO.cpp:22
void endCoil3and7Charge(void)
Definition scheduledIO.cpp:125
void coil4Toggle(void)
Definition scheduledIO.cpp:41
void endCoil2Charge(void)
Definition scheduledIO.cpp:80
void beginCoil7Charge(void)
Definition scheduledIO.cpp:94
void closeInjector5(void)
Definition scheduledIO.cpp:21
void injector7Toggle(void)
Definition scheduledIO.cpp:35
void openInjector2and3(void)
Definition scheduledIO.cpp:56
void closeInjector2and3(void)
Definition scheduledIO.cpp:57
void(* voidVoidCallback)(void)
Definition scheduledIO.h:272
void openInjector1and3(void)
Definition scheduledIO.cpp:49
void closeInjector1and4(void)
Definition scheduledIO.cpp:55
void beginCoil4and8Charge(void)
Definition scheduledIO.cpp:126
void endCoil1and5Charge(void)
Definition scheduledIO.cpp:121
void beginCoil1Charge(void)
Definition scheduledIO.cpp:76
void closeInjector2(void)
Definition scheduledIO.cpp:15
void beginCoil3Charge(void)
Definition scheduledIO.cpp:82
void openInjector1and4(void)
Definition scheduledIO.cpp:54
void beginCoil6Charge(void)
Definition scheduledIO.cpp:91
void beginCoil2and5Charge(void)
Definition scheduledIO.cpp:114
void closeInjector1and5(void)
Definition scheduledIO.cpp:68
void endCoil3and6Charge(void)
Definition scheduledIO.cpp:117
void openInjector4and8(void)
Definition scheduledIO.cpp:73
void coil7Toggle(void)
Definition scheduledIO.cpp:44
void injector4Toggle(void)
Definition scheduledIO.cpp:32
void openInjector3and6(void)
Definition scheduledIO.cpp:64
void beginCoil8Charge(void)
Definition scheduledIO.cpp:97
void endCoil8Charge(void)
Definition scheduledIO.cpp:98
void closeInjector7(void)
Definition scheduledIO.cpp:25
void openInjector1(void)
Definition scheduledIO.cpp:12
void closeInjector2and6(void)
Definition scheduledIO.cpp:70
void openInjector7(void)
Definition scheduledIO.cpp:24
void endCoil2and4Charge(void)
Definition scheduledIO.cpp:109
void openInjector2and6(void)
Definition scheduledIO.cpp:69
void coil6Toggle(void)
Definition scheduledIO.cpp:43
void coil1Toggle(void)
Definition scheduledIO.cpp:38
void openInjector2(void)
Definition scheduledIO.cpp:14
void endCoil4Charge(void)
Definition scheduledIO.cpp:86
void injector5Toggle(void)
Definition scheduledIO.cpp:33