arduino в proteus

Proteus. Как добавить платы Arduino и получить прошивку hex в IDE

Наверное, если вы только начали изучать микроконтроллеры, вам тяжело сделать печатную плату и запрограммировать её usbasp, к примеру. Для этого есть много отладочных плат или ещё проще – Arduino. Но чтобы попробовать, есть совсем простые пути, и они такие же наглядные.

Попробуем некий такой hello_world на микроконтроллере – помигаем светодиодом, не имея в наличии реальной платы. Для этого понадобится Proteus – как мне кажется, лучшая программа для эмуляции электронных процессов. В 8 версии Proteus есть уже встроенные библиотеки arduino, но мне они не очень нравятся в плане удобства работы. Найти их просто, при создании нового проекта, нужно перейти на вкладку “from development board”.

Где arduino в proteus

Как я уже и сказал, я использую более удобную и визуально красивую библиотеку, для которой можно создать обычный проект. Это платы от проекта theengineeringprojects. Качаем библиотеки по ссылке

На странице нужно найти жирную кнопку “Download Library for Proteus” и скачать архив. В нём будут два файла –
ArduinoTEP.LIB and ArduinoTEP.IDX. В случае с версией Proteus 8, чтобы установить библиотеки Arduino, необходимо будет пройти в папку программы, а конкретно Proteus 8 Professional\LIBRARY и туда положить эти два файла. Путь самой программы конечно у вас будет отличаться от моего

Смотрите также:  Игральный кубик (кости) на Arduino. Random числа
Как установить библиотеки в proteus

Теперь запускаем программу, создаём новый проект и открываем библиотеку компонентов. Там в поиске, вводим название библиотеки – arduinotep и выбираем понравившийся чип.

Nano в proteus

Теперь вернёмся к Arduibo IDE. Откроем самый простой пример мигания светодиода, и сделаем некоторые настройки, чтобы понять, куда программа сохраняет hex файл. Пройдём в настройки

И выберем пункт “Компиляция” в подробно выводе. Кстати ещё тут можно включить другие полезные плюшки – например вывод номера строк или сворачивание отдельных кусков кода.

Я решил, что буду в Proteus использовать NANO, поэтому выбираю её в компиляторе, а в примере мигания диода заменяю вывод диода со встроенного на ножку 12. Жму компиляция, и теперь в окне информации можно увидеть, куда сохранился hex файл.

Путь и место hex кода arduino

Теперь мы знаем, где хранится этот файл. Соберём в Proteus схему из наших свежих добавленных плат, и подключим светодиод.

Теперь, если нажать два раза по нашей плате Arduino – можно попасть в меню настроек, где и нужно указать прошивку. Также можно заметить, что частота стоит верная – фьюзы Arduino заточены под 16Мгц внешний кварц.

Смотрите также:  Корпус из стекловолокна

Как мы увидели выше, путь hex файла находится во временных пользовательских папках. Жмём на кнопку “Program File” – и ищем наш hex. Выбираем, который без bootloader’а.

Ну теперь жмём кнопку play снизу, слева – и видим, что всё работает.

Если вы не устанавливали дополнительные библиотеки, а решили воспользоваться стандартными – рабочее поле с платой будет выглядеть так

Можно нажать на контроллер и увидеть меню настроек. Точно также в поле Program File выбирается прошивка, работает всё аналогично.

Также здесь будет один небольшой нюанс – нужно выставить частоту 16Мгц, потому-что по-умолчанию выставлено 8Мгц от внутренней RC цепочки.

Естественно, можно поставить и голый МК AtMega328, и всё тоже заработает. Только нужно найти какому пину будет соответствовать на голом МК, тот, что вы выбрали в среде Arduino. Для этого смотрим распиновку Arduino Nano. Например 12, который выбрали мы, будет соответствовать 16 пину голого МК (PB4).

На этом же сайте, есть до кучи интересных библиотек от дисплеев до датчиков газа. Если интересно, можно добавить в папку библиотек аналогичным образом.

Смотрите также:  Переход от прототипа Arduino к устройству на примере игрального кубика

Пробуйте, тестируйте, пока ваши отладочные платы едут с Китая.

2 комментария к “Proteus. Как добавить платы Arduino и получить прошивку hex в IDE”

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *