цифровая электроника
вычислительная техника
встраиваемые системы

 

Как перейти от Arduino IDE к Atmel Studio

Автор: Mike(admin) от 15-12-2019, 23:55

Иногда платы Arduino недостаточно. Они часто скрывают большую часть функциональности микроконтроллера, а Arduino IDE не предоставляет готовый доступ к базовым модулям. Это может быть неприятно и непрактично, так как некоторые проекты не могут ограничиваться возможностями, предоставляемыми стандартной функцией, такой как digitalWrite. Здесь-то Atmel Studio вступает в игру. Это IDE, используемая профессионалами, которая позволяет вам писать программы на C, C++ и даже ассемблере почти для всех микроконтроллеров Atmel.


Как перейти от Arduino IDE к Atmel Studio

Atmel Studio также позволяет импортировать скетчи Arduino, но этого следует избегать, чтобы избежать продолжения вредных привычек. Поскольку она основана на Visual Studio, любой, кто использовал эту среду разработки, должен иметь возможность быстро научиться использовать Atmel Studio.


Atmel Studio 7 – это новейшая версия IDE, которую можно бесплатно скачать и использовать. Просто найдите ее на сайте Microchip (https://www.microchip.com/mplab/avr-support/atmel-studio-7) и выберите веб-установщик. При установке лучше всего выбрать каждую архитектуру, так как это избавит вас от необходимости возвращаться и загружать новые данные микроконтроллеров позже.


Как перейти от Arduino IDE к Atmel Studio

Чтобы прошить микросхемы, вы не можете просто подключить к ним USB-кабель и нажать кнопку загрузки. Например, несколько 8-битных микроконтроллеров не имеют интерфейса UART, например, некоторые из семейства ATtiny. Во-вторых, загрузчик Arduino – это то, что позволяет программировать через интерфейс UART, но он занимает место, а пространство в данном случае драгоценно. При использовании Atmel Studio микроконтроллеры прошиваются программаторами, и они отправляют данные через ICSP, а некоторые имеют возможности отладки через JTAG или DebugWire. Этот метод также освобождает два контакта для других целей. Далее изображен программатор AVRISP mkii (не отладчик).


программатор AVRISP mkii

Как уже говорилось ранее, Atmel Studio поддерживает C, C++ и ассемблер для программирования ваших микроконтроллеров. Ассемблер обычно используется для того, чтобы максимально приблизиться к аппаратному уровню, поскольку он дает вам доступ ко всей памяти и регистрам. Это полезно для создания программ, которые используют очень мало оперативной памяти, или для создания ультраоптимизированных программ. Обычно, однако, вы будете использовать язык C, который является оберткой вокруг ассемблера. Он ограничивает ваш доступ к стеку, но большое преимущество имеет наличие переменных, простых математических операторов и простых способов использования указателей. Языки более высокого уровня также обрабатывают стек и передачу аргументов для вас, еще больше упрощая процесс программирования. Далее приведены примеры кода на ассемблере и на языке C.


Как перейти от Arduino IDE к Atmel Studio

При использовании Arduino-стиля с языком типа C++ вы привыкли использовать такие функции, как digitalWrite, analogRead, delay и Serial.print. Отказ от Arduino IDE также заставляет вас отказаться от этих функций.


Как перейти от Arduino IDE к Atmel Studio

Поначалу это может расстраивать и сбивать с толку, но это все к лучшему. Чтобы создать практически любую программу, вы должны настроить и использовать сами регистры, и это дает дополнительное преимущество, заставляя вас ознакомиться с оборудованием на низком уровне. Например, вы обычно используете pinMode (pin, mode), чтобы установить, является ли вывод входным или выходным на ATtiny85. Но используя C или ассемблер, вам придется установить бит в регистр DDRB и, возможно, установить бит в PORTB для внутреннего подтягивания.


Как перейти от Arduino IDE к Atmel Studio

В этом случае очень важно использовать техническую документацию или даташит (datasheet). Даташит предоставляет всю необходимую информацию о вашем микроконтроллере, включая определения регистров, электрические характеристики и информацию о каждом модуле. Например, в разделе 10 даташита ATtiny85 приведена информация о портах ввода/вывода. В большинстве разделов есть примеры того, как настроить регистры, карта регистров, которая описывает регистры для конкретного модуля, и описания для каждого бита в каждом регистре.


Как перейти от Arduino IDE к Atmel Studio

Хотя даташиты на первый взгляд могут показаться ошеломляющими, работая с ними и просматривая примеры, очень легко реализовать даже сложное приложение.


Использование ассемблера требует чтения и записи в регистры, расположенные в памяти, но C делает это немного легче. Вместо непосредственного получения значений вы можете использовать макросы, которые заменяются кодом, который делает это в фоновом режиме. В среду IDE также входит файл или файлы, которые связывают именованный регистр с его физическим адресом в памяти. Это избавляет вас от необходимости запоминать длинную строку цифр при попытке получить доступ к простому регистру или биту.


Как перейти от Arduino IDE к Atmel Studio

После перехода с Arduino IDE на Atmel Studio вы получаете практически неограниченный доступ к модулям микроконтроллера, что дает вам полный контроль над памятью и каждым модулем. Atmel Studio также включает в себя множество других полезных функций, таких как надежный отладчик, расширения и намного лучший контроль исходного кода.




© digitrode.ru


Теги: Arduino, Atmel Studio




Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Комментарии:

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