mirror of
https://github.com/Ralim/IronOS.git
synced 2025-02-26 07:53:55 +00:00
Convert over C constants to python aware strings for translation
This commit is contained in:
@@ -78,6 +78,43 @@ def escapeC(s):
|
||||
return s.replace("\"", "\\\"")
|
||||
|
||||
|
||||
def getConstants():
|
||||
# Extra constants that are used in the firmware that are shared across all languages
|
||||
consants =[]
|
||||
consants.append(('SymbolPlus','+'))
|
||||
consants.append(('SymbolMinus','-'))
|
||||
consants.append(('SymbolSpace',' '))
|
||||
consants.append(('SymbolDot','.'))
|
||||
consants.append(('SymbolDegC','C'))
|
||||
consants.append(('SymbolDegF','F'))
|
||||
consants.append(('SymbolMinutes','M'))
|
||||
consants.append(('SymbolSeconds','S'))
|
||||
consants.append(('SymbolWatts','W'))
|
||||
consants.append(('SymbolVolts','V'))
|
||||
consants.append(('SymbolDC','DC'))
|
||||
consants.append(('SymbolCellCount','S'))
|
||||
return consants
|
||||
def getTipModelEnumTS80():
|
||||
constants = []
|
||||
constants.append("B02")
|
||||
constants.append("D25")
|
||||
constants.append("TS80") # end of miniware
|
||||
constants.append("User") # User
|
||||
return constants
|
||||
|
||||
def getTipModelEnumTS100():
|
||||
constants = []
|
||||
constants.append("B02")
|
||||
constants.append("D24")
|
||||
constants.append("BC2")
|
||||
constants.append(" C1")
|
||||
constants.append("TS100")# end of miniware
|
||||
constants.append("BC2")
|
||||
constants.append("Hakko")# end of hakko
|
||||
constants.append("User")
|
||||
return constants
|
||||
|
||||
|
||||
def getLetterCounts(defs, lang):
|
||||
textList = []
|
||||
#iterate over all strings
|
||||
@@ -116,6 +153,11 @@ def getLetterCounts(defs, lang):
|
||||
for mod in defs['menuGroups']:
|
||||
eid = mod['id']
|
||||
textList.append(obj[eid]['desc'])
|
||||
constants = getConstants()
|
||||
for x in constants:
|
||||
textList.append(x[1])
|
||||
textList.extend(getTipModelEnumTS100())
|
||||
textList.extend(getTipModelEnumTS80())
|
||||
|
||||
# collapse all strings down into the composite letters and store totals for these
|
||||
|
||||
@@ -135,17 +177,19 @@ def getLetterCounts(defs, lang):
|
||||
return symbolCounts
|
||||
|
||||
|
||||
|
||||
def getFontMapAndTable(textList):
|
||||
# the text list is sorted
|
||||
# allocate out these in their order as number codes
|
||||
symbolMap = {}
|
||||
index = 1
|
||||
symbolMap['\n'] = '\\x01'
|
||||
index = 2 # start at 2, as 0= null terminator,1 = new line
|
||||
forcedFirstSymbols = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
|
||||
#enforce numbers are first
|
||||
for i in range(10):
|
||||
s = "%0.1d" % i
|
||||
symbolMap[s] = "\\x%0.2X" % index
|
||||
for sym in forcedFirstSymbols:
|
||||
symbolMap[sym] = "\\x%0.2X" % index
|
||||
index = index + 1
|
||||
if len(textList) > 235:
|
||||
if len(textList) > (253 - len(forcedFirstSymbols)):
|
||||
print('Error, too many used symbols for this version')
|
||||
exit(1)
|
||||
print('Generating fonts for {} symbols'.format(len(textList)))
|
||||
@@ -159,30 +203,30 @@ def getFontMapAndTable(textList):
|
||||
fontSmallTableStrings = []
|
||||
fontTable = fontTables.getFontMap()
|
||||
fontSmallTable = fontTables.getSmallFontMap()
|
||||
for i in range(10):
|
||||
sym = "%0.1d" % i
|
||||
for sym in forcedFirstSymbols:
|
||||
if sym not in fontTable:
|
||||
print('Missing Large font element for {}'.format(sym))
|
||||
exit(1)
|
||||
fontLine = fontTable[sym]
|
||||
fontTableStrings.append(fontLine + "// -> {}".format(sym))
|
||||
fontTableStrings.append(fontLine + "//{} -> {}".format(symbolMap[sym],sym))
|
||||
if sym not in fontSmallTable:
|
||||
print('Missing Small font element for {}'.format(sym))
|
||||
exit(1)
|
||||
fontLine = fontSmallTable[sym]
|
||||
fontSmallTableStrings.append(fontLine + "// -> {}".format(sym))
|
||||
fontSmallTableStrings.append(fontLine + "//{} -> {}".format(symbolMap[sym],sym))
|
||||
|
||||
for sym in textList:
|
||||
if sym not in fontTable:
|
||||
print('Missing Large font element for {}'.format(sym))
|
||||
exit(1)
|
||||
fontLine = fontTable[sym]
|
||||
fontTableStrings.append(fontLine + "// -> {}".format(sym))
|
||||
if sym not in fontSmallTable:
|
||||
print('Missing Small font element for {}'.format(sym))
|
||||
exit(1)
|
||||
fontLine = fontSmallTable[sym]
|
||||
fontSmallTableStrings.append(fontLine + "// -> {}".format(sym))
|
||||
if sym not in forcedFirstSymbols:
|
||||
fontLine = fontTable[sym]
|
||||
fontTableStrings.append(fontLine + "//{} -> {}".format(symbolMap[sym],sym))
|
||||
if sym not in fontSmallTable:
|
||||
print('Missing Small font element for {}'.format(sym))
|
||||
exit(1)
|
||||
fontLine = fontSmallTable[sym]
|
||||
fontSmallTableStrings.append(fontLine + "//{} -> {}".format(symbolMap[sym],sym))
|
||||
outputTable = "const uint8_t USER_FONT_12[] = {" + to_unicode("\n")
|
||||
for line in fontTableStrings:
|
||||
# join font table int one large string
|
||||
@@ -200,7 +244,7 @@ def getFontMapAndTable(textList):
|
||||
def convStr(symbolConversionTable, text):
|
||||
# convert all of the symbols from the string into escapes for their content
|
||||
outputString = ""
|
||||
for c in text.replace('\\n', '').replace('\\r', ''):
|
||||
for c in text.replace('\\r', '').replace('\\n','\n'):
|
||||
if c not in symbolConversionTable:
|
||||
print('Missing font definition for {}'.format(c))
|
||||
else:
|
||||
@@ -276,6 +320,27 @@ def writeLanguage(languageCode, defs, f):
|
||||
|
||||
f.write(to_unicode("\n"))
|
||||
|
||||
# Write out firmware constant options
|
||||
constants = getConstants()
|
||||
for x in constants:
|
||||
f.write(
|
||||
to_unicode("const char* " + x[0] + " = \"" +
|
||||
convStr(symbolConversionTable, x[1]) + "\";\n"))
|
||||
|
||||
f.write(to_unicode("\n"))
|
||||
# Write out tip model strings
|
||||
|
||||
f.write(to_unicode("const char* TipModelStrings[] = {\n"))
|
||||
f.write(to_unicode("#ifdef MODEL_TS100\n"))
|
||||
for c in getTipModelEnumTS100():
|
||||
f.write(to_unicode("\t \"" + convStr(symbolConversionTable, c) + "\",\n"))
|
||||
f.write(to_unicode("#else\n"))
|
||||
for c in getTipModelEnumTS80():
|
||||
f.write(to_unicode("\t \"" + convStr(symbolConversionTable, c) + "\",\n"))
|
||||
f.write(to_unicode("#endif\n"))
|
||||
|
||||
f.write(to_unicode("};\n\n"))
|
||||
|
||||
# ----- Menu Options
|
||||
|
||||
# Menu type
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "ВРЪХ ЛОША ВРЪЗКА",
|
||||
"SolderingAdvancedPowerPrompt": "Захранване: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Cíl:",
|
||||
"TipDisconnectedString": "HROT NEPŘIPOJEN",
|
||||
"SolderingAdvancedPowerPrompt": "Ohřev: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "P",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "TIP DISCONNECTED",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "H",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Soll:",
|
||||
"TipDisconnectedString": "Spitze fehlt",
|
||||
"SolderingAdvancedPowerPrompt": "Leistung: ",
|
||||
"OffString": "Aus"
|
||||
"OffString": "Aus",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "TIP DISCONNECTED",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Aj:",
|
||||
"TipDisconnectedString": "SIN PUNTA",
|
||||
"SolderingAdvancedPowerPrompt": "POTENCIA: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "D",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Asetus:",
|
||||
"TipDisconnectedString": "KÄRKI ON IRTI",
|
||||
"SolderingAdvancedPowerPrompt": "Teho: ",
|
||||
"OffString": "OFF"
|
||||
"OffString": "OFF",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "O",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "PANNE DÉBRANCHÉE",
|
||||
"SolderingAdvancedPowerPrompt": "Puissance: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "D",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " / ",
|
||||
"TipDisconnectedString": "VRH NIJE SPOJEN!",
|
||||
"SolderingAdvancedPowerPrompt": "Snaga: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "D",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Cél:",
|
||||
"TipDisconnectedString": "HEGY LEVÉVE",
|
||||
"SolderingAdvancedPowerPrompt": "Telj: ",
|
||||
"OffString": "Ki"
|
||||
"OffString": "Ki",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "J",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": "/",
|
||||
"TipDisconnectedString": "PUNTA ASSENTE",
|
||||
"SolderingAdvancedPowerPrompt": "Potenz:",
|
||||
"OffString": "OFF"
|
||||
"OffString": "OFF",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "D",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Nust:",
|
||||
"TipDisconnectedString": "ANTGAL ATJUNGTAS",
|
||||
"SolderingAdvancedPowerPrompt": "Maitinimas: ",
|
||||
"OffString": "Išj"
|
||||
"OffString": "Išj",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "D",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "TIP LOSGEKOPPELD",
|
||||
"SolderingAdvancedPowerPrompt": "vermogen: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": "Stel in:",
|
||||
"TipDisconnectedString": "Punt ONTKOPPELD",
|
||||
"SolderingAdvancedPowerPrompt": "Vermogen: ",
|
||||
"OffString": "Uit"
|
||||
"OffString": "Uit",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": "Set:",
|
||||
"TipDisconnectedString": "SPISS FRAKOBLET",
|
||||
"SolderingAdvancedPowerPrompt": "Effekt: ",
|
||||
"OffString": "Av"
|
||||
"OffString": "Av",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "H",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Ustaw:",
|
||||
"TipDisconnectedString": "GROT ODŁĄCZONY",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"OffString": "Wyłącz"
|
||||
"OffString": "Wyłącz",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "P",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Aj:",
|
||||
"TipDisconnectedString": "SEM PONTA",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "D",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " ->",
|
||||
"TipDisconnectedString": "Жало отключено",
|
||||
"SolderingAdvancedPowerPrompt": "Питание: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "П",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "TIP DISCONNECTED",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " / ",
|
||||
"TipDisconnectedString": "ВРХ НИЈЕ СПОЈЕН",
|
||||
"SolderingAdvancedPowerPrompt": "Снага: ",
|
||||
"OffString": "Иск"
|
||||
"OffString": "Иск",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "Д",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " / ",
|
||||
"TipDisconnectedString": "VRH NIJE SPOJEN",
|
||||
"SolderingAdvancedPowerPrompt": "Snaga: ",
|
||||
"OffString": "Isk"
|
||||
"OffString": "Isk",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "D",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Ange:",
|
||||
"TipDisconnectedString": "SPETS URTAGEN",
|
||||
"SolderingAdvancedPowerPrompt": "Ström: ",
|
||||
"OffString": "Av"
|
||||
"OffString": "Av",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "H",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " Set:",
|
||||
"TipDisconnectedString": "TIP DISCONNECTED",
|
||||
"SolderingAdvancedPowerPrompt": "Power: ",
|
||||
"OffString": "Off"
|
||||
"OffString": "Off",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
"IdleSetString": " ->",
|
||||
"TipDisconnectedString": "Жало вимкнено!",
|
||||
"SolderingAdvancedPowerPrompt": "Живлення: ",
|
||||
"OffString": "Вим"
|
||||
"OffString": "Вим",
|
||||
"ResetOKMessage":"Reset OK"
|
||||
},
|
||||
"characters": {
|
||||
"SettingRightChar": "R",
|
||||
|
||||
@@ -80,6 +80,10 @@ var def =
|
||||
{
|
||||
"id": "OffString",
|
||||
"maxLen": 3
|
||||
},
|
||||
{
|
||||
"id": "ResetOKMessage",
|
||||
"maxLen": 8
|
||||
}
|
||||
],
|
||||
"characters": [
|
||||
|
||||
@@ -38,7 +38,6 @@ public:
|
||||
//or we need to goto double buffering
|
||||
}
|
||||
|
||||
static void drawChar(char c); // Draw a character to a specific location
|
||||
// Turn the screen on or not
|
||||
static void displayOnOff(bool on) {
|
||||
displayOnOffState = on;
|
||||
@@ -92,9 +91,7 @@ public:
|
||||
bool clear);
|
||||
static void drawHeatSymbol(uint8_t state);
|
||||
private:
|
||||
|
||||
//Draw a buffer to the screen buffer
|
||||
|
||||
static void drawChar(char c); // Draw a character to a specific location
|
||||
static const uint8_t* currentFont;// Pointer to the current font used for rendering to the buffer
|
||||
static uint8_t* firstStripPtr; // Pointers to the strips to allow for buffer having extra content
|
||||
static uint8_t* secondStripPtr; //Pointers to the strips
|
||||
|
||||
@@ -9,8 +9,7 @@
|
||||
#define TRANSLATION_H_
|
||||
#include "stm32f1xx_hal.h"
|
||||
enum ShortNameType {
|
||||
SHORT_NAME_SINGLE_LINE = 1,
|
||||
SHORT_NAME_DOUBLE_LINE = 2,
|
||||
SHORT_NAME_SINGLE_LINE = 1, SHORT_NAME_DOUBLE_LINE = 2,
|
||||
};
|
||||
extern const uint8_t USER_FONT_12[];
|
||||
extern const uint8_t USER_FONT_6x8[];
|
||||
@@ -42,7 +41,7 @@ extern const char* IdleSetString;
|
||||
extern const char* TipDisconnectedString;
|
||||
extern const char* SolderingAdvancedPowerPrompt;
|
||||
extern const char* OffString;
|
||||
|
||||
extern const char* ResetOKMessage;
|
||||
extern const char* SettingTrueChar;
|
||||
extern const char* SettingFalseChar;
|
||||
extern const char* SettingRightChar;
|
||||
@@ -51,5 +50,18 @@ extern const char* SettingAutoChar;
|
||||
|
||||
extern const char* SettingFastChar;
|
||||
extern const char* SettingSlowChar;
|
||||
extern const char* TipModelStrings[];
|
||||
extern const char* SymbolPlus;
|
||||
extern const char* SymbolMinus;
|
||||
extern const char* SymbolSpace;
|
||||
extern const char* SymbolDot;
|
||||
extern const char* SymbolDegC;
|
||||
extern const char* SymbolDegF;
|
||||
extern const char* SymbolMinutes;
|
||||
extern const char* SymbolSeconds;
|
||||
extern const char* SymbolWatts;
|
||||
extern const char* SymbolVolts;
|
||||
extern const char* SymbolDC;
|
||||
extern const char* SymbolCellCount;
|
||||
|
||||
#endif /* TRANSLATION_H_ */
|
||||
|
||||
@@ -106,7 +106,7 @@ enum TipType {
|
||||
#endif
|
||||
#ifdef MODEL_TS80
|
||||
enum TipType {
|
||||
TS_B02 = 0, TS_D25 = 1, Tip_MiniWare = 2, Tip_Custom = 2,
|
||||
TS_B02 = 0, TS_D25 = 1, Tip_MiniWare = 2, Tip_Custom = 3,
|
||||
};
|
||||
#endif
|
||||
extern uint16_t tipGainCalValue ;
|
||||
|
||||
@@ -88,11 +88,14 @@ void OLED::initialize() {
|
||||
* Precursor is the command char that is used to select the table.
|
||||
*/
|
||||
void OLED::drawChar(char c) {
|
||||
if (c == '\n' && cursor_y == 0) {
|
||||
if (c == '\x01' && cursor_y == 0) { // 0x01 is used as new line char
|
||||
cursor_x = 0;
|
||||
cursor_y = 8;
|
||||
return;
|
||||
} else if (c == 0) {
|
||||
return;
|
||||
}
|
||||
uint16_t index = c-1;
|
||||
uint16_t index = c - 2; //First index is \x02
|
||||
uint8_t* charPointer;
|
||||
charPointer = ((uint8_t*) currentFont)
|
||||
+ ((fontWidth * (fontHeight / 8)) * index);
|
||||
@@ -156,44 +159,44 @@ void OLED::printNumber(uint16_t number, uint8_t places) {
|
||||
char buffer[7] = { 0 };
|
||||
|
||||
if (places >= 5) {
|
||||
buffer[5] = 1 + number % 10;
|
||||
buffer[5] = 2 + number % 10;
|
||||
number /= 10;
|
||||
}
|
||||
if (places > 4) {
|
||||
buffer[4] = 1 + number % 10;
|
||||
buffer[4] = 2 + number % 10;
|
||||
number /= 10;
|
||||
}
|
||||
|
||||
if (places > 3) {
|
||||
buffer[3] = 1 + number % 10;
|
||||
buffer[3] = 2 + number % 10;
|
||||
number /= 10;
|
||||
}
|
||||
|
||||
if (places > 2) {
|
||||
buffer[2] = 1 + number % 10;
|
||||
buffer[2] = 2 + number % 10;
|
||||
number /= 10;
|
||||
}
|
||||
|
||||
if (places > 1) {
|
||||
buffer[1] = 1 + number % 10;
|
||||
buffer[1] = 2 + number % 10;
|
||||
number /= 10;
|
||||
}
|
||||
|
||||
buffer[0] = 1 + number % 10;
|
||||
buffer[0] = 2 + number % 10;
|
||||
number /= 10;
|
||||
print(buffer);
|
||||
}
|
||||
|
||||
void OLED::debugNumber(int32_t val) {
|
||||
if (abs(val) > 99999) {
|
||||
OLED::print(" OoB"); // out of bounds
|
||||
OLED::print(SymbolSpace); // out of bounds
|
||||
return;
|
||||
}
|
||||
if (val >= 0) {
|
||||
OLED::drawChar(' ');
|
||||
OLED::print(SymbolSpace);
|
||||
OLED::printNumber(val, 5);
|
||||
} else {
|
||||
OLED::drawChar('-');
|
||||
OLED::print(SymbolMinus);
|
||||
OLED::printNumber(-val, 5);
|
||||
}
|
||||
}
|
||||
@@ -201,8 +204,7 @@ void OLED::debugNumber(int32_t val) {
|
||||
void OLED::drawSymbol(uint8_t symbolID) {
|
||||
// draw a symbol to the current cursor location
|
||||
setFont(2);
|
||||
drawChar(' ' + symbolID); // space offset is in all fonts, so we pad it here
|
||||
// and remove it later
|
||||
drawChar(symbolID + 2);
|
||||
setFont(0);
|
||||
}
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -305,10 +305,10 @@ static void settings_displayInputVRange(void) {
|
||||
printShortDescription(0, 6);
|
||||
|
||||
if (systemSettings.cutoutSetting) {
|
||||
OLED::drawChar('0' + 2 + systemSettings.cutoutSetting);
|
||||
OLED::drawChar('S');
|
||||
OLED::printNumer(2 + systemSettings.cutoutSetting,1);
|
||||
OLED::print(SymbolCellCount);
|
||||
} else {
|
||||
OLED::print("DC");
|
||||
OLED::print(SymbolDC);
|
||||
}
|
||||
}
|
||||
#else
|
||||
@@ -321,10 +321,12 @@ static void settings_displayInputPRange(void) {
|
||||
//0 = 18W, 1=24W
|
||||
switch (systemSettings.cutoutSetting) {
|
||||
case 0:
|
||||
OLED::print("18W");
|
||||
OLED::printNumber(18, 2);
|
||||
OLED::print(SymbolWatts);
|
||||
break;
|
||||
case 1:
|
||||
OLED::print("24W");
|
||||
OLED::printNumber(24, 2);
|
||||
OLED::print(SymbolWatts);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -367,10 +369,10 @@ static void settings_displaySleepTime(void) {
|
||||
OLED::print(OffString);
|
||||
} else if (systemSettings.SleepTime < 6) {
|
||||
OLED::printNumber(systemSettings.SleepTime * 10, 2);
|
||||
OLED::drawChar('S');
|
||||
OLED::print(SymbolSeconds);
|
||||
} else {
|
||||
OLED::printNumber(systemSettings.SleepTime - 5, 2);
|
||||
OLED::drawChar('M');
|
||||
OLED::print(SymbolMinutes);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -389,7 +391,7 @@ static void settings_displayShutdownTime(void) {
|
||||
OLED::print(OffString);
|
||||
} else {
|
||||
OLED::printNumber(systemSettings.ShutdownTime, 2);
|
||||
OLED::drawChar('M');
|
||||
OLED::print(SymbolMinutes);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -422,7 +424,7 @@ static void settings_setTempF(void) {
|
||||
static void settings_displayTempF(void) {
|
||||
printShortDescription(5, 7);
|
||||
|
||||
OLED::drawChar((systemSettings.temperatureInF) ? 'F' : 'C');
|
||||
OLED::print((systemSettings.temperatureInF) ? SymbolDegF : SymbolDegC);
|
||||
}
|
||||
|
||||
static void settings_setSensitivity(void) {
|
||||
@@ -559,7 +561,7 @@ static void settings_setResetSettings(void) {
|
||||
|
||||
OLED::setFont(0);
|
||||
OLED::setCursor(0, 0);
|
||||
OLED::print("RESET OK");
|
||||
OLED::print(ResetOKMessage);
|
||||
OLED::refresh();
|
||||
|
||||
waitForButtonPressOrTimeout(200); // 2 second timeout
|
||||
@@ -582,63 +584,21 @@ static void settings_displayTipModel(void) {
|
||||
// Print the mfg
|
||||
OLED::setCursor(55, 0);
|
||||
if (systemSettings.tipType < Tip_MiniWare) {
|
||||
#ifdef MODEL_TS100
|
||||
OLED::print("TS100");
|
||||
#else
|
||||
OLED::print("TS80");
|
||||
#endif
|
||||
OLED::print(TipModelStrings[Tip_MiniWare]);
|
||||
}
|
||||
#ifdef MODEL_TS100
|
||||
else if (systemSettings.tipType < Tip_Hakko) {
|
||||
OLED::print("HAKKO");
|
||||
OLED::print(TipModelStrings[Tip_Hakko]);
|
||||
}
|
||||
#endif
|
||||
else if (systemSettings.tipType == Tip_Custom) {
|
||||
OLED::print("User");
|
||||
OLED::print(TipModelStrings[Tip_Custom]);
|
||||
}
|
||||
OLED::setCursor(55, 8);
|
||||
#ifdef MODEL_TS100
|
||||
switch ((enum TipType)systemSettings.tipType) {
|
||||
case TS_B2:
|
||||
OLED::print(" B2 ");
|
||||
break;
|
||||
case TS_D24:
|
||||
OLED::print(" D24 ");
|
||||
break;
|
||||
case TS_BC2:
|
||||
OLED::print(" BC2 ");
|
||||
break;
|
||||
case TS_C1:
|
||||
OLED::print(" C1 ");
|
||||
break;
|
||||
case HAKKO_BC2:
|
||||
OLED::print(" BC2 ");
|
||||
break;
|
||||
case Tip_Custom:
|
||||
OLED::print("Tuned");
|
||||
break;
|
||||
default:
|
||||
OLED::print("????");
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
#ifdef MODEL_TS80
|
||||
// only 2 tips atm
|
||||
switch ((enum TipType) systemSettings.tipType) {
|
||||
case TS_B02:
|
||||
OLED::print(" B02 ");
|
||||
break;
|
||||
case TS_D25:
|
||||
OLED::print(" D25 ");
|
||||
break;
|
||||
case Tip_Custom:
|
||||
OLED::print("Tuned");
|
||||
break;
|
||||
default:
|
||||
OLED::print("????");
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
if (systemSettings.tipType != Tip_Custom)
|
||||
if (systemSettings.tipType != Tip_MiniWare)
|
||||
OLED::print(TipModelStrings[systemSettings.tipType]);
|
||||
|
||||
}
|
||||
static void calibration_displaySimpleCal(void) {
|
||||
printShortDescription(18, 5);
|
||||
@@ -771,17 +731,17 @@ static void calibration_enterAdvancedCal(void) {
|
||||
OLED::clearScreen();
|
||||
OLED::setFont(0);
|
||||
if (OLED::getRotation())
|
||||
OLED::drawChar('-');
|
||||
OLED::print(SymbolMinus);
|
||||
else
|
||||
OLED::drawChar('+');
|
||||
OLED::print(SymbolPlus);
|
||||
|
||||
OLED::drawChar(' ');
|
||||
OLED::print(SymbolSpace);
|
||||
OLED::printNumber(systemSettings.customTipGain, 4);
|
||||
OLED::drawChar(' ');
|
||||
OLED::print(SymbolSpace);
|
||||
if (OLED::getRotation())
|
||||
OLED::drawChar('+');
|
||||
OLED::print(SymbolPlus);
|
||||
else
|
||||
OLED::drawChar('-');
|
||||
OLED::print(SymbolMinus);
|
||||
OLED::refresh();
|
||||
GUIDelay();
|
||||
}
|
||||
|
||||
@@ -97,7 +97,7 @@ int main(void) {
|
||||
void printVoltage() {
|
||||
uint32_t volt = getInputVoltageX10(systemSettings.voltageDiv, 0);
|
||||
OLED::printNumber(volt / 10, 2);
|
||||
OLED::drawChar('.');
|
||||
OLED::print(SymbolDot);
|
||||
OLED::printNumber(volt % 10, 1);
|
||||
}
|
||||
void GUIDelay() {
|
||||
@@ -374,25 +374,25 @@ static void gui_solderingTempAdjust() {
|
||||
#else
|
||||
if (OLED::getRotation())
|
||||
#endif
|
||||
OLED::drawChar('-');
|
||||
OLED::print(SymbolMinus);
|
||||
else
|
||||
OLED::drawChar('+');
|
||||
OLED::print(SymbolPlus);
|
||||
|
||||
OLED::drawChar(' ');
|
||||
OLED::print(SymbolSpace);
|
||||
OLED::printNumber(systemSettings.SolderingTemp, 3);
|
||||
if (systemSettings.temperatureInF)
|
||||
OLED::drawSymbol(0);
|
||||
else
|
||||
OLED::drawSymbol(1);
|
||||
OLED::drawChar(' ');
|
||||
OLED::print(SymbolSpace);
|
||||
#ifdef MODEL_TS80
|
||||
if (!OLED::getRotation())
|
||||
#else
|
||||
if (OLED::getRotation())
|
||||
#endif
|
||||
OLED::drawChar('+');
|
||||
OLED::print(SymbolPlus);
|
||||
else
|
||||
OLED::drawChar('-');
|
||||
OLED::print(SymbolMinus);
|
||||
OLED::refresh();
|
||||
GUIDelay();
|
||||
}
|
||||
@@ -443,13 +443,13 @@ static int gui_SolderingSleepingMode() {
|
||||
OLED::print(SleepingTipAdvancedString);
|
||||
OLED::printNumber(tipTemp, 3);
|
||||
if (systemSettings.temperatureInF)
|
||||
OLED::print("F");
|
||||
OLED::print(SymbolDegF);
|
||||
else
|
||||
OLED::print("C");
|
||||
OLED::print(SymbolDegC);
|
||||
|
||||
OLED::print(" ");
|
||||
OLED::print(SymbolSpace);
|
||||
printVoltage();
|
||||
OLED::drawChar('V');
|
||||
OLED::print(SymbolVolts);
|
||||
} else {
|
||||
OLED::setFont(0);
|
||||
OLED::print(SleepingSimpleString);
|
||||
@@ -565,28 +565,28 @@ static void gui_solderingMode(uint8_t jumpToSleep) {
|
||||
OLED::setFont(1);
|
||||
OLED::print(SolderingAdvancedPowerPrompt); // Power:
|
||||
OLED::printNumber(milliWattHistory[0] / 1000, 2);
|
||||
OLED::drawChar('.');
|
||||
OLED::print(SymbolDot);
|
||||
OLED::printNumber(milliWattHistory[0] / 100 % 10, 1);
|
||||
OLED::drawChar('W');
|
||||
OLED::print(SymbolWatts);
|
||||
|
||||
if (systemSettings.sensitivity && systemSettings.SleepTime) {
|
||||
OLED::print(" ");
|
||||
OLED::print(SymbolSpace);
|
||||
display_countdown(sleepThres);
|
||||
}
|
||||
|
||||
OLED::setCursor(0, 8);
|
||||
OLED::print(SleepingTipAdvancedString);
|
||||
gui_drawTipTemp(true);
|
||||
OLED::print(" ");
|
||||
OLED::print(SymbolSpace);
|
||||
printVoltage();
|
||||
OLED::drawChar('V');
|
||||
OLED::print(SymbolVolts);
|
||||
} else {
|
||||
// We switch the layout direction depending on the orientation of the
|
||||
// OLED::
|
||||
if (OLED::getRotation()) {
|
||||
// battery
|
||||
gui_drawBatteryIcon();
|
||||
OLED::drawChar(' '); // Space out gap between battery <-> temp
|
||||
OLED::print(SymbolSpace); // Space out gap between battery <-> temp
|
||||
gui_drawTipTemp(true); // Draw current tip temp
|
||||
|
||||
// We draw boost arrow if boosting, or else gap temp <-> heat
|
||||
@@ -594,7 +594,7 @@ static void gui_solderingMode(uint8_t jumpToSleep) {
|
||||
if (boostModeOn)
|
||||
OLED::drawSymbol(2);
|
||||
else
|
||||
OLED::drawChar(' ');
|
||||
OLED::print(SymbolSpace);
|
||||
|
||||
// Draw heating/cooling symbols
|
||||
OLED::drawHeatSymbol(
|
||||
@@ -610,10 +610,10 @@ static void gui_solderingMode(uint8_t jumpToSleep) {
|
||||
if (boostModeOn)
|
||||
OLED::drawSymbol(2);
|
||||
else
|
||||
OLED::drawChar(' ');
|
||||
OLED::print(SymbolSpace);
|
||||
gui_drawTipTemp(true); // Draw current tip temp
|
||||
|
||||
OLED::drawChar(' '); // Space out gap between battery <-> temp
|
||||
OLED::print(SymbolSpace); // Space out gap between battery <-> temp
|
||||
|
||||
gui_drawBatteryIcon();
|
||||
}
|
||||
|
||||
@@ -15,11 +15,11 @@
|
||||
<configuration artifactExtension="elf" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" errorParsers="org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GCCErrorParser" id="com.atollic.truestudio.configuration.release.200032419" name="Release" parent="com.atollic.truestudio.configuration.release" postannouncebuildStep="" postbuildStep="" preannouncebuildStep="" prebuildStep="">
|
||||
<folderInfo id="com.atollic.truestudio.configuration.release.200032419." name="/" resourcePath="">
|
||||
<toolChain errorParsers="" id="com.atollic.truestudio.exe.release.toolchain.1340188969" name="Atollic ARM Tools" superClass="com.atollic.truestudio.exe.release.toolchain">
|
||||
<option id="com.atollic.truestudio.general.runtimelib.191191414" name="Runtime Library" superClass="com.atollic.truestudio.general.runtimelib" useByScannerDiscovery="false" value="com.atollic.truestudio.ld.general.cclib.CCStandardCStandard" valueType="enumerated"/>
|
||||
<option id="com.atollic.truestudio.general.runtimelib.191191414" name="Runtime Library" superClass="com.atollic.truestudio.general.runtimelib" useByScannerDiscovery="false" value="com.atollic.truestudio.ld.general.cclib.CCSmallCSmall" valueType="enumerated"/>
|
||||
<option id="com.atollic.truestudio.toolchain_options.mcu.1436647432" name="Microcontroller" superClass="com.atollic.truestudio.toolchain_options.mcu" useByScannerDiscovery="false" value="STM32F103T8" valueType="string"/>
|
||||
<option id="com.atollic.truestudio.toolchain_options.vendor.1169826438" name="Vendor name" superClass="com.atollic.truestudio.toolchain_options.vendor" useByScannerDiscovery="false" value="STMicroelectronics" valueType="string"/>
|
||||
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.atollic.truestudio.exe.release.toolchain.platform.1125330428" isAbstract="false" name="release platform" superClass="com.atollic.truestudio.exe.release.toolchain.platform"/>
|
||||
<builder autoBuildTarget="" buildPath="${workspace_loc:/TS100A}/Release" cleanBuildTarget="" customBuilderProperties="toolChainpathString=C:\\Program Files (x86)\\Atollic\\TrueSTUDIO for STM32 9.1.0\\ARMTools\\bin|toolChainpathType=1|com.atollic.truestudio.common_options.target.vendor=STMicroelectronics|com.atollic.truestudio.common_options.target.mcu=STM32F103T8|" enableAutoBuild="false" enableCleanBuild="true" enabledIncrementalBuild="true" errorParsers="" id="com.atollic.truestudio.mbs.builder1.1682214826" incrementalBuildTarget="" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="CDT Internal Builder" parallelBuildOn="false" superClass="com.atollic.truestudio.mbs.builder1"/>
|
||||
<builder autoBuildTarget="" buildPath="${workspace_loc:/TS100A}/Release" cleanBuildTarget="" customBuilderProperties="toolChainpathString=/opt/Atollic_TrueSTUDIO_for_STM32_x86_64_9.3.0/ARMTools/bin|toolChainpathType=1|com.atollic.truestudio.common_options.target.vendor=STMicroelectronics|com.atollic.truestudio.common_options.target.mcu=STM32F103T8|" enableAutoBuild="false" enableCleanBuild="true" enabledIncrementalBuild="true" errorParsers="" id="com.atollic.truestudio.mbs.builder1.1682214826" incrementalBuildTarget="" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="CDT Internal Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.atollic.truestudio.mbs.builder1"/>
|
||||
<tool command="arm-atollic-eabi-gcc -c" commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}" errorParsers="org.eclipse.cdt.core.GASErrorParser" id="com.atollic.truestudio.exe.release.toolchain.as.5806016" name="Assembler" superClass="com.atollic.truestudio.exe.release.toolchain.as">
|
||||
<option id="com.atollic.truestudio.common_options.target.endianess.1911688133" name="Endianess" superClass="com.atollic.truestudio.common_options.target.endianess" useByScannerDiscovery="false"/>
|
||||
<option id="com.atollic.truestudio.common_options.target.mcpu.1179040963" name="Microcontroller" superClass="com.atollic.truestudio.common_options.target.mcpu" useByScannerDiscovery="false" value="STM32F103T8" valueType="enumerated"/>
|
||||
@@ -61,14 +61,14 @@
|
||||
</option>
|
||||
<option id="com.atollic.truestudio.gcc.directories.select.1784012793" name="Include path" superClass="com.atollic.truestudio.gcc.directories.select" useByScannerDiscovery="false" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\Middlewares\Third_Party\FreeRTOS\Source\portable\GCC\ARM_CM3""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\Middlewares\Third_Party\FreeRTOS\Source\include""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\Middlewares\Third_Party\FreeRTOS\Source\portable""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\HAL_Driver\Inc\Legacy""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\inc""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\HAL_Driver\Inc""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\CMSIS\core""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\CMSIS\device""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/Middlewares/Third_Party/FreeRTOS/Source/include""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/Middlewares/Third_Party/FreeRTOS/Source/portable""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/HAL_Driver/Inc/Legacy""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/inc""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/HAL_Driver/Inc""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/CMSIS/core""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/CMSIS/device""/>
|
||||
</option>
|
||||
<option id="com.atollic.truestudio.common_options.target.endianess.995599109" name="Endianess" superClass="com.atollic.truestudio.common_options.target.endianess" useByScannerDiscovery="false"/>
|
||||
<option id="com.atollic.truestudio.common_options.target.mcpu.1774407741" name="Microcontroller" superClass="com.atollic.truestudio.common_options.target.mcpu" useByScannerDiscovery="false" value="STM32F103T8" valueType="enumerated"/>
|
||||
@@ -91,7 +91,7 @@
|
||||
<option id="com.atollic.truestudio.ld.general.scriptfile.755006424" name="Linker script" superClass="com.atollic.truestudio.ld.general.scriptfile" value="../stm32_flash.ld" valueType="string"/>
|
||||
<option id="com.atollic.truestudio.ld.optimization.do_garbage.2103581239" name="Dead code removal " superClass="com.atollic.truestudio.ld.optimization.do_garbage" value="true" valueType="boolean"/>
|
||||
<option id="com.atollic.truestudio.common_options.target.interwork.234525005" name="Mix ARM/Thumb" superClass="com.atollic.truestudio.common_options.target.interwork"/>
|
||||
<option id="com.atollic.truestudio.ld.misc.genmapfile.444765358" superClass="com.atollic.truestudio.ld.misc.genmapfile"/>
|
||||
<option id="com.atollic.truestudio.ld.misc.genmapfile.444765358" name="Create map file" superClass="com.atollic.truestudio.ld.misc.genmapfile"/>
|
||||
</tool>
|
||||
<tool command="arm-atollic-eabi-g++ -c" commandLinePattern="${COMMAND} ${INPUTS} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT}" errorParsers="org.eclipse.cdt.core.GCCErrorParser" id="com.atollic.truestudio.exe.release.toolchain.gpp.93636755" name="C++ Compiler" superClass="com.atollic.truestudio.exe.release.toolchain.gpp">
|
||||
<option id="com.atollic.truestudio.gpp.symbols.defined.552082963" name="Defined symbols" superClass="com.atollic.truestudio.gpp.symbols.defined" useByScannerDiscovery="false" valueType="definedSymbols">
|
||||
@@ -105,14 +105,14 @@
|
||||
</option>
|
||||
<option id="com.atollic.truestudio.gpp.directories.select.1908833089" name="Include path" superClass="com.atollic.truestudio.gpp.directories.select" useByScannerDiscovery="false" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\Middlewares\Third_Party\FreeRTOS\Source\portable\GCC\ARM_CM3""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\Middlewares\Third_Party\FreeRTOS\Source\include""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\Middlewares\Third_Party\FreeRTOS\Source\portable""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\HAL_Driver\Inc\Legacy""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\inc""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\HAL_Driver\Inc""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\CMSIS\core""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100\CMSIS\device""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM3""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/Middlewares/Third_Party/FreeRTOS/Source/include""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/Middlewares/Third_Party/FreeRTOS/Source/portable""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/HAL_Driver/Inc/Legacy""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/inc""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/HAL_Driver/Inc""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/CMSIS/core""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}}/../TS100/CMSIS/device""/>
|
||||
</option>
|
||||
<option id="com.atollic.truestudio.common_options.target.endianess.1156506838" name="Endianess" superClass="com.atollic.truestudio.common_options.target.endianess" useByScannerDiscovery="false"/>
|
||||
<option id="com.atollic.truestudio.common_options.target.mcpu.260174094" name="Microcontroller" superClass="com.atollic.truestudio.common_options.target.mcpu" useByScannerDiscovery="false" value="STM32F103T8" valueType="enumerated"/>
|
||||
@@ -141,7 +141,7 @@
|
||||
<option id="com.atollic.truestudio.ldcc.misc.linkerflags.2127852186" name="Other options" superClass="com.atollic.truestudio.ldcc.misc.linkerflags" useByScannerDiscovery="false" value="-Wl,-cref,-u,Reset_Handler,-lm -Os -flto -Wl,--undefined=vTaskSwitchContext" valueType="string"/>
|
||||
<option id="com.atollic.truestudio.ldcc.optimization.malloc_page_size.1711302014" name="Page size allocation for malloc() " superClass="com.atollic.truestudio.ldcc.optimization.malloc_page_size" useByScannerDiscovery="false" value="com.atollic.truestudio.ldcc.optimization.malloc_page_size.128" valueType="enumerated"/>
|
||||
<option id="com.atollic.truestudio.common_options.target.interwork.1666808603" name="Mix ARM/Thumb" superClass="com.atollic.truestudio.common_options.target.interwork" useByScannerDiscovery="false"/>
|
||||
<option id="com.atollic.truestudio.ldcc.misc.genmapfile.1497893499" superClass="com.atollic.truestudio.ldcc.misc.genmapfile"/>
|
||||
<option id="com.atollic.truestudio.ldcc.misc.genmapfile.1497893499" name="Create map file" superClass="com.atollic.truestudio.ldcc.misc.genmapfile" useByScannerDiscovery="false"/>
|
||||
<inputType id="com.atollic.truestudio.ldcc.input.1102687442" name="Input" superClass="com.atollic.truestudio.ldcc.input">
|
||||
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
|
||||
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
|
||||
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
|
||||
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
|
||||
<provider class="com.atollic.truestudio.mbs.GCCSpecsDetectorAtollicArm" console="false" env-hash="-423320347510587850" id="com.atollic.truestudio.mbs.provider" keep-relative-paths="false" name="Atollic ARM Tools Language Settings" parameter="${COMMAND} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
|
||||
<provider class="com.atollic.truestudio.mbs.GCCSpecsDetectorAtollicArm" console="false" env-hash="-133272683506189437" id="com.atollic.truestudio.mbs.provider" keep-relative-paths="false" name="Atollic ARM Tools Language Settings" parameter="${COMMAND} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
|
||||
<language-scope id="org.eclipse.cdt.core.gcc"/>
|
||||
<language-scope id="org.eclipse.cdt.core.g++"/>
|
||||
</provider>
|
||||
@@ -14,7 +14,7 @@
|
||||
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
|
||||
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
|
||||
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
|
||||
<provider class="com.atollic.truestudio.mbs.GCCSpecsDetectorAtollicArm" console="false" env-hash="-423320347510587850" id="com.atollic.truestudio.mbs.provider" keep-relative-paths="false" name="Atollic ARM Tools Language Settings" parameter="${COMMAND} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
|
||||
<provider class="com.atollic.truestudio.mbs.GCCSpecsDetectorAtollicArm" console="false" env-hash="-133272683506189437" id="com.atollic.truestudio.mbs.provider" keep-relative-paths="false" name="Atollic ARM Tools Language Settings" parameter="${COMMAND} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
|
||||
<language-scope id="org.eclipse.cdt.core.gcc"/>
|
||||
<language-scope id="org.eclipse.cdt.core.g++"/>
|
||||
</provider>
|
||||
@@ -24,7 +24,7 @@
|
||||
<extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
|
||||
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
|
||||
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
|
||||
<provider class="com.atollic.truestudio.mbs.GCCSpecsDetectorAtollicArm" console="false" env-hash="-423320347510587850" id="com.atollic.truestudio.mbs.provider" keep-relative-paths="false" name="Atollic ARM Tools Language Settings" parameter="${COMMAND} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
|
||||
<provider class="com.atollic.truestudio.mbs.GCCSpecsDetectorAtollicArm" console="false" env-hash="-133272683506189437" id="com.atollic.truestudio.mbs.provider" keep-relative-paths="false" name="Atollic ARM Tools Language Settings" parameter="${COMMAND} -E -P -v -dD "${INPUTS}"" prefer-non-shared="true">
|
||||
<language-scope id="org.eclipse.cdt.core.gcc"/>
|
||||
<language-scope id="org.eclipse.cdt.core.g++"/>
|
||||
</provider>
|
||||
|
||||
Reference in New Issue
Block a user