ArDos / дозиметр, часть №1

Dark-Dante
Offline
Зарегистрирован: 09.01.2018

Вы автор, Вам решать как и что реализовать, я просто поделился своим мнением)

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

mambavamba14 - Вроде бы заработало...

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

Dark-Dante - Тут больше решает объем памяти а не я)) На ассемблере можно гораздо компактнее сделать, но увы пока не умею)) А что еще в этом скетче оптимизировать я уже увы не знаю...

alexadresat - Отлично! Исправил и перезалил! Попробуй быструю настройку с изменением параметров и без.

 

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

mambavamba14 -  Остался третий пункт настроек?

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

alexadresat - Да, вот сижу думаю как сделать его...

 

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

mambavamba14 - У меня к тебе просьба не забрасывать ArDos_with_RADON_v1.6.5, ты мне как то обещал исправить в Доза и Статистика строки на Дни:00  12:34:56

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

alexadresat - Да да, я помню, все сделаем, куда мы денемся))

Утилиту обновил, добавлена автонастройка импульса(будет длится +- 30с) затем выведет на финишный экран со всеми параметрами.

 

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

 

Шкала прогресса начинает идти как переходит на экран вычисления даже не нажимая Старт, При этом выдает Параметры, преобразователь не работает. Он начинает работать когда нажимаешь Старт.

При долгом нажатии ОК не выходит в начальное меню.

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

alexadresat - Да, мой косяк...исправил и перезалил! также сделал если на финишном экране нажать выход, загрузятся последние настройки.

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

При выборе Автонастройка импульса сразу попадаешь сюда...

 

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

alexadresat - Исправил, презалил!

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

На главном экране атонастройка импульсЯ.

Надо с заглавной буквы менюшку сделать - Быстрая настройка - Ручная настройка - Автонастройка импульса

Исправь потом попробую...

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

alexadresat - Вроде нормально работает, кнопки исправил, максимальную длину импульса уменьшил до 25. Архив перезалил.

UPD.Буквы исправил, сделал полоску прогресса поуже и 0-е значение с 1пкс.

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

В меню выбора настроек когда инверсия надпись с маленькой буквой, и когда нет инверсии на третьем меню опечатка импульсЯ.

Строчку прогресс и полосу прогресса подними повыше, посередине между второй строкой и последней.

И максимальную длину импульса наверное надо увеличить хотя бы до 30.

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

Исправил, не заметил сразу...

К сожалению невозможно.. либо впритык к верхней или впритык к нижней.

Хорошо, сделал, подумал что 30 многовато будет...

UPD2. Добавил вкл/выкл подсветки в основном меню(удерж. Ок - вкл/выкл подсветку).

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

mambavamba14 - Надо еще чтоб подсветка выключалась/включалась, скажем в меню выбора настроек удержанием кнопки вверх, а то фоткать не удобно...

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

mambavamba14 - когда вкл/выкл подсветку инверсия выбора меню беспорядочно бегает

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

alexadresat - Да я уже понял что удержание будет пересекаться с выбором параметров. Сделал на удерж. Ок в основном меню.

UPD. Исправил начальное значение автонастройки импульса.

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

mambavamba14 - Ну теперь давай расписывай что должен делать пользователь, все действия по трем настройкам..

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

19.06.20 #ArDos_utility_for_debug_0.0.2 - Также теперь есть отдельная утилита для настройки и отладки преобразователя. С её помощью можно как и быстро настроить (введя всего сопротивления делителя, напряжение питания и напряжение ВВ), так и в ручном режиме отладить все параметры ещё более точно. Также есть инструмент для автоматической настройки длинны импульса.

