1
0
forked from me/IronOS

Compare commits

...

4 Commits

Author SHA1 Message Date
Ben V. Brown
8eadb98496 Enable SWD back, Add Off mode for Sleep 2018-03-30 19:16:38 +11:00
Ben V. Brown
fe5ee91104 Swap breakpoints to resets to try and prevent lockups 2018-03-29 21:36:16 +11:00
Ángel González
762236b485 Spanish translation updated (#253) 2018-03-29 21:16:40 +11:00
Ben V. Brown
c4230d79bf Update Build Script
Fixes #252
2018-03-25 11:33:24 +11:00
11 changed files with 106 additions and 74 deletions

View File

@@ -22,7 +22,7 @@
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="fr.ac6.managedbuild.targetPlatform.gnu.cross.317155453" isAbstract="false" osList="all" superClass="fr.ac6.managedbuild.targetPlatform.gnu.cross"/>
<builder buildPath="${workspace_loc:/TS100}/Debug" id="fr.ac6.managedbuild.builder.gnu.cross.910934658" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="fr.ac6.managedbuild.builder.gnu.cross"/>
<tool id="fr.ac6.managedbuild.tool.gnu.cross.c.compiler.319926124" name="MCU GCC Compiler" superClass="fr.ac6.managedbuild.tool.gnu.cross.c.compiler">
<option id="fr.ac6.managedbuild.gnu.c.compiler.option.optimization.level.1178790692" name="Optimization Level" superClass="fr.ac6.managedbuild.gnu.c.compiler.option.optimization.level" useByScannerDiscovery="false" value="fr.ac6.managedbuild.gnu.c.optimization.level.debug" valueType="enumerated"/>
<option id="fr.ac6.managedbuild.gnu.c.compiler.option.optimization.level.1178790692" name="Optimization Level" superClass="fr.ac6.managedbuild.gnu.c.compiler.option.optimization.level" useByScannerDiscovery="false" value="fr.ac6.managedbuild.gnu.c.optimization.level.size" valueType="enumerated"/>
<option id="gnu.c.compiler.option.debugging.level.1214895662" name="Debug Level" superClass="gnu.c.compiler.option.debugging.level" useByScannerDiscovery="false" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<option id="gnu.c.compiler.option.include.paths.1766485383" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" useByScannerDiscovery="false" valueType="includePath">
<listOptionValue builtIn="false" value="&quot;${ProjDirPath}/inc&quot;"/>
@@ -44,11 +44,12 @@
<listOptionValue builtIn="false" value="USE_RTOS_SYSTICK"/>
</option>
<option id="gnu.c.compiler.option.dialect.std.565083189" name="Language standard" superClass="gnu.c.compiler.option.dialect.std" useByScannerDiscovery="true" value="gnu.c.compiler.dialect.default" valueType="enumerated"/>
<option id="fr.ac6.managedbuild.tool.gnu.cross.c.compiler.fdata.338139343" superClass="fr.ac6.managedbuild.tool.gnu.cross.c.compiler.fdata" useByScannerDiscovery="false" value="true" valueType="boolean"/>
<inputType id="fr.ac6.managedbuild.tool.gnu.cross.c.compiler.input.c.176392389" superClass="fr.ac6.managedbuild.tool.gnu.cross.c.compiler.input.c"/>
<inputType id="fr.ac6.managedbuild.tool.gnu.cross.c.compiler.input.s.893418158" superClass="fr.ac6.managedbuild.tool.gnu.cross.c.compiler.input.s"/>
</tool>
<tool id="fr.ac6.managedbuild.tool.gnu.cross.cpp.compiler.1941847243" name="MCU G++ Compiler" superClass="fr.ac6.managedbuild.tool.gnu.cross.cpp.compiler">
<option id="fr.ac6.managedbuild.gnu.cpp.compiler.option.optimization.level.1283353237" name="Optimization Level" superClass="fr.ac6.managedbuild.gnu.cpp.compiler.option.optimization.level" useByScannerDiscovery="false" value="fr.ac6.managedbuild.gnu.cpp.optimization.level.debug" valueType="enumerated"/>
<option id="fr.ac6.managedbuild.gnu.cpp.compiler.option.optimization.level.1283353237" name="Optimization Level" superClass="fr.ac6.managedbuild.gnu.cpp.compiler.option.optimization.level" useByScannerDiscovery="false" value="fr.ac6.managedbuild.gnu.cpp.optimization.level.size" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.debugging.level.224874042" name="Debug Level" superClass="gnu.cpp.compiler.option.debugging.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.1749257477" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" useByScannerDiscovery="false" valueType="includePath">
<listOptionValue builtIn="false" value="&quot;${ProjDirPath}/inc&quot;"/>
@@ -70,6 +71,7 @@
<listOptionValue builtIn="false" value="USE_RTOS_SYSTICK"/>
</option>
<option id="gnu.cpp.compiler.option.dialect.std.1681974405" name="Language standard" superClass="gnu.cpp.compiler.option.dialect.std" useByScannerDiscovery="true" value="gnu.cpp.compiler.dialect.default" valueType="enumerated"/>
<option id="fr.ac6.managedbuild.tool.gnu.cross.cpp.compiler.fdata.1463726438" superClass="fr.ac6.managedbuild.tool.gnu.cross.cpp.compiler.fdata" useByScannerDiscovery="false" value="true" valueType="boolean"/>
<inputType id="fr.ac6.managedbuild.tool.gnu.cross.cpp.compiler.input.cpp.149685854" superClass="fr.ac6.managedbuild.tool.gnu.cross.cpp.compiler.input.cpp"/>
<inputType id="fr.ac6.managedbuild.tool.gnu.cross.cpp.compiler.input.s.1092052043" superClass="fr.ac6.managedbuild.tool.gnu.cross.cpp.compiler.input.s"/>
</tool>

View File

@@ -23,3 +23,13 @@ make -j16 lang=SE
rm -rf Objects/src
make -j16 lang=TR
rm -rf Objects/src
make -j16 lang=BG
rm -rf Objects/src
make -j16 lang=SK
rm -rf Objects/src
make -j16 lang=HUN
rm -rf Objects/src
make -j16 lang=BR
rm -rf Objects/src
make -j16 lang=LT
rm -rf Objects/src

View File

@@ -39,6 +39,7 @@ extern const char* IdleTipString;
extern const char* IdleSetString;
extern const char* TipDisconnectedString;
extern const char* SolderingAdvancedPowerPrompt;
extern const char* OffString;
extern const char SettingTrueChar;
extern const char SettingFalseChar;

View File

@@ -7,7 +7,7 @@
extern OLED lcd;
extern MMA8652FC accel;
extern uint8_t PCBVersion;
enum ButtonState {
BUTTON_NONE = 0, /* No buttons pressed / < filter time*/
BUTTON_F_SHORT = 1, /* User has pressed the front button*/

View File

@@ -66,7 +66,7 @@ void restoreSettings() {
*/
uint8_t lookupVoltageLevel(uint8_t level) {
if (level == 0)
return 100; //10V since iron does not function effectively below this
return 90; //9V since iron does not function effectively below this
else
return (level * 33) + (33 * 2);
}

View File

@@ -170,7 +170,7 @@ static void MX_IWDG_Init(void) {
hiwdg.Instance = IWDG;
hiwdg.Init.Prescaler = IWDG_PRESCALER_256;
hiwdg.Init.Reload = 50;
hiwdg.Init.Reload = 100;
HAL_IWDG_Init(&hiwdg);
}

View File

@@ -93,6 +93,7 @@ const char* IdleTipString = "Tip:"; // IdleTipString+IdleSet
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Power: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'R';
const char SettingLeftChar = 'L';
@@ -176,6 +177,7 @@ const char* IdleTipString = "Връх:"; // IdleTipString+
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "ВРЪХ ЛОША ВРЪЗКА"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Захранване: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'R';
const char SettingLeftChar = 'L';
@@ -258,6 +260,7 @@ const char* IdleTipString = "Tip:"; // IdleTipString+IdleSe
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Power: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
/*
* #TODO change support for multibyte constants here
@@ -316,21 +319,21 @@ const char* SettingsDescriptions[17] = {
/* Shutdown timeout */ "Tiempo hasta apagado. <Minutos>",
/* Motion sensitivity level */ "Sensibilidad del movimiento. <0=Apagado 1=El menos sensible 9=El más sensible>",
/* Temperature in F and C */ "Unidad de temperatura.",
/* Advanced idle display mode enabled */ "Display detailed information in a smaller font on the idle screen.",
/* Advanced idle display mode enabled */ "Mostrar información detallada con fuente de menor tamaño en la pantalla de reposo.",
/* Display rotation mode */ "Orientación de la pantalla <A=Automático I=Mano izquierda D=Mano derecha>",
/* Boost enabled */ "Activar el botón \"Boost\" en modo soldadura.",
/* Boost temperature */ "Temperatura en modo \"Boost\". <C>",
/* Automatic start mode */ "Iniciar modo soldadura en el encendido. <V=Sí S=Modo reposo F=No>",
/* Cooldown blink */ "Parpadea la temperatura en el enfriamiento si la punta sigue caliente.",
/* Temperature calibration enter menu */ "Calibrate tip offset.",
/* Settings reset command */ "Reset all settings",
/* Calibrate input voltage */ "VIN Calibration. Buttons adjust, long press to exit",
/* Advanced soldering screen enabled */ "Display detailed information while soldering",
/* Description Scroll Speed */ "Speed this text scrolls past at",
/* Temperature calibration enter menu */ "Calibrar desviación térmica de la punta.",
/* Settings reset command */ "Volver a estado de fábrica.",
/* Calibrate input voltage */ "Calibración VIN (Voltaje de entrada). Ajuste con ambos botones, pulsación larga para salir.",
/* Advanced soldering screen enabled */ "Mostrar información detallada mientras suelda.",
/* Description Scroll Speed */ "Velocidad de desplazamiento del texto.",
};
const char* SettingsCalibrationWarning = "Please ensure the tip is at room temperature before continuing!";
const char* SettingsResetWarning = "Are you sure to reset settings to default values?";
const char* SettingsCalibrationWarning = "Por favor, ¡asegúrese que la punta esté a temperatura ambiente antes de proceder!";
const char* SettingsResetWarning = "¿Está seguro de volver a estado de fábrica?";
const char* UVLOWarningString = "DC LOW"; // <=8 chars
const char* UndervoltageString = "Undervoltage"; // <=16 chars
const char* InputVoltageString = "Input V: "; // <=11 chars, preferably end with a space
@@ -345,13 +348,14 @@ const char* IdleTipString = "Tip:"; // IdleTipString+IdleSe
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Power: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'R';
const char SettingLeftChar = 'L';
const char SettingRightChar = 'D'; // D is "Derecha" = Right
const char SettingLeftChar = 'I'; // I is "Izquierda" = Left
const char SettingAutoChar = 'A';
const char SettingFastChar = 'F';
const char SettingSlowChar = 'S';
const char SettingFastChar = 'R'; // R is "Rápido" = Fast
const char SettingSlowChar = 'L'; // L is "Lento" = Slow
const enum ShortNameType SettingsShortNameType = SHORT_NAME_SINGLE_LINE;
const char* SettingsShortNames[17][2] = {
@@ -374,15 +378,15 @@ const char* SettingsShortNames[17][2] = {
/* (<= 6) Message Scroll Speed */ {"DESCSP"},
};
const char* SettingsMenuEntries[4] = {
/*Soldering Menu*/"Soldering\nSettings",
/* Power Saving Menu*/"Sleep\nModes",
/* UI Menu*/"User\nInterface",
/* Advanced Menu*/"Advanced\nOptions", };
/*Soldering Menu*/"Opciones de\nsoldadura",
/* Power Saving Menu*/"Modos de\nreposo",
/* UI Menu*/"Interfaz de\nusuario",
/* Advanced Menu*/"Opciones\navanzadas", };
const char* SettingsMenuEntriesDescriptions[4] ={
"Soldering settings",
"Power Saving Settings",
"User Interface settings",
"Advanced options"
"Opciones de soldadura",
"Opciones de ahorro energético",
"Opciones de interfaz de usuario",
"Opciones avanzadas"
};
#endif
@@ -425,6 +429,7 @@ const char* IdleTipString = "Tip:"; // IdleTipString+IdleSe
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Power: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'R';
const char SettingLeftChar = 'L';
@@ -506,6 +511,7 @@ const char* IdleTipString = "Punta:"; // IdleTipString+IdleSetS
const char* IdleSetString = "/"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "PUNTA ASSENTE"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Potenza:"; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'D';
const char SettingLeftChar = 'S';
@@ -587,6 +593,7 @@ const char* IdleTipString = "PANNE:"; // IdleTipString+IdleS
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "PANNE DEBRANCH"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Puissance: "; // <= 12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'D';
const char SettingLeftChar = 'G';
@@ -668,6 +675,7 @@ const char* IdleTipString = "Ist:"; // IdleTipString+IdleSe
const char* IdleSetString = " Soll:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "Spitze fehlt"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Leistung: "; // <= 12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'R';
const char SettingLeftChar = 'L';
@@ -748,6 +756,7 @@ const char* IdleTipString = "Tip:"; // IdleTipString+IdleSe
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Power: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'R';
const char SettingLeftChar = 'L';
@@ -828,6 +837,7 @@ const char* IdleTipString = "Tip:"; // IdleTipString+IdleSet
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Power: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'R';
const char SettingLeftChar = 'L';
@@ -908,6 +918,7 @@ const char* IdleTipString = "Vrh: "; // IdleTipString+IdleSet
const char* IdleSetString = " / "; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "VRH NIJE SPOJEN!"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Snaga: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'D';
const char SettingLeftChar = 'L';
@@ -986,6 +997,7 @@ const char* IdleTipString = "Hrot:"; // IdleTipString+IdleSet
const char* IdleSetString = " Cíl:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "HROT NEPŘIPOJEN"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Ohřev: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'P';
const char SettingLeftChar = 'L';
@@ -1070,6 +1082,7 @@ const char* IdleTipString = "Tip:"; // IdleTipString+IdleSet
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Power: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'R';
const char SettingLeftChar = 'L';
@@ -1150,6 +1163,7 @@ const char* IdleTipString = "Tip:"; // IdleTipString+IdleSet
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Power: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'H';
const char SettingLeftChar = 'V';
@@ -1230,6 +1244,7 @@ const char* IdleTipString = "Tip:"; // IdleTipString+IdleSet
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Power: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'P';
const char SettingLeftChar = 'L';
@@ -1310,6 +1325,7 @@ const char* IdleTipString = "Ponta:"; // IdleTipString+IdleSetSt
const char* IdleSetString = " Aj:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "SEM PONTA"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Power: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'D';
const char SettingLeftChar = 'C';
@@ -1390,6 +1406,7 @@ const char* IdleTipString = "Ant:"; // IdleTipString+Idle
const char* IdleSetString = " Nust:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
const char* TipDisconnectedString = "ANTGAL ATJUNGTAS"; // <=16 chars
const char* SolderingAdvancedPowerPrompt = "Maitinimas: "; // <=12 chars
const char* OffString ="Off";// 3 chars max
const char SettingRightChar = 'D';
const char SettingLeftChar = 'K';

View File

@@ -228,15 +228,11 @@ static int userConfirmation(const char* message) {
int16_t lastOffset = -1;
bool lcdRefresh = true;
for (;;) {
int16_t messageOffset =
((xTaskGetTickCount() - messageStart)
/ (systemSettings.descriptionScrollSpeed == 1 ?
1 : 2));
messageOffset %= messageWidth; //Roll around at the end
int16_t messageOffset = ((xTaskGetTickCount() - messageStart)
/ (systemSettings.descriptionScrollSpeed == 1 ? 1 : 2));
messageOffset %= messageWidth; //Roll around at the end
if (lastOffset != messageOffset) {
lcd.clearScreen();
@@ -302,15 +298,18 @@ static void settings_displaySleepTemp(void) {
static void settings_setSleepTime(void) {
systemSettings.SleepTime++; // Go up 1 minute at a time
if (systemSettings.SleepTime >= 16) {
systemSettings.SleepTime = 1; // can't set time over 10 mins
systemSettings.SleepTime = 0; // can't set time over 10 mins
}
// Remember that ^ is the time of no movement
if (PCBVersion == 3)
systemSettings.SleepTime = 0; //Disable sleep on no accel
}
static void settings_displaySleepTime(void) {
printShortDescription(2, 5);
if (systemSettings.SleepTime < 6) {
if (systemSettings.SleepTime == 0) {
lcd.print(OffString);
} else if (systemSettings.SleepTime < 6) {
lcd.printNumber(systemSettings.SleepTime * 10, 2);
lcd.drawChar('S');
} else {
@@ -324,11 +323,18 @@ static void settings_setShutdownTime(void) {
if (systemSettings.ShutdownTime > 60) {
systemSettings.ShutdownTime = 0; // wrap to off
}
if (PCBVersion == 3)
systemSettings.ShutdownTime = 0; //Disable shutdown on no accel
}
static void settings_displayShutdownTime(void) {
printShortDescription(3, 6);
lcd.printNumber(systemSettings.ShutdownTime, 2);
printShortDescription(3, 5);
if (systemSettings.ShutdownTime == 0) {
lcd.print(OffString);
} else {
lcd.printNumber(systemSettings.ShutdownTime, 2);
lcd.drawChar('M');
}
}
static void settings_setTempF(void) {
@@ -388,18 +394,18 @@ static void settings_setDisplayRotation(void) {
systemSettings.OrientationMode++;
systemSettings.OrientationMode = systemSettings.OrientationMode % 3;
switch (systemSettings.OrientationMode) {
case 0:
lcd.setRotation(false);
break;
case 1:
lcd.setRotation(true);
break;
case 2:
//do nothing on auto
break;
default:
break;
}
case 0:
lcd.setRotation(false);
break;
case 1:
lcd.setRotation(true);
break;
case 2:
//do nothing on auto
break;
default:
break;
}
}
static void settings_displayDisplayRotation(void) {
@@ -719,7 +725,8 @@ void gui_Menu(const menuitem* menu) {
if ((PRESS_ACCEL_INTERVAL_MAX - autoRepeatAcceleration)
< PRESS_ACCEL_INTERVAL_MIN) {
autoRepeatAcceleration = PRESS_ACCEL_INTERVAL_MAX - PRESS_ACCEL_INTERVAL_MIN;
autoRepeatAcceleration = PRESS_ACCEL_INTERVAL_MAX
- PRESS_ACCEL_INTERVAL_MIN;
}
if (lcdRefresh) {

View File

@@ -47,6 +47,7 @@ int main(void) {
lcd.setFont(0); // default to bigger font
//Testing for new weird board version
uint8_t buffer[1];
HAL_IWDG_Refresh(&hiwdg);
if (HAL_I2C_Mem_Read(&hi2c1, 29 << 1, 0x0F, I2C_MEMADD_SIZE_8BIT, buffer, 1,
1000) == HAL_OK) {
PCBVersion = 1;
@@ -59,6 +60,8 @@ int main(void) {
accel2.initalize(); //startup the accelerometer
} else {
PCBVersion = 3;
systemSettings.SleepTime=0;
systemSettings.ShutdownTime=0;//No accel -> disable sleep
}
HAL_IWDG_Refresh(&hiwdg);
restoreSettings(); // load the settings from flash
@@ -760,14 +763,14 @@ void startGUITask(void const *argument) {
if (tipTemp < 50) {
if (systemSettings.sensitivity) {
if ((xTaskGetTickCount() - lastMovementTime) > 6000
&& (xTaskGetTickCount() - lastButtonTime) > 6000)
&& (xTaskGetTickCount() - lastButtonTime) > 6000) {
lcd.displayOnOff(false); // turn lcd off when no movement
else
} else
lcd.displayOnOff(true); // turn lcd on
} else
lcd.displayOnOff(true); // turn lcd on
lcd.displayOnOff(true); // turn lcd on - disabled motion sleep
} else
lcd.displayOnOff(true); // turn lcd on
lcd.displayOnOff(true); // turn lcd on when temp > 50C
if (tipTemp > 600)
tipTemp = 0;
@@ -841,9 +844,9 @@ void startPIDTask(void const *argument) {
int32_t integralCount = 0;
int32_t derivativeLastValue = 0;
int32_t kp, ki, kd;
kp = 30;
kp = 40;
ki = 60;
kd = 20;
kd = 30;
// REMEBER ^^^^ These constants are backwards
// They act as dividers, so to 'increase' a P term, you make the number
// smaller.
@@ -879,9 +882,9 @@ void startPIDTask(void const *argument) {
output = 0;
}
/*if (currentlyActiveTemperatureTarget < rawTemp) {
output = 0;
}*/
if (currentlyActiveTemperatureTarget < rawTemp) {
output = 0;
}
setTipPWM(output);
derivativeLastValue = rawTemp; // store for next loop

View File

@@ -28,8 +28,8 @@ void HAL_MspInit(void) {
/**NOJTAG: JTAG-DP Disabled and SW-DP Enabled
*/
// __HAL_AFIO_REMAP_SWJ_NOJTAG()
__HAL_AFIO_REMAP_SWJ_DISABLE(); /*Disable swd for debug io use*/
__HAL_AFIO_REMAP_SWJ_NOJTAG();
// __HAL_AFIO_REMAP_SWJ_DISABLE(); /*Disable swd for debug io use*/
}

View File

@@ -12,35 +12,27 @@ extern TIM_HandleTypeDef htim1; //used for the systick
/******************************************************************************/
void NMI_Handler(void) {
NVIC_SystemReset();
}
//We have the assembly for a breakpoint trigger here to halt the system when a debugger is connected
// Hardfault handler, often a screwup in the code
void HardFault_Handler(void) {
while (1) {
asm("bkpt");
}
NVIC_SystemReset();
}
// Memory management unit had an error
void MemManage_Handler(void) {
while (1) {
asm("bkpt");
}
NVIC_SystemReset();
}
// Prefetcher or busfault occured
void BusFault_Handler(void) {
while (1) {
asm("bkpt");
}
NVIC_SystemReset();
}
void UsageFault_Handler(void) {
while (1) {
asm("bkpt");
}
NVIC_SystemReset();
}
void DebugMon_Handler(void) {