Injection ISR substitutions. More...
#include "inc/freeEMS.h"
#include "inc/interrupts.h"
#include "inc/injectionISRs.h"
#include "inc/injectorISR.c"
Go to the source code of this file.
Defines | |
#define | INJECTIONISRS_C |
#define | INJECTOR_CHANNEL_NUMBER 0 |
#define | InjectorXISR Injector1ISR |
#define | STAGEDXOFF STAGED1OFF |
#define | STAGEDXON STAGED1ON |
#define | INJECTOR_CHANNEL_NUMBER 1 |
#define | InjectorXISR Injector2ISR |
#define | STAGEDXOFF STAGED2OFF |
#define | STAGEDXON STAGED2ON |
#define | INJECTOR_CHANNEL_NUMBER 2 |
#define | InjectorXISR Injector3ISR |
#define | STAGEDXOFF STAGED3OFF |
#define | STAGEDXON STAGED3ON |
#define | INJECTOR_CHANNEL_NUMBER 3 |
#define | InjectorXISR Injector4ISR |
#define | STAGEDXOFF STAGED4OFF |
#define | STAGEDXON STAGED4ON |
#define | INJECTOR_CHANNEL_NUMBER 4 |
#define | InjectorXISR Injector5ISR |
#define | STAGEDXOFF STAGED5OFF |
#define | STAGEDXON STAGED5ON |
#define | INJECTOR_CHANNEL_NUMBER 5 |
#define | InjectorXISR Injector6ISR |
#define | STAGEDXOFF STAGED6OFF |
#define | STAGEDXON STAGED6ON |
Functions | |
void | StagedOnISR (void) |
void | StagedOffISR (void) |
Injection ISR substitutions.
This file defines the pin specific names for each interrupt and all of it's pin specific variables then imports the actual code from inc/injectorISR.c for each pin such that each one is unique and references a separate set of values specific to it while only maintaining a single copy of the code.
Definition in file injectionISRs.c.
#define INJECTIONISRS_C |
Definition at line 43 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 5 |
Definition at line 146 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 4 |
Definition at line 146 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 3 |
Definition at line 146 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 2 |
Definition at line 146 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 1 |
Definition at line 146 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 0 |
Definition at line 146 of file injectionISRs.c.
Referenced by InjectorXISR().
#define InjectorXISR Injector6ISR |
Definition at line 147 of file injectionISRs.c.
#define InjectorXISR Injector5ISR |
Definition at line 147 of file injectionISRs.c.
#define InjectorXISR Injector4ISR |
Definition at line 147 of file injectionISRs.c.
#define InjectorXISR Injector3ISR |
Definition at line 147 of file injectionISRs.c.
#define InjectorXISR Injector2ISR |
Definition at line 147 of file injectionISRs.c.
#define InjectorXISR Injector1ISR |
Definition at line 147 of file injectionISRs.c.
#define STAGEDXOFF STAGED6OFF |
Definition at line 148 of file injectionISRs.c.
#define STAGEDXOFF STAGED5OFF |
Definition at line 148 of file injectionISRs.c.
#define STAGEDXOFF STAGED4OFF |
Definition at line 148 of file injectionISRs.c.
#define STAGEDXOFF STAGED3OFF |
Definition at line 148 of file injectionISRs.c.
#define STAGEDXOFF STAGED2OFF |
Definition at line 148 of file injectionISRs.c.
#define STAGEDXOFF STAGED1OFF |
Definition at line 148 of file injectionISRs.c.
Referenced by InjectorXISR().
#define STAGEDXON STAGED6ON |
Definition at line 149 of file injectionISRs.c.
#define STAGEDXON STAGED5ON |
Definition at line 149 of file injectionISRs.c.
#define STAGEDXON STAGED4ON |
Definition at line 149 of file injectionISRs.c.
#define STAGEDXON STAGED3ON |
Definition at line 149 of file injectionISRs.c.
#define STAGEDXON STAGED2ON |
Definition at line 149 of file injectionISRs.c.
#define STAGEDXON STAGED1ON |
Definition at line 149 of file injectionISRs.c.
Referenced by InjectorXISR().
void StagedOffISR | ( | void | ) |
Definition at line 72 of file injectionISRs.c.
References PITINTE.
00072 { 00073 // clear the flag 00074 PITINTE |= 0x08; 00075 00076 // bit bang off the correct injector channel 00077 // TODO figure out which channel and switch it 00078 // TODO set the flag for that channel 00079 00080 // if there are other staged channels pending, schedule them and adjust the data 00081 // TODO 00082 00083 /* Clear the PIT3 flag */ 00084 // TODO 00085 }
void StagedOnISR | ( | void | ) |
Definition at line 51 of file injectionISRs.c.
References fixedConfig1::coreSettingsA, fixedConfigs1, PITINTE, and STAGED_END.
00051 { 00052 // clear the flag 00053 PITINTE |= 0x04; 00054 00055 // bit bang on the correct injector channel 00056 // TODO figure out which channel and switch it 00057 // TODO set the flag for that channel 00058 00059 // if there are other staged channels pending, schedule them and adjust the data 00060 // TODO 00061 00062 /* If staged injection needs the end point scheduled, do it now (otherwise it will turn off naturally with the main injector) */ 00063 if(!(fixedConfigs1.coreSettingsA & STAGED_END)){ 00064 // TODO schedule the end of staged injection with PIT 3 00065 } 00066 00067 /* Clear the PIT2 flag */ 00068 // TODO 00069 }