От вас требуется только прошить утилиту(параметры в скетче менять не обязательно), при первом старте откроется быстрая настройка. Ваши действия: "Начать" -> Вводите верхнее и нижнее плечо вашего делителя(можно просто номиналы купленных сопротивление) -> "Далее" -> Подключаете мультиметр к источнику питания вашего дозиметра и вводите показания в параметр "батарея" -> "Далее" -> Подключаете мультиметр к выходу преобразователя ВВ(конденсатору на выходе) вашего дозиметра и вводите показания в параметр "накачка" -> "Далее" -> "Готово". Если преобразователь был успешно настроен, то вы увидите финишное окно со всеми основными параметрами, которые нужно будет просто переписать в скетч с прошивкой дозиметра(названия параметров и переменных(дефайнов) в скетче совпадают).

Для более правильной работы, необходимо настроить длину импульса. Для этого есть два способа, в ручную настроить "эмпирическим" путем в "Ручной настройке"  или же воспользоваться инструментом "Автонастройка импульса", после нажатия на "старт" пойдет процесс подстройки(занимает +- 30сек), в конце сразу же откроется финишное окно со всеми основными параметрами.


 

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

mambavamba14 - Давай заодно и нажатие кнопок озвучь...

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

mambavamba14 - Ты заметил разницу показаний puls= Быстрая настройка и Автонастройка импульса?

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

alexadresat - Просто даже фиг знает что написать, вроде и так интерфейс максимально (на сколько это возможно) "юзерюзер-френдли")))

Ну так в быстрой предыдущее состояние импульса, а в автонастройке новое...поидее вроде так.

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

20.06.20 #ArDos_utility_for_debug_0.0.2 - Мелкие исправления.

20.06.20 #ArDos_with_RADON_1.7.0 - Интегрирована работа с утилитой по настройке ВВ преобразователя.

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

...

 

 

Romka5110
Offline
Зарегистрирован: 19.06.2020
Всем привет. Помогите пожалуйста разобраться с загрузкой скетча, в этом деле не разбираюсь. Прошиваю через программатор CH340. Выдает следующую ошибку:

Arduino: 1.8.13 (Windows 8.1), Плата:"Arduino Pro or Pro Mini, ATmega328P (5V, 16 MHz)"

C:\Program Files (x86)\Arduino\ardos\ardos.ino: In function 'void loop()':

C:\Program Files (x86)\Arduino\ardos\ardos.ino:364:58: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             myGLCD.print(utf8rus("ДОЗА И ВРЕМЯ"), CENTER, 16);
                                                          ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:365:52: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             myGLCD.print(utf8rus("ОБНУЛЕНЫ"), CENTER, 24);
                                                    ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:478:58: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             myGLCD.print(utf8rus("ДОЗА И ВРЕМЯ"), CENTER, 16);
                                                          ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:479:52: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             myGLCD.print(utf8rus("ОБНУЛЕНЫ"), CENTER, 24);
                                                    ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino: In function 'void lcd_poisk()':

C:\Program Files (x86)\Arduino\ardos\ardos.ino:568:43: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

         myGLCD.print("\xBC\xBE\xBF", 43, 0);
                                           ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:572:47: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

         myGLCD.print("\xBC\xBD\xBE\xBF", 43, 0);
                                               ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:610:73: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             myGLCD.setFont(SmallFontRus); myGLCD.print(utf8rus("мР/ч"), RIGHT, 12);
                                                                         ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:622:75: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

             myGLCD.setFont(SmallFontRus); myGLCD.print(utf8rus("мкР/ч"), RIGHT, 12);
                                                                           ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:631:39: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

         myGLCD.print(utf8rus("мР/ч"), RIGHT, 12);
                                       ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:635:41: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

         myGLCD.print(utf8rus("мкР/ч"), RIGHT, 12);
                                         ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:646:74: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

         myGLCD.printNumF(doz_v, 1, 41, 24); myGLCD.print(utf8rus("мкР"), RIGHT, 24);
                                                                         ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:650:74: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

         myGLCD.printNumF(doz_v, 1, 34, 24); myGLCD.print(utf8rus("мкР"), RIGHT, 24);
                                                                          ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:655:77: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

     myGLCD.printNumF(doz_v / 1000.0, 2, 41, 24); myGLCD.print(utf8rus("мР"), RIGHT, 24);
                                                                             ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino: In function 'void lcd_menu()':

