Fixed number of stages bug.

git-svn-id: https://svn.vbchaos.nl/svn/hsb/trunk@282 05563f52-14a8-4384-a975-3d1654cca0fa
This commit is contained in:
mmi
2017-11-17 13:59:48 +00:00
parent 5e29b31c8c
commit 553ebd04c1
3 changed files with 51 additions and 34 deletions

View File

@@ -55,38 +55,49 @@ ErrorStatus RepairPreset_generateDefaultPreset(struct RepairPreset* self, unsign
{
ErrorStatus returnValue = SUCCESS;
int loopCounter;
if (presetNumber <= REPAIR_PRESET_MAX_ONE_STAGE_PRESETS)
{
self->numberOfStages = 1;
self->numberOfStages = 1;
}
else
{
// TELSA PCBA does not need multiple stages
if (PCBA_getInstance()->pcba == PCBA_Tesla)
{
self->numberOfStages = 1;
self->numberOfStages = 1;
}
else
{
self->numberOfStages = 2;
self->numberOfStages = REPAIR_PRESET_MAX_STAGES;
}
}
self->presetNumber = presetNumber;
self->preset[0].softstartDuration = 1800;
self->preset[0].duration = 28800;
self->presetNumber = presetNumber;
self->preset[0].softstartDuration = 1800;
self->preset[0].duration = 28800;
if (PCBA_getInstance()->pcba == PCBA_CathodeMCP)
{
self->preset[0].voltage = -1000;
self->preset[1].voltage = -1000;
for (loopCounter = 0; loopCounter < self->numberOfStages; loopCounter++)
{
self->preset[loopCounter].softstartDuration = 1800;
self->preset[loopCounter].duration = 28800;
self->preset[loopCounter].voltage = -1000;
}
}
else
{
self->preset[0].voltage = 1000;
self->preset[1].voltage = 1000;
for (loopCounter = 0; loopCounter < self->numberOfStages; loopCounter++)
{
self->preset[loopCounter].softstartDuration = 1800;
self->preset[loopCounter].duration = 28800;
self->preset[0].voltage = 1000;
}
}
// Generate dummy presets to fill the memory
self->preset[1].softstartDuration = 1800;
self->preset[1].duration = 28800;
return returnValue;
}