Как можно легко анализировать большие программы Arduino?
У меня есть код проекта Arduino, но проблема в том, что он имеет множество функций и потоков управления.
Как преобразовать этот код в блок-схему или диаграмму потока управления?
Какое-либо программное обеспечение или веб-сайт?
@RAVI, 👍1
Обсуждение1 ответ
Хотя существуют программы, которые могут автоматически создавать некоторую документацию (например, doxygen), я до сих пор не видел программного обеспечения, которое могло бы создавать ПОЛЕЗНЫЕ блок-схемы или диаграммы. Основная причина в том, что такое программное обеспечение не знает, какие части важны, а какие нет.
Чтобы сделать это вручную:
Предполагая, что ваш код содержит несколько файлов, используйте приложение UML (унифицированный язык моделирования). Тогда, если используются классы, вы можете легко перенести их в UML, в противном случае предположим, что каждый файл (.c) является «классом».
Добавляя свойства/поля и методы (функции) и рисуя зависимости между классами/файлами, вы получаете хорошее представление о том, как все работает вместе.
это не то, что он спросил. ему нужна автоматически созданная блок-схема, @Juraj
@Юрай ... правда, я обновлю свой ответ., @Michel Keijzers
- avrdude ser_open() can't set com-state
- Float печатается только 2 десятичных знака после запятой
- ошибка: espcomm_upload_mem failed при загрузке скетча
- Печать массива байтов на экране последовательного монитора Arduino IDE
- Разные и самые быстрые способы вычисления синусов и косинусов в Arduino
- Arduino IDE Отказано В Разрешении На Загрузку, Ubuntu
- Нет заголовочных файлов (.h) в Documents\Arduino\libraries\arduino_144469 с демонстрационным кодом
- Связь Arduino master/slave с использованием RS485
Используйте doxygen и настройте полный контроль и структурируйте графики., @Mikael Patel
Похоже, вам следует пойти другим путем — сначала создайте блок-схему, а затем напишите код для ее выполнения., @CrossRoads
Да, блок-схемы на уровне вызова функций могут быть созданы с помощью doxygen (вызовы и вызывающие абоненты). Более подробную информацию можно найти здесь: https://romanegloo.wordpress.com/2012/03/29/generating-a-callgraph-by-using-doxygen-and-graphviz-13/., @Mikael Patel
Еще один инструмент для быстрого анализа кода — Source Monitor. Позволяет использовать «статистический» подход к навигации по коду. http://www.campwoodsw.com/sourcemonitor.html, @Mikael Patel
С уважением, как это вопрос про Ардуино? Тот же вопрос можно задать практически о любой большой программе на C++., @sempaiscuba