injectionISRs.c File Reference

Injection ISR substitutions. More...

#include "inc/freeEMS.h"
#include "inc/interrupts.h"
#include "inc/injectionISRs.h"
#include "inc/injectorISR.c"
Include dependency graph for injectionISRs.c:
This graph shows which files directly or indirectly include this file:

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)

Detailed Description

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.

See also:
injectorISR.c
Author:
Fred Cooke

Definition in file injectionISRs.c.


Define Documentation

#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().


Function Documentation

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 }

Generated on Sat Oct 16 21:29:15 2010 for FreeEMS by  doxygen 1.6.3