Arduino. Эмуляция в программе Proteus

19.05.2016 20:18

В прошлой статье мы с вами рассмотрели, чем Ардуино отличается от МК AVR, какие бывают типы Ардуино, а также научились устанавливать драйвер последовательного порта CH340G на Ардуино. Как я уже говорил, в наших статьях мы будем рассматривать китайские варианты Ардуино, собранные на микросхеме CH340G.

 

На оригинальных Ардуино используются уже совсем другие микросхемы последовательного порта.

 

 

Что эта за микросхема CH340G, и для чего она установлена на плату? Если говорить упрощенно, это своего рода  встроенный программатор для связи Ардуино с ПК. Плюсы такого решения в том, что нам достаточно просто подключить Ардуино к ПК стандартным USB кабелем и можно будет залить “скетч”. То есть прошить Ардуинку программой. Скетч - это просто код программы, который мы можем по USB кабелю залить в микросхему на нашей плате Ардуино. Тупо устанавливаем дрова, цепляем Ардуинку через USB-кабель, пишем программу, заливаем ее в один клик и ВСЕ! Красота!

 

Следующий вопрос который придет в голову всем кто имел дело с МК AVR: "А можно ли прошить Ардуино ISP программатором, типа USBASP (ниже на фото) или подобного?" Напомню, что с помощью этого программатора мы   прошивали МК AVR  .

 

 

Конечно можно! Для этого на Ардуинке есть специальные выводы для прошивки МК, на которой она собрана:

 

Распиновка выглядит вот так:

 

Ну а далее действуем как обычно: шьем наш МК. Как это сделать, можно прочитать в этой статье.

 

В одной из предыдущих статей, посвященных МК AVR, мы рассмотрели, как можно провести эмуляцию схемы на МК AVR в программе Proteus, но можно ли это провести с платой Ардуино? Да, можно. Для этого нужно просто установить в папку с библиотеками программы Proteus, библиотеку для работы с Ардуино. Прикрепляю   этот файлик  . Его нам надо вставить в вашу библиотеку Proteus.

 

Дело в том что в Ардуино мы можем залить в программе Proteus не скетч, а прошивку. Да-да, тот самый "HEX" файл. Делается это точно также, как мы и заливали в наш виртуальный МК AVR файл прошивки. Для того, чтобы не тратить лишнее время, мы не будем сами писать код скетча, а воспользуемся одним из готовых примеров.

 

 

Получение HEX-файл в Arduino-среде

Для того, чтобы получить HEX-файлик для прошивки нашего виртуального Ардуино, нам надо сделать следующие шаги...

Скачать саму Ардуино программку. Как я уже сказал, от свежести этой программы мало что меняется. Я использую версию 1.6.7. Скачать можно здесь.

 

Предположим, у нас уже есть код программки, которую будем лить в Ардуинку. Я же воспользуюсь готовым кодом. Для этого беру готовую программку Blink.

 

 

Вот она открылась в новом окошке:

 

 

Затем нам нужно откомпилировать наш код.

 

 

После удачной компиляции выйдет вот такое сообщение:

 

 

Потом нажимаем "Сохранить"

 

 

А потом кликаем "Экпорт бинарного файла"

 

В результате у нас появятся вместе с сохраненным проектом еще два файла. Берем для загрузки в Proteus самый длинный по названию файл

 

 

Открываем Proteus. Находим 4 элементы для построения схемы. Резистор на 300 Ом, желтый светодиод, землю и саму плату Ардуино.

 

Два раза щелкаем на саму ардуинку на схеме. Должно вылезти вот такое окно. Нажимаем на значок "папка" и выбираем наш длинный HEX-файлик.

 

 

Нажимаем на Play  внизу слева рабочего окна Proteus и наслаждаемся морганием светодиода)

 

В следующей статье мы будем зашивать уже саму Ардуину в реале. Не пропустите! ;-)

 

Продолжение

 

Автор - Андрей Симаков