В данной статье я хочу рассказать о своих впечатлениях при работе с программой Flowcode. Это среда разработки, позволяющая составлять программу в виде обычной блок-схемы. Соответственно, мы можем иметь лишь поверхностные навыки в программировании, которые сводятся к составлению нужного алгоритма и, соответственно, блок-схемы. Flowcode генерирует С код, а также компилирует его в .hex файл, который можно сразу же прошить в контроллер или, к примеру, смоделировать в Proteus'е.
Существует две версии программы: для AVR и для PIC. Они имеют в целом одинаковый интерфейс, за некоторым исключением. Изначально все это разрабатывалось для PIC, а уже потом портировалось под AVR.
Ознакомимся поверхностно с программой и ее использованием. Следует признать, что русификация очень
Основное окно программы:
Содержание статьи / Table Of Contents
Вверху стандартное меню, а вот ниже все намного интереснее. В меню "Объекты", "Обычные" и т.д. находятся готовые модули, которые можно применять в программе. Например, через "Объекты" можно нарисовать линию, фигуру, написать текст. Через "Коммуникации" - присоединить интерфейсы (SPI, I2C, CAN и др.)
Слева находится панель с элементами блок-схемы - циклы, ветвления, и прочее безобразие. Именно с помощью нее будет создаваться будущая программа. Основное поле Flowcode имеет вкладки. Изначально, при создании нового проекта, вкладка всего одна и называется "Главная"("Main"). Это тело основной программы. Если мы пожелаем создать подпрограмму (здесь они называются макросами, но при русификации в некоторых местах забыли приписать буковку С и получилось "Макро" ), то каждый макрос будет в своей вкладке.
Ниже находится еще одно большое поле, называемое "Панель". Здесь размещаются элементы, которые мы применяем при создании программы (например, это может быть ручка эмуляции АЦП, 7-сегментный или ЖК-дисплей)
В целом, интерфейс достаточно прост, и в программе легко разобраться с первой попытки запуска. При создании нового проекта Flowcode предложит разработчику выбрать модель контроллера, а также в меню Вид-Настройка проекта нужно выставить частоту, на которой будет работать контроллер.
Ну, в принципе все! Сказать можно многое, но интереснее попробовать.
↑ Небольшой урок по созданию простейшей программы
А создавать мы будем.. хм... двоичный счетчик, инкрементируемый по нажатию кнопки. При достижении 8 счетчик обнуляется.Создаем новый проект и выбираем микроконтроллер Atmega8. Можно в принципе любой другой, но я использовал именно его, поэтому порты и выводы будут описаны применительно к этому контроллеру.
Теперь создадим элементы которые нам нужны для работы: это кнопка и 4 светодиода.
Для создания кнопки щелкаем Входы, выбираем SWITCH.
В нижней панели появится тумблер, что не страшно. Если щелкнуть правой кнопкой по тумблеру, то можно попасть в контекстное меню и выбрать Расширенные свойства и там настроить как нужно.
Например так:
Также, в контекстном меню кнопки выбираем Соединения и приделываем кнопку к порту С и выводу 0.
Похоже на это, только вместо АЦП будет кнопка.:
Аналогично подключаем каждый светодиод, но уже к портам B0, B1, B2, B3. Светодиод ищем в пункте Выходы.
Окончательный результат выглядит аналогично этой картинке:
Также необходимо создать всего две переменные: count и button. Обе типа BYTE.
Первая - это сам счетчик, она будет меняться от 0 до 8 в процессе счета. Вторая - может быть 0 или 1, она показывает, нажата ли кнопка.
Создаются следующим образом:
Правка - Переменные, в открывшемся окне создаем новую переменную.
Далее собираем следующую блок-схему:
В картинке я дописал комментарии, что для чего нужно. Все очень-очень просто
Все используемые элементы берутся из левой панели программы (это где много желтеньких значков)
После сборки запускаем. Светодиоды по нажатию кнопки должны выдавать двоичное 4-битное число.
Уфф... Вроде ничего не забыл...
↑ Файлы
Прикрепляю архив с программой, сделанной через эту среду + файл протеуса, кому интересно посмотреть.🎁voltamp.rar 37.87 Kb ⇣ 306
↑ Вывод
Думаю, программа заслуживает внимания.Особенно интересна она для тех, кто как и я не знает С или Ассемблер на хорошем уровне.
Спасибо всем, кто не устал читать мою писанину, удачи! :hi:
Камрад, рассмотри датагорские рекомендации
🌼 Полезные и проверенные железяки, можно брать
Опробовано в лаборатории редакции или читателями.