Fix crash on higher IGN channel setups when using trigger fixed cranking timing
This commit is contained in:
parent
53bd588062
commit
6242fa4412
|
@ -598,7 +598,7 @@ void initialiseAll()
|
|||
channel3IgnDegrees = 144;
|
||||
channel4IgnDegrees = 216;
|
||||
channel5IgnDegrees = 288;
|
||||
maxIgnOutputs = 4; //Only 4 actual outputs, so that's all that can be cut
|
||||
maxIgnOutputs = 5; //Only 4 actual outputs, so that's all that can be cut
|
||||
|
||||
if(configPage4.sparkMode == IGN_MODE_SEQUENTIAL)
|
||||
{
|
||||
|
|
|
@ -1012,14 +1012,12 @@ void loop()
|
|||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#if IGN_CHANNELS >= 2
|
||||
tempCrankAngle = crankAngle - channel2IgnDegrees;
|
||||
if( tempCrankAngle < 0) { tempCrankAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
tempStartAngle = ignition2StartAngle - channel2IgnDegrees;
|
||||
if ( tempStartAngle < 0) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
//if (tempStartAngle > tempCrankAngle)
|
||||
if (maxIgnOutputs >= 2)
|
||||
{
|
||||
unsigned long ignition2StartTime = 0;
|
||||
if ( (tempStartAngle <= tempCrankAngle) && (ignitionSchedule2.Status == RUNNING) ) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
|
@ -1043,7 +1041,7 @@ void loop()
|
|||
if( tempCrankAngle < 0) { tempCrankAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
tempStartAngle = ignition3StartAngle - channel3IgnDegrees;
|
||||
if ( tempStartAngle < 0) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
//if (tempStartAngle > tempCrankAngle)
|
||||
if (maxIgnOutputs >= 3)
|
||||
{
|
||||
unsigned long ignition3StartTime = 0;
|
||||
if ( (tempStartAngle <= tempCrankAngle) && (ignitionSchedule3.Status == RUNNING) ) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
|
@ -1067,7 +1065,7 @@ void loop()
|
|||
if( tempCrankAngle < 0) { tempCrankAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
tempStartAngle = ignition4StartAngle - channel4IgnDegrees;
|
||||
if ( tempStartAngle < 0) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
//if (tempStartAngle > tempCrankAngle)
|
||||
if (maxIgnOutputs >= 4)
|
||||
{
|
||||
|
||||
unsigned long ignition4StartTime = 0;
|
||||
|
@ -1092,7 +1090,7 @@ void loop()
|
|||
if( tempCrankAngle < 0) { tempCrankAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
tempStartAngle = ignition5StartAngle - channel5IgnDegrees;
|
||||
if ( tempStartAngle < 0) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
//if (tempStartAngle > tempCrankAngle)
|
||||
if (maxIgnOutputs >= 5)
|
||||
{
|
||||
|
||||
unsigned long ignition5StartTime = 0;
|
||||
|
@ -1117,7 +1115,7 @@ void loop()
|
|||
if( tempCrankAngle < 0) { tempCrankAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
tempStartAngle = ignition6StartAngle - channel6IgnDegrees;
|
||||
if ( tempStartAngle < 0) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
//if (tempStartAngle > tempCrankAngle)
|
||||
if (maxIgnOutputs >= 6)
|
||||
{
|
||||
unsigned long ignition6StartTime = 0;
|
||||
if ( (tempStartAngle <= tempCrankAngle) && (ignitionSchedule6.Status == RUNNING) ) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
|
@ -1141,7 +1139,7 @@ void loop()
|
|||
if( tempCrankAngle < 0) { tempCrankAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
tempStartAngle = ignition7StartAngle - channel7IgnDegrees;
|
||||
if ( tempStartAngle < 0) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
//if (tempStartAngle > tempCrankAngle)
|
||||
if (maxIgnOutputs >= 7)
|
||||
{
|
||||
unsigned long ignition7StartTime = 0;
|
||||
if ( (tempStartAngle <= tempCrankAngle) && (ignitionSchedule7.Status == RUNNING) ) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
|
@ -1165,7 +1163,7 @@ void loop()
|
|||
if( tempCrankAngle < 0) { tempCrankAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
tempStartAngle = ignition8StartAngle - channel8IgnDegrees;
|
||||
if ( tempStartAngle < 0) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
//if (tempStartAngle > tempCrankAngle)
|
||||
if (maxIgnOutputs >= 8)
|
||||
{
|
||||
unsigned long ignition8StartTime = 0;
|
||||
if ( (tempStartAngle <= tempCrankAngle) && (ignitionSchedule8.Status == RUNNING) ) { tempStartAngle += CRANK_ANGLE_MAX_IGN; }
|
||||
|
|
Loading…
Reference in New Issue