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:

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 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

Definition at line 145 of file injectionISRs.c.

Referenced by InjectorXISR().

#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

Definition at line 147 of file injectionISRs.c.

Referenced by InjectorXISR().

#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

Definition at line 148 of file injectionISRs.c.

Referenced by InjectorXISR().


Function Documentation

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 }


Generated on Mon Jan 26 00:17:05 2009 for FreeEMS by  doxygen 1.5.8