C:\Program Files (x86)\Arduino\ardos\ardos.ino:691:36: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ПОРОГ 1"), 5, 0); myGLCD.printNumI(treviga_1, 55, 0); myGLCD.print("\xBC\xBD\xBE\xBF", RIGHT, 0);
                                    ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:691:123: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ПОРОГ 1"), 5, 0); myGLCD.printNumI(treviga_1, 55, 0); myGLCD.print("\xBC\xBD\xBE\xBF", RIGHT, 0);
                                                                                                                           ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:692:36: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ПОРОГ 2"), 5, 6); myGLCD.printNumI(treviga_2, 55, 6); myGLCD.print("\xBC\xBD\xBE\xBF", RIGHT, 6);
                                    ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:692:123: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ПОРОГ 2"), 5, 6); myGLCD.printNumI(treviga_2, 55, 6); myGLCD.print("\xBC\xBD\xBE\xBF", RIGHT, 6);
                                                                                                                           ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:693:42: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ПОДСВЕТКА"), 5, 12);
                                          ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:694:49: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 if (podsvetka)  { myGLCD.print(utf8rus("ВКЛ."), RIGHT, 12); }
                                                 ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:695:41: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 else  { myGLCD.print(utf8rus("ВЫКЛ."), RIGHT, 12);  }
                                         ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:696:46: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ТИП. ГРАФИКА"), 5, 18);  myGLCD.printNumI(graph_type, 59, 18); myGLCD.print("0-1", RIGHT, 18); //
                                              ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:696:125: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ТИП. ГРАФИКА"), 5, 18);  myGLCD.printNumI(graph_type, 59, 18); myGLCD.print("0-1", RIGHT, 18); //
                                                                                                                             ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:697:46: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ОБН. ГРАФИКА"), 5, 24); myGLCD.printNumI(scrin_GRAF, 59, 24); myGLCD.print(utf8rus("СЕК."), RIGHT, 24);//
                                              ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:697:125: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ОБН. ГРАФИКА"), 5, 24); myGLCD.printNumI(scrin_GRAF, 59, 24); myGLCD.print(utf8rus("СЕК."), RIGHT, 24);//
                                                                                                                             ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:698:42: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ИНДИКАЦИЯ"), 5, 30); //пункт меню выбора индикации частиц
                                          ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:702:37: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

     myGLCD.print(utf8rus("ВЫКЛ."), RIGHT, 30); //индикация выключена
                                     ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:705:36: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

     myGLCD.print(utf8rus("ЗВУК"), RIGHT, 30); //индикация звуком
                                    ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:708:36: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

     myGLCD.print(utf8rus("СВЕТ"), RIGHT, 30); //индикация светом
                                    ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:711:45: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

     myGLCD.print(utf8rus("ЗВУК+СВЕТ"), RIGHT, 30); //индикация звуком и светом
                                             ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:714:38: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

     myGLCD.print(utf8rus("ВИБРО"), RIGHT, 30); //индикация вибрацией
                                      ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:717:34: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

     myGLCD.print("err", RIGHT, 30); //  если значение не равно 1,2,3 или 0 - выводим ошибку
                                  ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:719:34: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ВЫХОД"), 5, 36);
                                  ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:720:42: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("СОХРАНИТЬ"), 5, 42);
                                          ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:721:32: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(">", 0, n_menu * 6);
                                ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino: In function 'void lcd_sys()':

