Skip to content

Commit 9818996

Browse files
committed
fix bug in timer and update utilities menu
1 parent de302a1 commit 9818996

File tree

3 files changed

+28
-23
lines changed

3 files changed

+28
-23
lines changed

.vscode/settings.json

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,12 @@
44
"vector": "cpp",
55
"cmath": "cpp",
66
"cstdint": "cpp",
7-
"tuple": "cpp"
7+
"tuple": "cpp",
8+
"deque": "cpp",
9+
"list": "cpp",
10+
"string": "cpp",
11+
"unordered_map": "cpp",
12+
"unordered_set": "cpp",
13+
"system_error": "cpp"
814
}
915
}

src/main.cpp

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#define FIRMWARE_VERSION "v0.1.1D"
1+
#define FIRMWARE_VERSION "v0.1.2D"
22
// дисплей
33
#define RES 17
44
#define DC 16
@@ -1055,7 +1055,7 @@ void power_high() {
10551055
oled.update();
10561056
}
10571057
if(ok.isClick()) {
1058-
exit();
1058+
exit_without_update();
10591059
return;
10601060
}
10611061

@@ -1619,7 +1619,7 @@ int getFilesCount() {
16191619
File file = root.openNextFile();
16201620
while (file) {
16211621
String filename = file.name();
1622-
if (filename.endsWith(".txt") || filename.endsWith(".h")) {
1622+
if (filename.endsWith(".txt") || filename.endsWith(".h") || filename.endsWith(".catos")) {
16231623
count++;
16241624
}
16251625
file.close();
@@ -1635,7 +1635,7 @@ String getFilenameByIndex(int idx) {
16351635
File file = root.openNextFile();
16361636
while (file) {
16371637
String filename = file.name();
1638-
if (filename.endsWith(".txt") || filename.endsWith(".h")) {
1638+
if (filename.endsWith(".txt") || filename.endsWith(".h") || filename.endsWith(".catos")) {
16391639
if (i == idx) {
16401640
String name = "/" + filename;
16411641
file.close();
@@ -1854,10 +1854,11 @@ void enterToReadFile(void) {
18541854
String filename = getFilenameByIndex(cursor);
18551855
if (filename.endsWith(".h")) {
18561856
enterToReadBmpFile(filename);
1857-
} else {
1857+
} else if(filename.endsWith(".txt")) {
18581858
// Вызов существующей функции для текстовых файлов
18591859
enterToReadTxtFile(filename);
1860-
} // Режим чтения файла
1860+
} else {
1861+
}
18611862
}
18621863
void ShowFilesLittleFS() {
18631864
oled.autoPrintln(false);
@@ -2135,7 +2136,7 @@ void timer_oled() {
21352136
oled.invertDisplay(millis() % 500 < 250);
21362137
oled.setCursor(0, 3);
21372138
oled.setScale(2);
2138-
oled.print(" ВРЕМЯ!");
2139+
oled.print(" ВРЕМЯ");
21392140

21402141
// Отключение сигнала
21412142
if(ok.isClick()) {
@@ -2149,11 +2150,11 @@ void timer_oled() {
21492150
oled.setScale(1);
21502151
oled.setCursor(0, 7);
21512152
switch(state) {
2152-
case SET_HOURS: oled.print("Уст. часы OK->"); break;
2153-
case SET_MINS: oled.print("Уст. минуты OK->"); break;
2153+
case SET_HOURS: oled.print("Уст. часы OK->"); break;
2154+
case SET_MINS: oled.print("Уст. минуты OK->"); break;
21542155
case SET_SECS: oled.print("Уст. секунды СТАРТ"); break;
2155-
case RUNNING: oled.print(" ОСТАНОВКА ->OK"); break;
2156-
case ALARM: oled.print(" ОК - СБРОС "); break;
2156+
case RUNNING: oled.print(" ОСТАНОВКА ->OK"); break;
2157+
case ALARM: oled.print(" ОК - СБРОС "); break;
21572158
}
21582159
oled.update();
21592160

@@ -2743,6 +2744,7 @@ void Utilities_menu() {
27432744
const char* settings_items[] = {
27442745
"Секундомер",
27452746
"Таймер",
2747+
"Управление GPIO",
27462748
"Выход"
27472749
};
27482750
const uint8_t settings_apps_count = sizeof(settings_items)/sizeof(settings_items[0]);
@@ -2784,7 +2786,8 @@ void Utilities_menu() {
27842786
switch(settings_apps_ptr) {
27852787
case 0: stopwatch(); break;
27862788
case 1: timer_oled(); break;
2787-
case 2: exit(); return;
2789+
case 2: power_high(); break;
2790+
case 3: exit(); return;
27882791
}
27892792
// Перерисовываем интерфейс после возврата
27902793
ui_rama("Утилиты", true, true, true);
@@ -2824,14 +2827,12 @@ void menu_default() {
28242827
}
28252828
if (ok.isClick()) { // Нажатие на ОК - переход в пункт меню
28262829
switch (pointer) { // По номеру указателей располагаем вложенные функции (можно вложенные меню)
2827-
case 0: oled.clear(); mini_apps_menu(); break; // По нажатию на ОК при наведении на 0й пункт вызвать функцию
2830+
case 0: mini_apps_menu(); break; // По нажатию на ОК при наведении на 0й пункт вызвать функцию
28282831
case 1: settingsMenu(); break;
28292832
case 2: ShowFilesLittleFS(); break;
2830-
case 3: power_high(); break;
2831-
case 4: calcul(); break;
2832-
case 5: create_settings(); break;
2833-
case 6: Utilities_menu(); break;
2834-
case 7: break;
2833+
case 3: calcul(); break;
2834+
case 4: create_settings(); break;
2835+
case 5: Utilities_menu(); break;
28352836
}
28362837
}
28372838
}

src/menu_oled.h

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
1-
#define ITEMS 8 // Исправлено на реальное количество отображаемых элементов
2-
#define VISIBLE_ITEMS 8 // Количество одновременно отображаемых пунктов
1+
#define ITEMS 6
2+
#define VISIBLE_ITEMS 6
33
const char* menu_items[] = {
44
" Мини приложения",
55
" Настройки",
66
" Читалка",
7-
" Управление GPIO",
87
" Калькулятор",
98
" Веб меню",
109
" Утилиты",
11-
" Выход",
1210
};
1311
int8_t pointer = 0;
1412
int8_t top_item = 0; // Верхний видимый пункт списка

0 commit comments

Comments
 (0)