Тема посвящённая тестированию бэта версии седьмой линейки
ИсправилNaladchik писал(а): ↑29.05.2020{, 17:03}support
В новом редакторе блоков.
Если создать более одного входа (или выхода, или один вход и один выход, короче два элемента) и не заполнить их свойства (в дереве элементов отображаются красным), и при этом попытаться переключиться на основной экран программы, происходит вылет.1.zip
Отправлено спустя 19 минут 46 секунд:Мысль то дельная, кто создаст?
Я тут на две недели в обсервацию залетел. Так что время теперь есть. Я хочу в первую очередь подобрать ошибки, ну и паралельно пишу хелп.
Ничего не понял если честно, где кликаеш, на каком блоке (для RTC там как минимум три блока).
Исправил
ИсправилGordon0007 писал(а): ↑01.06.2020{, 13:26}viewtopic.php?f=39&t=6097&start=240#p88326
Так и не поправили watchDog на ESP32
от "ussrtk"Ошибка в работе Сторожевого таймера WDT (точно проверена на ESP32)
Суть ошибки: при включении защиты от зависания и установки времени контроля в 10 сек наблюдается мгновенное срабатывание защиты.
Вот код, генерируемый компоновщиком FlProg в части настройки WDT
watchDogTimer = timerBegin(0, 80, true);
timerAttachInterrupt(watchDogTimer, &resetModule, true);
timerAlarmWrite(watchDogTimer,10000, false);
timerAlarmEnable(watchDogTimer);
А вот код из документации:
void startTimer() {
timer = timerBegin(0, 80, true); // timer_id = 0; divider=80; countUp = true;
timerAttachInterrupt(timer, &onTimer, true); // edge = true
timerAlarmWrite(timer, 1000000, true); //1000 ms
timerAlarmEnable(timer);
}
Очевидно, что FlProg делает установку в миллисекундах, в то время, как по мануалу нужно писать микросекунды.
Если в коде компоновщика FlProg поставить
timerAlarmWrite(watchDogTimer,10000000, false);
Тогда все начнет работать по документации.
Код: Выделить всё
#include <LiquidCrystal.h>
LiquidCrystal _lcd1(2, 3, 4, 5, 6, 7);
int _dispTempLength1=0;
boolean _isNeedClearDisp1;
int _disp1oldLength = 0;
void setup()
{
_lcd1.begin(20, 2);
}
void loop()
{
if (_isNeedClearDisp1)
{
_lcd1.clear();
_isNeedClearDisp1= 0;
}
//Плата:1
if (false)
{
_dispTempLength1 = ((String(" m dgjdghjfhghgsh"))).length();
if (_disp1oldLength > _dispTempLength1)
{
_isNeedClearDisp1 = 1;
}
_disp1oldLength = _dispTempLength1;
_lcd1.setCursor(0, 0);
_lcd1.print((String(" m dgjdghjfhghgsh")));
}
else
{
if (_disp1oldLength > 0)
{
_isNeedClearDisp1 = 1;
_disp1oldLength = 0;
}
}
}
Код: Выделить всё
bool _isTimer(unsigned long startTime, unsigned long period)
{
unsigned long currentTime;
currentTime = millis();
if (currentTime>= startTime)
{
return (currentTime>=(startTime + period));
}
else
{
return (currentTime >=(4294967295-startTime+period));
}
ИсправилArdudue писал(а): ↑02.06.2020{, 17:04}support, этот проект для LCD1602 keypad shield пример шилд с 5 кнопками 1602_flp631.flp открываю в версии FLP631 и загружаю в UNO нажатие кнопок на шилде работает.
Если открыть в FLP701 и загрузить в UNO, то не работает нажатие кнопок на шилде.
Так и должно быть или это косяк FLP701?
Отправлено спустя 3 минуты 33 секунды:проверил в железе не работает. При загрузке ошибок не выдает.
Исправил
Исправил
Исправил
Исправил
Согласен. Но что-бы не повторять писанину по найденным багам, нужна версия с исправлениями на данный момент, т.е. 7.0.2
Постараюсь на днях выложить версию 7.0.2. Здесь просто очень плохо с интернетом
Во как! А 7.0.2 уже есть на сайте!
С кажите, а как Ваш блок "Детектор изменения состояния" сможет определить, что о измелилось на другое о ?
Она не битая. Попробуйте отправлять чисто буквенные символы, своё фио например и т.д.
Там очень старый пользовательский блок, который сделан ещё до появления в программе блокировки непосредственных связей. И как раз там такая связь.
я пока не знаю что с этим делать. Пока не придумал. Это недостаток старых пользовательских блоков, поэтому в новых я использовал тэги
конечно не так, проекта то нет. А экстрасенсы этот форум не читают = как много раз уже писали здесь.Pelletizer писал(а): ↑05.07.2020{, 21:20}Приём переменной по UDP на ESP32 в версии 7.02 так же не работает, может мы что то делаем не так?