#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) |
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 42 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 5 |
Definition at line 145 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 4 |
Definition at line 145 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 3 |
Definition at line 145 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 2 |
Definition at line 145 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 1 |
Definition at line 145 of file injectionISRs.c.
#define INJECTOR_CHANNEL_NUMBER 0 |
#define InjectorXISR Injector6ISR |
Definition at line 146 of file injectionISRs.c.
#define InjectorXISR Injector5ISR |
Definition at line 146 of file injectionISRs.c.
#define InjectorXISR Injector4ISR |
Definition at line 146 of file injectionISRs.c.
#define InjectorXISR Injector3ISR |
Definition at line 146 of file injectionISRs.c.
#define InjectorXISR Injector2ISR |
Definition at line 146 of file injectionISRs.c.
#define InjectorXISR Injector1ISR |
Definition at line 146 of file injectionISRs.c.
#define STAGEDXOFF STAGED6OFF |
Definition at line 147 of file injectionISRs.c.
#define STAGEDXOFF STAGED5OFF |
Definition at line 147 of file injectionISRs.c.
#define STAGEDXOFF STAGED4OFF |
Definition at line 147 of file injectionISRs.c.
#define STAGEDXOFF STAGED3OFF |
Definition at line 147 of file injectionISRs.c.
#define STAGEDXOFF STAGED2OFF |
Definition at line 147 of file injectionISRs.c.
#define STAGEDXOFF STAGED1OFF |
#define STAGEDXON STAGED6ON |
Definition at line 148 of file injectionISRs.c.
#define STAGEDXON STAGED5ON |
Definition at line 148 of file injectionISRs.c.
#define STAGEDXON STAGED4ON |
Definition at line 148 of file injectionISRs.c.
#define STAGEDXON STAGED3ON |
Definition at line 148 of file injectionISRs.c.
#define STAGEDXON STAGED2ON |
Definition at line 148 of file injectionISRs.c.
#define STAGEDXON STAGED1ON |
void StagedOffISR | ( | void | ) |
Definition at line 71 of file injectionISRs.c.
References PITINTE.
00071 { 00072 // clear the flag 00073 PITINTE |= 0x08; 00074 00075 // bit bang off the correct injector channel 00076 // TODO figure out which channel and switch it 00077 // TODO set the flag for that channel 00078 00079 // if there are other staged channels pending, schedule them and adjust the data 00080 // TODO 00081 00082 /* Clear the PIT3 flag */ 00083 // TODO 00084 }
void StagedOnISR | ( | void | ) |
Definition at line 50 of file injectionISRs.c.
References fixedConfig1::coreSettingsA, fixedConfigs1, PITINTE, and STAGED_END.
00050 { 00051 // clear the flag 00052 PITINTE |= 0x04; 00053 00054 // bit bang on the correct injector channel 00055 // TODO figure out which channel and switch it 00056 // TODO set the flag for that channel 00057 00058 // if there are other staged channels pending, schedule them and adjust the data 00059 // TODO 00060 00061 /* If staged injection needs the end point scheduled, do it now (otherwise it will turn off naturally with the main injector) */ 00062 if(!(fixedConfigs1.coreSettingsA & STAGED_END)){ 00063 // TODO schedule the end of staged injection with PIT 3 00064 } 00065 00066 /* Clear the PIT2 flag */ 00067 // TODO 00068 }