ЭкоСреда ecoins
Добавлено: 30 мар 2023, 13:03
[ref]pipapsix[/ref], попробуйте блоки из простого редактора.
У меня на блоках nxt из проф редактора тоже ошибки были.
У меня на блоках nxt из проф редактора тоже ошибки были.
Пример из простого редактора я проверил, компилируется, хотелось начать с чистого листа , так сказать.WildCat писал(а): 30 мар 2023, 13:03 [ref]pipapsix[/ref], попробуйте блоки из простого редактора.
У меня на блоках nxt из проф редактора тоже ошибки были.
Благодарю за внимательность и поддержку этих блоков.pipapsix писал(а): 30 мар 2023, 12:15 Добрый день. Выскакивает такая ошибка. И блоки и библиотеки последние, загрузил сегодня.
[spoiler=Может я чего-то не понимаю?] [/spoiler]ecoins писал(а): 30 мар 2023, 14:21 Пока нет ясного понимания когда и в каком виде Nextion будет интегрирован в штатные блоки, и будет ли интегрирован.
У ecoins своя реализация Nextion - другой подход.
х10, передать int, на стороне nxt использовать вывод float (x.val) .
Внутри блока Float преобразование v=(int32_t)float х 100.pipapsix писал(а): 30 мар 2023, 15:35 Просто в новых блоках увидал передачу ФЛОАТ, думал использовать.
Сейчас пока разбираюсь с прошлыми блоками, запустил, работает, не соображу как с запятой передать,.
Так не получилось, оказывается там еще переменная появилась xfloat она позволила вывести без делений.
Завтра попробую тест выложить - какой у Вас контроллер и размер и тип Nextion?pipapsix писал(а): 30 мар 2023, 17:07 Так не получилось, оказывается там еще переменная появилась xfloat она позволила вывести без делений.
.Да будет очень интересно и полезно увидеть Ваш вариант. У меня получилось вывести показания с минимум лишних движений и действий. Разбираюсь дальше.ecoins писал(а): 30 мар 2023, 22:25 Завтра попробую тест выложить - какой у Вас контроллер и размер и тип Nextion?
Давайте попробуем разобрать Ваш вопрос и после этого вместе подберем решение:vlad1451 писал(а): 06 апр 2023, 14:30 Всем доброго времени суток. Может вопрос не по теме. Использую в проекте вывод настроечных данных в консоль. Для проекта создаётся приложение для ПК, использую Delphi. Вопрос в следующем, как отсортировать получаемые данные? Судя по получаемым данным в терминал, разделитель на строки 0A(#10). Как в принимаемой программе осуществить перевод строк, пока не получается. Процедур вывода с Com порта в Memo в сети полно, но как отловить символ конца строки?
Прошу прощения, вопрос конечно может и не для этого форума, может и я не так объяснил. Имеется небольшой стенд на Mega2560. Через блоки от ECOINS(диспетчер, консоль) данные о настройках платы (проекта) отправляю в Com порт ПК. Параллельно пишу программу для последующего общения с проектом, в данный момент используется как терминал. Использую Delphi 7,, приём данных в Memo. Код чтения с порта следующий:ecoins писал(а): 06 апр 2023, 15:16Давайте попробуем разобрать Ваш вопрос и после этого вместе подберем решение:vlad1451 писал(а): 06 апр 2023, 14:30 Всем доброго времени суток. Может вопрос не по теме. Использую в проекте вывод настроечных данных в консоль. Для проекта создаётся приложение для ПК, использую Delphi. Вопрос в следующем, как отсортировать получаемые данные? Судя по получаемым данным в терминал, разделитель на строки 0A(#10). Как в принимаемой программе осуществить перевод строк, пока не получается. Процедур вывода с Com порта в Memo в сети полно, но как отловить символ конца строки?
1.Что такое надстроечные данные? Это данные подобранные Вами, которые нужно отобразить на консоли? Или набор данных, которые выдают блоки в FLProg типа board->cns? Последние блоки выдают перечень пинов и пр. конкретного используемого контроллера.
2.Что такое консоль? В наших блоках это подразумевает "монитор порта" в Arduino IDE (символ лупы в правом верхнем углу) - его работу поддерживают программные средства Arduino IDE. Или Вы имеете вывод через USB непосредственно в Вашу программу?
3.Действительно в реализуемых блоками вывода на консоль, в качестве символа завершения вывода используется перевод строки LF '\n' - код 10 (0xA).
Возможно в Вашей реализации к коду \'n' надо программно добавить перевод каретки CR '\r' - код 13(0xD).
-------
Буду ждать от Вас уточняющих ответов.
С уважением, Энвер.
Не смущайтесь, другого способа донести друг другу не всегда понятное нет.vlad1451 писал(а): 06 апр 2023, 17:00 Прошу прощения, вопрос конечно может и не для этого форума, может и я не так объяснил.
По смыслу вроде все правильно делаете.vlad1451 писал(а): 06 апр 2023, 17:00 if CRLF.Checked and (S[Length(S)] = '0A') then // Добавление перевода строки
begin
S := S + #10;
end;
Данные комбинации (13 и 0xD) пробовал, эффект тот же. И не форумах в сети тишина, как будь то язык умер.ecoins писал(а): 06 апр 2023, 17:21Не смущайтесь, другого способа донести друг другу не всегда понятное нет.vlad1451 писал(а): 06 апр 2023, 17:00 Прошу прощения, вопрос конечно может и не для этого форума, может и я не так объяснил.По смыслу вроде все правильно делаете.vlad1451 писал(а): 06 апр 2023, 17:00 if CRLF.Checked and (S[Length(S)] = '0A') then // Добавление перевода строки
begin
S := S + #10;
end;
Не уверен что Вы верно выделяете код очередного байта для проверки-> if CRLF.Checked and (S[Length(S)] = '0A')
Не уверен что Вы нужный код добавляете - нужно 13 или 0xD.
Возможно не обязательно добавлять к строке, а просто дослать на вывод еще один символ.
С уважением, Энвер.
В итоге нужно отправлять два кода 10,13 (0xA,0xD) - можно добавить такую опцию и непосредственно в библиотеку консоли, но пока таких планов нет.vlad1451 писал(а): 06 апр 2023, 18:19 Данные комбинации (13 и 0xD) пробовал, эффект тот же. И не форумах в сети тишина, как будь то язык умер.
На данный момент у меня других вариантов нет. Спасибо за понимание.ecoins писал(а): 06 апр 2023, 18:26В итоге нужно отправлять два кода 10,13 (0xA,0xD) - можно добавить такую опцию и непосредственно в библиотеку консоли, но пока таких планов нет.vlad1451 писал(а): 06 апр 2023, 18:19 Данные комбинации (13 и 0xD) пробовал, эффект тот же. И не форумах в сети тишина, как будь то язык умер.
Попробуйте все же решить проблему на стороне ПК.
С уважением, Энвер.