C:\Program Files (x86)\Arduino\ardos\ardos.ino:731:35: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ОПОРН."), 5, 0); myGLCD.printNumF(opornoe, 2, CENTER, 0); myGLCD.print("VCC", 55, 0); myGLCD.printNumF(VCC, 2, RIGHT, 0);
                                   ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:731:111: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ОПОРН."), 5, 0); myGLCD.printNumF(opornoe, 2, CENTER, 0); myGLCD.print("VCC", 55, 0); myGLCD.printNumF(VCC, 2, RIGHT, 0);
                                                                                                               ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:733:38: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("НАКАЧКА"), 5, 6); myGLCD.printNumI(puls, 55, 6); myGLCD.printNumI(hv_400, RIGHT, 6);
                                      ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:734:43: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("СБРОС ДОЗЫ"), 5, 12);
                                           ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:735:34: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("ВЫХОД"), 5, 18);
                                  ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:736:42: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("СОХРАНИТЬ"), 5, 24);
                                          ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:737:32: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("БЕТА"), 5, 30); myGLCD.printNumI(beta_time, 55, 30); myGLCD.print(utf8rus("МИН."), RIGHT, 30);
                                ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:737:110: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("БЕТА"), 5, 30); myGLCD.printNumI(beta_time, 55, 30); myGLCD.print(utf8rus("МИН."), RIGHT, 30);
                                                                                                              ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:738:34: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(">", 0, sys_menu * 6);
                                  ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:739:40: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("СКОРОСТЬ"), 5, 40); myGLCD.printNumI(speed_nak, 40, 40); myGLCD.print(utf8rus("ИМП/СЕК"), RIGHT, 40);
                                        ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:739:124: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("СКОРОСТЬ"), 5, 40); myGLCD.printNumI(speed_nak, 40, 40); myGLCD.print(utf8rus("ИМП/СЕК"), RIGHT, 40);
                                                                                                                            ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino: In function 'void zamer_beta()':

C:\Program Files (x86)\Arduino\ardos\ardos.ino:780:41: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

 myGLCD.print(utf8rus("НАЖМИТЕ OK"), CENTER, 36);
                                         ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:809:41: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print(":", 5 + otsup, 0);
                                         ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:813:41: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print(" ", 5 + otsup, 0);
                                        ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:815:88: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

       myGLCD.printNumI(sek, 10 + otsup, 0); myGLCD.print("\xBC"":""\xB9", 23 + otsup, 0);
                                                                                        ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:820:39: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

     myGLCD.print(utf8rus("Замер0"), LEFT, 10); myGLCD.print(utf8rus("Замер1"), RIGHT, 10);
                                       ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:820:87: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

     myGLCD.print(utf8rus("Замер0"), LEFT, 10); myGLCD.print(utf8rus("Замер1"), RIGHT, 10);
                                                                                       ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:825:49: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

       myGLCD.print(utf8rus("Идёт замер"), CENTER, 30); myGLCD.printNumI(bet_z, RIGHT, 30);
                                                 ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:830:48: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

       myGLCD.print(utf8rus("Результат"), CENTER, 30);
                                                ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:831:76: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

       myGLCD.printNumI(bet_r, CENTER, 38); myGLCD.print(utf8rus("мкР/ч"), RIGHT, 38);
                                                                            ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino: In function 'void eeprom_wrS()':

C:\Program Files (x86)\Arduino\ardos\ardos.ino:1175:44: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

   myGLCD.print(utf8rus("Сохранено"), CENTER, 20);
                                            ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino: In function 'void ind_doze_time()':

C:\Program Files (x86)\Arduino\ardos\ardos.ino:1274:35: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print("M", 13, 26);
                                   ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1278:34: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print("M", 9, 26);
                                  ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1282:34: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print("M", 5, 26);
                                  ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1287:36: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

         myGLCD.print("\xBB", 26, 26);
                                    ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1291:36: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

         myGLCD.print("\xBB", 23, 26);
                                    ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1299:37: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print("\xBB", 9, 26);
                                     ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1303:37: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print("\xBB", 5, 26);
                                     ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1308:38: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print("\xBA", 26, 26);
                                      ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1312:38: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print("\xBA", 23, 26);
                                      ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1320:37: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print("\xBA", 9, 26);
                                     ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1324:37: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print("\xBA", 5, 26);
                                     ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1329:38: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print("\xBC", 26, 26);
                                      ^
