Файл: С чего начинаются роботы. О проекте Arduino для школьников (В.Н. Гололобов, 2011).pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 16.06.2025
Просмотров: 1218
Скачиваний: 3
Глава 7. Отладка программы на виртуальной плате
Рис. 7.5. Выбор версии Arduino для работы с программой
Сочетание, например, vbb-4.2.8 и arduino-0022 мне в операционной системе Vista SP2 заставить работать должным образом не удалось. Это относится к использованию возможности программы VirtualBreadboard программировать модуль Arduino непосредственно, без перехода в программу Arduino. В остальном же, видимо, не возникнет проблем и при использовании последней на сегодня версии.
Проделав все загрузки программ, собрав всё нужное в удобном вам месте, вы можете столкнуться с ещё одной проблемой при попытке загрузить программу в модуль Arduino.
Кстати, ещё одна функция программы весьма полезная. К полезным функциям я отнёс бы и возможность работать с разными модулями, и возможность работать с PIC-контроллерами. Я не советую начинающим «прыгать» от модуля к модулю, от контроллера одного производителя к контроллеру другого. Но это будет полезно, когда вы освоитесь с первыми (и последующими) шагами и захотите создавать свои конструкции, разрабатывать свои программы.
Вернёмся к установке и работе с программой VirtualBreadboard, которую я считаю очень полезной, особенно для начинающих. Потратив некоторое время на её установку, вы не пожалеете. Итак.
63
Глава 7. Отладка программы на виртуальной плате
Рис. 7.6. Сообщение о проблемах в работе программы
Программа сообщает, что не может записать нужные ей файлы в директорию Arduino. Не могу сказать, столкнётесь ли вы с этой проблемой в Windows XP, некоторые считают, что можете столкнуться, но в Windows Vista я столкнулся (видимо, и в Windows 7 это будет иметь место). Операционная система защищена от несанкционированного изменения файлов. В данном случае работает эта защита. Её можно отключить, я пробовал, но потом долго и не без труда включал эту защиту – весь процесс получился столь долгим, что у меня, просто, не хватало терпения дождаться, когда оживёт операционная система, которая на мою просьбу перейти в диалог включения защиты задумалась…
Есть ещё одна причина, по которой я не советую снимать защиту – ослаблять защиту Windows, это, знаете, себе дороже. Я сейчас использую бесплатную версию антивирусной программы Avira. В последнее время её усовершенствовали, она проверяет компьютер до подключения его к сети, доступ к Интернету закрыт, и длится это долго. Я, конечно, злюсь, но вспоминаю, как много лет назад, переустанавливая Windows, я не поставил антивирусную программу. Решив, что вначале я поменяю разбивку жесткого диска, я запустил программу… В то время был такой вирус, который самопроизвольно перезагружал компьютер. В результате жёсткий диск оказался испорчен, и я с большим трудом восстановил только некоторые, самые необходимые для работы, файлы. Злись, не злись, но лучше не снимать защиту с компьютера. Может быть, хотя и не факт, по этой причине я в основном работаю в Linux, обращаясь к Windows в случаях, подобных сегодняшней необходимости описать работу с VirtualBreadboard.
Но, что же делать? Перед запуском (или получив такое сообщение, когда вы нажали клавишу «Program» в верней части окна) следует проделать несложную операцию: в проводнике перейти к папке, которую вы создали и назвали arduino; щёлкнуть по ней правой клавишей мышки…
64
Глава 7. Отладка программы на виртуальной плате
Рис. 7.7. Доступ к свойствам папки
В открывающемся меню выберите раздел «Свойства». Открывается диалоговое окно свойств папки.
Рис. 7.8. Изменение свойств папки
Как вы видите, папка «Только для чтения». Такое свойство помогает защитить программы и файлы от несанкционированного изменения. Но нам нужно снять эту опцию – щёлкнуть левой клавишей мышки по синему квадратику рядом с надписью. Откроется следующее окно диалога.
65
Глава 7. Отладка программы на виртуальной плате
Рис. 7.9. Подтверждение изменения свойств
Достаточно нажать выделенную кнопку «ОК», что закрывает диалог, нажать кнопку «Применить» в следующем окне, дождаться пока завершится процесс разблокирования файлов, и нажать кнопку «ОК», когда кнопка «Применить» перестанет быть активна.
Теперь, в программе VirtualBreadboard клавиша «Program» запускает загрузку модуля, о чём можно судить и по активному миганию светодиодов, работающих с COM-портом (виртуальным) компьютера.
Рис. 7.10. Правильная работа программы Если вы последовали моему совету, то, как проверить, что всё у вас получилось?
66
Глава 7. Отладка программы на виртуальной плате
Я не буду ничего придумывать, я перескажу только то, что увидел на видеоролике, размещённом на сайте проекта.
Как советует автор, запускаем программу и выбираем нужный пример.
Рис. 7.11. Выбор одного из примеров в начальном диалоге
Открываем его, нажав на кнопку «Open». Мы можем проверить работу программы, запустив моделирование кнопкой на инструментальной панели (отмечена на рисунке ниже).
Рис. 7.12. Основное меню и инструментальные панели программы
Убедившись, что светодиод мигает с частотой раз в секунду, мы должны сохранить проект. Для этого используем в разделе основного меню «File» пункт «Save as…, сохранить как».
67
Глава 7. Отладка программы на виртуальной плате
Рис. 7.13. Содержание раздела File основного меню
При этом открывается диалоговое окно, в котором обратите внимание на выделенный мною фрагмент.
Рис. 7.14. Создание папки проектов при первом сохранении
Этой папки пока у вас нет. Она будет создана, когда вы нажмёте кнопку «ОК».
Теперь обратимся к правой части рабочего окна программы. Туда, где отображаются все компоненты проекта.
Рис. 7.15. Окно менеджера проекта
Щёлкнув по выделенной папке проекта правой клавишей мышки, выбираем из выпадающего меню вначале пункт «Code Generators», что открывает подменю, затем в нём пункт «Add New Arduino Code Generator, добавить новый Arduino генератор кода».
68
Глава 7. Отладка программы на виртуальной плате
Рис. 7.16. Выбор генератора кода
После этого «дерево» проекта несколько изменится.
Рис. 7.17. Изменение вида дерева проекта
Подцепите этот появившийся элемент мышкой и перенесите его к верхней кромке окна с рисунком модуля. Там его и «сбросьте».
Рис. 7.18. Перенос «генератора кода» в рабочее окно
Вид рабочего окна изменится. А, если щёлкнуть по этому элементу в дереве проекта дважды левой клавишей мышки, то ниже появится окно свойств. Следующие шаги, которые нам предстоит выполнить, это указать место расположения программы Arduino и выбрать свою модель модуля Arduino. Для указания места расположения служит кнопка «Browse», а модуль выбирается из выпадающего списка, когда вы нажмёте кнопку со стрелкой рядом с окошком модели, озаглавленным «Arduino Board:». Как видно из списка, программа работает со многими модулями.
69
Глава 7. Отладка программы на виртуальной плате
Рис. 7.19. Выбор модели модуля Arduino
Далее двойным щелчком в дереве проекта по компоненту Source0.SRC мы откроем его свойства (в окошке ниже), где должны выбрать генератор кода (отмечены на рисунке).
Рис. 7.20. Настройка исходного кода
После выбора в окне свойств рядом с «Code Generator» появится нужный нам вариант. Следующая процедура – трансляция исходного кода. Проще всего это сделать с помощью
отмеченной на рисунке кнопки на инструментальной панели.
70
Глава 7. Отладка программы на виртуальной плате
Рис. 7.21. Окончание настроек генератора кода Остаётся указать порт для связи с модулем…
Рис. 7.22. Порт связи компьютера с модулем Arduino
…и можно нажать, наконец, кнопку «Program».
Рис. 7.23. Загрузка программы в модуль из VBB
Мой модуль Arduino, надеюсь, что и ваш, начинает весело мигать всеми своими светодиодами.
71
Глава 8. Немного больше о программе VirtualBreadBoard
Глава 8. Немного больше о программе VirtualBreadboard
Хорошо, мы установили эту программу. Мы отладили «механизм» работы с модулем. И посмотрели несколько примеров. Но хотелось бы и самим создавать что-то полезное. Попробуем.
Сначала закроем предыдущий проект. Для этого в разделе «File» основного меню выберем пункт «Close Solution». Затем, например, на инструментальной панели выберем кнопку создания нового проекта.
Рис. 8.1. Создание нового файла кнопкой инструментальной панели
Можно использовать и основное меню, где в разделе «File» есть пункт «New», а можно использовать «горячие» клавиши клавиатуры «Ctrl+N». Кому, как нравится. В появившемся диалоговом окне выбираем «New Project».
Рис. 8.2. Предупреждение о необходимости сохранить проект
Сообщение, которое вы видите на рисунке, получено при попытке добавить модуль Arduino в проект – необходимо перед этим сохранить проект, дав ему имя (или оставив то, что задано по умолчанию). Команды сохранения проекта, конечно, отыщутся в разделе «File» основного меню. А в окне открывающегося диалога можно изменить при желании имя проекта.
72
Глава 8. Немного больше о программе VirtualBreadBoard
Рис. 8.3. Окно задания имени проекта
После сохранения проекта выберем на левой панели компонентов тот, что назван Arduino, щелчком левой клавиши по значку «+» раскроем меню и выберем (хотя он там и единственный) «ArduinoStandart». Чтобы его перенести в рабочее поле, достаточно щёлкнуть по нему левой клавишей мышки и курсор мышки переместить в нужное место, где щёлкнуть мышкой ещё раз.
Рис. 8.4. Выбор модуля Arduino в разделе компонентов программы
Чтобы повторить предыдущую программу, а повторение, как известно, мать учения, я хочу добавить светодиод. Его можно найти среди компонентов программы под заголовком «UserIO”.
73
Глава 8. Немного больше о программе VirtualBreadBoard
Щёлкнув по отмеченному «Led1» левой клавишей мышки, переносим компонент к модулю так, чтобы его нижний вывод попал в гнездо под номером 13. Следующий щелчок мышки оставляет светодиод на месте.
Рис. 8.5. Место расположения других компонентов, подключаемых к модулю
Рис. 8.6. Подключение светодиода к модулю
Чтобы что-то заработало, полагаю, нам нужно добавить исходный код программы. С этой целью обратимся к дереву проекта, где щелчком по «New Project» правой клавишей мышки вызываем меню.
Напомню, в разделе «Source Projects» из подменю выбираем исходный код для проекта
Arduino.
74
Глава 8. Немного больше о программе VirtualBreadBoard
Рис. 8.7. Выбор типа исходного кода программы
В окне диалога можно изменить имя заголовка кода, но можно оставить заданное по умолчанию.
Рис. 8.8. Окно ввода имени для модуля кода
Ещё раз обратимся к дереву проекта, где появившийся заголовок, если по нему щёлкнуть правой клавишей мышки, предоставит возможность создать файл программы.
Рис. 8.9. Добавление нового файла программы
Аналогичное диалоговое окно позволяет дать файлу своё имя (или оставить то, что есть). Сохраним все, используя кнопку сохранения на инструментальной панели. Она находится правее кнопки открывания файла. После сохранения закроем проект. Вы помните – это «File-Close Solution». Повторно мы его открываем используя кнопку «Открыть» инструментальной панели или «File-Open». Теперь нас в диалоговом окне интересует закладка «Existing, существующие». Проект открывается в том же виде, что мы оставили, когда выходили из проекта. За одним исключением.
75
Глава 8. Немного больше о программе VirtualBreadBoard
Рис. 8.10. Программа с окном редактора текста программы
Текст программы, согласен, можно ввести вручную, но, и этим я воспользуюсь, можно просто скопировать и вставить из файла примера Arduino или файла этой программы.
Рис. 8.11. Добавление текста в шаблон программы
Выделим плату модуля щелчком левой клавиши мышки. И, пока не забыл, программа имеет разные режимы работы. Для выбора режима выделения используйте кнопку инструментальной панели.
76
Глава 8. Немного больше о программе VirtualBreadBoard
Рис. 8.12. Кнопка выделения на инструментальной панели
Выделив плату, обратим внимание на окно свойств. Откроем свойство модуля (компонента), названное «Application», щелчком в окне рядом и выберем…
Рис. 8.13. Окно свойств программного модуля Arduino
Иначе при попытке запустить моделирование вы получите сообщение.
Рис. 8.14. Сообщение, что не выбран автоматический режим работы с модулем
А выполнив изменение свойств приложения, мы можем видеть работу программы.
77
Глава 8. Немного больше о программе VirtualBreadBoard
Рис. 8.15. Запуск моделирования программы
А если мы продолжим выполнение операций по подготовке к загрузке, как это было описано ранее, и согласимся (после нажатия на клавишу «Program») создать папку для кода программы, то сможем загрузить программу в модуль Arduino. Разумно при этом было бы изменить время в строке с 1000 на:
delay(5000);
Это сделает более заметной разницу. И не забудьте транслировать код программы перед загрузкой.
Мы не использовали готовую программу. Мы создали всё сами. Теперь мы можем создавать другие программы. Но для этого следует лучше узнать элементы программы. Начнем с основного меню. Первый раздел «File», конечно предназначен для работы с файлами.
Рис. 8.16. Содержание раздела File основного меню
Практически обо всех пунктах этого раздела мы говорили: New… – новый проект; Open… – открыть проект; Close Solution – закрыть проект; Save – сохранить проект; Save as – сохранить как; Exit – выйти.
Рис. 8.17. Содержание раздела Edit основного меню
Этот набор команд относится к редактированию. Здесь тоже все команды привычны: Undo – отмена последних изменений; Copy – копировать выделение; Paste – вставить скопированное;
78