Fixed some priorities for IRQs for stability

Fixed ERROR/ERREUR messages position

git-svn-id: https://svn.vbchaos.nl/svn/hsb/trunk@403 05563f52-14a8-4384-a975-3d1654cca0fa
This commit is contained in:
mmi
2017-12-15 13:03:39 +00:00
parent 85edb9131e
commit f3e4c109d1
4 changed files with 39 additions and 37 deletions

View File

@@ -118,29 +118,29 @@ ErrorStatus hsb_enableSafetyWithError(void)
CoverSolenoid_lock();
}
if (returnValue == SUCCESS)
{
// Check for INTERLOCK CLOSE
if (Interlock_isClosed(interlock))
{
// Enable Interrupt for interlock switch
Interlock_setEXTI(interlock, ENABLE);
}
else
{
Error_postError(INTERLOCK_COMMON_FAIL);
returnValue = ERROR;
}
}
if (returnValue == SUCCESS)
{
// In case of a TESLA repair, release the teslaGunSafety
if (PCBA_getInstance()->pcba == PCBA_Tesla)
{
TeslaGunSafety_release();
}
}
// if (returnValue == SUCCESS)
// {
// // Check for INTERLOCK CLOSE
// if (Interlock_isClosed(interlock))
// {
// // Enable Interrupt for interlock switch
// Interlock_setEXTI(interlock, ENABLE);
// }
// else
// {
// Error_postError(INTERLOCK_COMMON_FAIL);
// returnValue = ERROR;
// }
// }
//
// if (returnValue == SUCCESS)
// {
// // In case of a TESLA repair, release the teslaGunSafety
// if (PCBA_getInstance()->pcba == PCBA_Tesla)
// {
// TeslaGunSafety_release();
// }
// }
if (returnValue == SUCCESS)
{
@@ -221,10 +221,10 @@ ErrorStatus hsb_disableSafety(void)
snprintf(buffer, sizeof(buffer) / sizeof(buffer[0]), "POWER DOWN");
Display_write(mainDisplay, buffer, 4, 6);
while (HighVoltageDetection_isVoltagePresent())
{
vTaskDelay(100);
}
// while (HighVoltageDetection_isVoltagePresent())
// {
// vTaskDelay(100);
// }
Display_clearLine(mainDisplay, 3);

View File

@@ -334,7 +334,7 @@ static void repairMenu_printRepair(struct MenuCore* self)
if (repairProcess_isProcessRunning(repairProcess))
{
int loopCounter = 0;
char buffer[20];
char buffer[self->display->displayDevice->parameters.numberOfColumns + 1];
if (xSemaphoreTake(repairMenu->repairScreenUpdateSemaphore, 0) != pdTRUE)
{
// Taking semaphore failed - no update on the screen
@@ -373,7 +373,8 @@ static void repairMenu_printRepair(struct MenuCore* self)
}
else
{
snprintf(buffer, sizeof(buffer) / sizeof(buffer[0]), "%s ", MenuText_REPAIR_SCREEN[languageIndex][3]);
snprintf(buffer, sizeof(buffer) / sizeof(buffer[0]), "%*.*s", self->display->displayDevice->parameters.numberOfColumns / REPAIRPROCESS_NUMBER_OF_ROWS, self->display->displayDevice->parameters.numberOfColumns / REPAIRPROCESS_NUMBER_OF_ROWS, MenuText_REPAIR_SCREEN[languageIndex][3]);
Display_write(self->display, buffer, 4, (loopCounter + (loopCounter * (self->display->displayDevice->parameters.numberOfColumns / REPAIRPROCESS_NUMBER_OF_ROWS)) + (self->display->displayDevice->parameters.numberOfColumns / REPAIRPROCESS_NUMBER_OF_ROWS) / strlen(buffer)));
}
}
@@ -1045,6 +1046,7 @@ static void repairMenu_abortRepairProcessAndGotoMainMenu(struct MenuCore* self)
{
repairMenu_stopRepairProcess(self);
MenuCore_changeState(self, RM_MAINMENU);
PowerLossDetector_clearBusyFlag();
}