C:\Program Files (x86)\Arduino\ardos\ardos.ino:1333:38: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

           myGLCD.print("\xBC", 23, 26);
                                      ^
Скетч использует 21250 байт (69%) памяти устройства. Всего доступно 30720 байт.

Глобальные переменные используют 1543 байт (75%) динамической памяти, оставляя 505 байт для локальных переменных. Максимум: 2048 байт.

Недостаточно памяти, программа может работать нестабильно.

Произошла ошибка при загрузке скетча

Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
"Показать подробный вывод во время компиляции"

 

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

Romka5110 - ИДЕ не видит плату...

tekagi
tekagi аватар
Offline
Зарегистрирован: 07.10.2016

Romka5110, АрдуиноИДЕ не видит плату. Проверяйте наличие драйвера под переходник CH340 (это не программатор, а конвертер юсб>юарт), проверяйте правильно ли выставлен номер виртуального ком-порта в настройках ИДЕ, верно ли подключены проводники к ардуинке. Пробуйте записать любой пример из штатных.

Смотрите номер виртуального ком-порта в диспетчере устройств.

Обратите внимание, выводы RX и TX при подключении перекрещиваются (RX переходника к TX ардуинки и наоборот).

Если переходник без вывода DTR - в момент, когда заканчивается компиляция и ИДЕ начинает процесс загрузки прошивки в микроконтроллер нужно кратковременно нажать ресет на ардуинке. Поймать этот момент не так легко, может понадобиться несколько попыток.

Romka5110
Offline
Зарегистрирован: 19.06.2020

Всем спасибо! Дальше настройка)))

ivancheg8
Offline
Зарегистрирован: 20.02.2017

установил наконец-то прошивку. пытался прошить pl2303 загрузчик не получилось, правильно я понял, что надо usbasp прошивать?

в статистике время замирает, чтобы обновилось, надо сначала в дозе сбросить счёт.

можно ли в быстром меню картинки поменять местами? вниз, ок, вверх. в файле resources.c что-то подвинуть надо?

не очень удобно настраивать отдельной программой, мне надо почти полностью разобрать прибор (это не претензия, просто заметка, я понимаю что памяти мало)

ivancheg8
Offline
Зарегистрирован: 20.02.2017

.

tekagi
tekagi аватар
Offline
Зарегистрирован: 07.10.2016

ivancheg8 пишет:
пытался прошить pl2303 загрузчик не получилось, правильно я понял, что надо usbasp прошивать?

Да. Через USBasp из АрдуиноИДЕ или через любой ICSP программатор отдельной софтиной хексом. Дисплей и счётчик на время прошивки снять. После заливки загрузчика далее можно снова шить по переходнику юсб2ком.

Для заливки через ИДЕ, скорее всего,  придётся заморочиться с драйверами и задигом.

Wik
Offline
Зарегистрирован: 10.11.2019

mambavamba14 -  в архиве что-то утилиты не видать... или куда то не туда смотрю?

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

ivancheg8 - Прошивать загрузчик не обязательно, на данный момент все будет шиться и работать на любом загрузчике.

В статистике отображаются сохраненные в память время и доза, те до момента сохранения(полного заполнения бара и его обнуления в дозе) данные в статистике не меняются и соответственно при сбросе текущей дозы она уходит в память.

Это не картинки а одна картинка размером 84х8(fast_down_img[]), если нужно другое расположение то придется перерисовать и заменить битмап-карту.

