Важные критические замечания участника tonyk1. Дракон- это графический язык программирования. А где графическая отладка? Я её не заметил. Ведь если вы можете по графической схеме построить исполняемый код, так постройте его для виртуальной Дракон-машины, чтобы можно было его тут же, в среде программирования, запустить и отладить.
2. в процессе отладки значения всех переменных должны отображаться прямо на схеме программы.
3. необходимо иметь возможность отладки и на "железном" контроллере, наблюдая значения переменных и имея возможность их изменять.
4. Как это выглядит и работает, можно посмотреть в любой среде разработки для ПЛК на примере графических языков FBD, LD, SFC.
5. Будь симулятор и графическая отладка, Дракон можно было бы встраивать в МК, получая полноценный ПЛК.
6. Ребята, вы в тупике. И будете в нём до тех пор, пока не появится текстовый формат языка Дракона.
7. нужен формат обмена отладочной информацией между средой программирования и исполнения.
8. Обязательно нужны расширения языка для взаимодействия с оборудованием целевой платформы, например, обработчики прерываний, запись-чтение в регистры управления периферийными устройствами и т.п.
9. Пока сделайте главное, дайте описание текстового формата Дракона в БНФ.
10. Мне нравится концепция Дракона, будь у Дракона то, о чём я написал (текстовый формат, протокол обмена с рантаймом и т.п.), с удовольствием занялся бы переносом его на ПЛК.
11. на Дракон вообще не предусмотрена работа с периферией контроллеров.
12. Нет даже упоминаний о низкоуровневой работе с регистрами периферии целевого контроллера, нет понятия "функциональный блок".
13. Не заметил возможности написания фрагментов программы на языках низкого уровня, например, С/С++ или ассемблер.
14. Каждый новый редактор Дракона хранит файлы в своём формате, поэтому для каждого нового редактора его автор создаёт свой формат. В итоге всё, что было создано ранее в других редакторах невозможно открыть в новом. Сравните ситуацию с текстами программ на Паскале и Си, которые даже сегодня, по прошествии десятков лет после их написания, можно скомпилировать и запустить на выполнение.
15. Как проверить правильность работы нарисованной Дракон-схемы? Сейчас- никак. Сравните со средами разработки для ПЛК, в которых всегда есть симулятор, поэтому даже без загрузки программы в реальный ПЛК можно проверить работу алгоритма. Я уже не говорю о том, что в симуляторе обязательно есть отладка, чем даже не пахнет в Драконе. Парадокс: Дракон декларируется как язык создания надёжных алгоритмов, но сам не имеет средств для проверки правильности этих алгоритмов. Я 70-80% времени при отладке трачу на работу в симуляторе, а оставшееся время на работу с реальным "железом" и то, в основном, на подбор таймингов.
16. Толку от красивой Дракон-схемы, которую нельзя проверить без загрузки на исполнение на реальном "железе", будет чуть больше нуля, поэтому, ИМХО, нужна проверка правильности её работы.
17. я не увидел в Дракон-редактора явно функции создания модулей программы и многолистовых схем. Про отсутствие нормальной печати с разбивкой на листы, на которых автоматически расставлены межлистовые ссылки, уже писал тут:
viewtopic.php?f=62&t=6996&start=160.
18. цель- это получить Си-файл с привязкой к Дракон-схеме и научиться синхронно "шагать" по Дракон-схеме и Си-файлу. Научитесь - получите основу для создания полноценной DragonIDE, нет - будет очередная рисовалка картинок с функцией генерации никому не нужного Си-файла.