Если вы уже знаете свои параметры преобразователя и опорного, достаточно их вбить при прошивке и ничего менять не придется, но если это так уж сильно нужно, то в прошивке 1.6.5 эта возможность осталась и на данный момент 1.6.5 и 1.7.0 по части дозиметра не отличаются. Утилита нужна для отладки нового устройства, тк иногда в процессе подбирая коеф.делителя и значение АЦП приходится по несколько раз прошивать у-во чтобы изменить эти параметры, да и в общем утилита направленна на упрощение этого процесса по средствам автоматической подстройки этих параметров, когда от пользователя требуется всего ввести номиналы резисторов и напряжения с мультиметра.

Wik - Она теперь по отдельной ссылке в том же посте #4225 только ниже. https://yadi.sk/d/Whzl3NczZ9IJ8A

Wik
Offline
Зарегистрирован: 10.11.2019

mambavamba14 - Пардон, не доглядел))) По началу было же все в одном архиве)

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

Wik - Решил разделить, тк из-за множества версий уже получается какое-то месево... а по папкам если разделить, то уже мне будет не удобно обновлять архив))

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

alexadresat - А зачем в статистике менять время на такой же формат с секундами?? Все равно там же показания статичны... Мб тогда в дозе с сек. а в статистике без?

И ещё бы былоб неплохо накидать какой-нить дизайник для разностного замера...Хотяб примерно где что должно располагаться, а то мне что-то пока ничего путного в голову не приходит, кроме как в баре название "замер"...

ivancheg8
Offline
Зарегистрирован: 20.02.2017

mambavamba14 fast_down_img[] это нижняя картинка со стрелочками? а картинка с фонариками и выключателем это какая? мне нужно "стрелочку вверх" и "ок" поменять местами, соответственно картинки тоже.

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

ivancheg8 - Да, это нижняя картинка со стрелками и ок. "fast_flash_img[]" - фонарик, "fast_light_img[]" - подсветка, "fast_power_img[]" - выкл.питания. У вас перепутаны местами клавиши? Или для чего это?

ivancheg8
Offline
Зарегистрирован: 20.02.2017

mambavamba14 картинки местами я поменял, но не получается конвертнуть картинку. использовал программу LCDAssistant, но получаются кракозябры. я поле с ноликами тупо скопировал и заменил. подскажите, какой программой вы делаете, я ещё попробую.

У меня изначально в ардосе так: влево-ок-вправо. там было неважно, как разместить. у меня своя плата, делал под корпус элат сим-03

//------------------------------------------------------------------------------
// File generated by LCD Assistant
// http://en.radzio.dxp.pl/bitmap_converter/
//------------------------------------------------------------------------------

const unsigned char Безымянный [] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x18, 0x00, 0x07, 0x92,
0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x30, 0x00, 0x04, 0x84, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x18,
0x60, 0x00, 0x04, 0x98, 0x00, 0x00, 0x66, 0x00, 0x00, 0x0C, 0xC0, 0x00, 0x04, 0x98, 0x00, 0x00,
0xC3, 0x00, 0x00, 0x07, 0x80, 0x00, 0x04, 0x94, 0x00, 0x01, 0x81, 0x80, 0x00, 0x03, 0x00, 0x00,
0x07, 0x92, 0x00, 0x03, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 
};

 

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

ivancheg8 - Картинки делаю в программе "Image generate". Про "LCDAssistant" не слышал, поэтому с ней помочь не могу.

А так вот держите, сдвинул битмап-карту как выше вы и писали "вниз, ок, вверх".

static const uint8_t fast_down_img[] PROGMEM = {
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0xF9, 0xF3, 0xE7,
  0xCF, 0x9F, 0x9F, 0xCF, 0xE7, 0xF3, 0xF9, 0xFD, 0xFF, 0xFF, 0xFF, 0xFF,
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
  0x81, 0xBD, 0xBD, 0x81, 0xFF, 0xFF, 0x81, 0xE7, 0xDB, 0xBD, 0xFF, 0xFF, 
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
  0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0x9F, 0xCF, 0xE7, 0xF3, 0xF9, 0xF9, 0xF3, 
  0xE7, 0xCF, 0x9F, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
};

 

ivancheg8
Offline
Зарегистрирован: 20.02.2017

mambavamba14 спасибо большое! я поискал программы, это первая попавшаяся. Image generate сохранил, поковыряю её.

а пока всё работает, глюков не заметил. про время и дозу алгоритм понял. осталось только вибру прикрутить и фонарик.

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

mambavamba14 - Привет! Просто думал чтоб все однотипно было. Делай только в Дозе, а в Статистике пусть остается...

Pav_13
Offline
Зарегистрирован: 21.05.2020

mambavamba, по поводу режима «замер» (кстати, название мне такое же в голову приходило):

дизайн сделать как режим «фон», только вверху перед большими цифрами надпись «замер 1», 

большие цифры дозы, динамическая полоска, отображающая время замера, и в нижней строке «старт» и «далее».

После запуска замера1 бежит полоска и бегут цифры, по окончании времени и полоска и цифры фиксируются в максимальном значении.

После нажатия «далее» такое же окно « замер 2».

После второго замера и нажатии «далее» окно «результат» и внизу выбор «повтор» и «выход» .

(рисовать сейчас не могу...)

mambavamba14
mambavamba14 аватар
Offline
Зарегистрирован: 25.12.2019

alexadresat - Хорошо, сделаю.

Pav_13 - Неплохая идея, но я вот все думаю мб как-то все это дело уместить на одном экране(без кнопок далее и начать), а замер начинать останавливать по нажатию/удержанию одной из кл.

Да кстати, я тут все думал, мб на перемещение по режимам оставить одну кнопку(например вверх), а другую освободить для дополнительных действий/задач(как например в режиме поиск нажатие на кл.вниз - пауза графика, удер.кл.вниз сброс графика) и тд. по остальным экранам?

Pav_13
Offline
Зарегистрирован: 21.05.2020

Я тоже про один экран думал, но, боюсь, тесновато будет... сокращений много будет... в кнопках путаться...

Прикинуть надо...

Короче, начинай, а там «Толкач муку покажет!» (поговорка) :)

 

 

Wik
Offline
Зарегистрирован: 10.11.2019

По поводу кнопок хочу сказать, может быть я и не прав, но как по мне в меню "настройки" (да и в остальных меню) при движении по пунктам меню, кнопки "вверх" и "вниз"  так и просятся поменяться местами. То-есть кнопка "вверх" (она же "вперед" >) на мой взгляд должна переводить курсор к следующему пункту меню, т.е. вниз, а кнопка "вниз" (она же "назад" <) наоборот поднимать курсор. По логике чтения книги каждая последуюшая строка находится все ниже.. (т.е. движемся "вперед"  - вниз, и "назад" - вверх). Надеюсь ясно выразился.

alexadresat
alexadresat аватар
Offline
Зарегистрирован: 22.02.2017

Wik - вверх по лестнице ведущий в низ...

Wik
Offline
Зарегистрирован: 10.11.2019

alexadresat - возможно звучит абсурдно... я имел ввиду движение по пунктам, а не изменение величин в этих пунктах. 

Как, допустим, нумеруется любой список?  начиная с первого пункта, который находится вверху и далее к низу, как ни странно, число пунктов увеличивается "вверх")))  

tekagi
tekagi аватар
Offline
Зарегистрирован: 07.10.2016

Согласен с alexadresat - не надо вводить путаницу. Где-то в десяти-пятнадцати процентах промышленных контроллеров малой автоматизации в меню применён подобный принцип вверх-вниз (в остальных вполне нормально и логично), и это жутко бесит. Мы двигаем курсор по экрану, а не списку. К подобным отклонениям от общепринятого антипатия ещё со времён игр на первой соньке, когда девелоперы меняли принцип направления на вращение.