Atmel studio 7

Схема

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

Схема в этом проекте показывает использование простой цепи регулятора мощности (с использованием 7805), которую обеспечивает устройство ATMEGA 5В, но оказывается, что программатор USBASP обеспечивает приблизительно 3,3 В. Несмотря на это, лучше обеспечить внешнее питание, чтобы USBASP не потреблял слишком много тока из любого USB-порта.

Программатор USBASP, который я купил, также шел с конвертером, который преобразует 10-контактный разъем в более удобный 6-контактный программный разъем. Тем не менее, header использует двухрядный шаг 2,54 мм, что означает, что он не может быть подключен к макету. Чтобы обойти это, я просто подключил разъем к проводам, которые соединяются с различными пинами на макете.

Схема

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

Схема в этом проекте показывает использование простой цепи регулятора мощности (с использованием 7805), которую обеспечивает устройство ATMEGA 5В, но оказывается, что программатор USBASP обеспечивает приблизительно 3,3 В. Несмотря на это, лучше обеспечить внешнее питание, чтобы USBASP не потреблял слишком много тока из любого USB-порта.

Программатор USBASP, который я купил, также шел с конвертером, который преобразует 10-контактный разъем в более удобный 6-контактный программный разъем. Тем не менее, header использует двухрядный шаг 2,54 мм, что означает, что он не может быть подключен к макету. Чтобы обойти это, я просто подключил разъем к проводам, которые соединяются с различными пинами на макете.

С чего начать освоение?

Начинать стоит, конечно же, с покупки программатора; самый бюджетный – это – USBASP. Программатор USBASP не поддерживается в Atmel Studio 7.

Скачивайте драйвера на программатор и программу AVRdude, а чтобы заставить это все работать вместе, можно через командную строку воспользоваться командой:

«avrdude -c usbasp -p atmega32 -U flash:w:название файла с прошивкой.hex -U lfuse:w:0x6a:m -U hfuse:w:0xff:m»

и подключить его поддержку, создав профиль в atmel studio 7 (title – external tools), а в пункт Arguments ввести «-c usbasp -p atmega32 -U flash:w:$(TargetName).hex» и так для каждого типа используемых вами микроконтроллеров.

Только таким образом можно связать студио и программатор USBASP. Будьте внимательны при перепрошивке – вы можете повредить сигнатуру микроконтроллера, а восстановить её можно будет только 12 В (высоковольтным) программатором.

Программные средства разработки Microchip

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

На текущий момент пользователям доступны следующие решения:

  • MPLAB X IDE – полнофункциональная интегрированная среда разработки (IDE), предназначенная для разработки кода для микроконтроллеров PIC, цифровых сигнальных контроллеров (DSC) dsPIC, а также микроконтроллеров AVR и SAM. Среда построена на основе IDE NetBeans с открытым исходным кодом от Apache Software Foundation.
     
  • MPLAB Xpress – представляет собой бесплатную онлайн-среду разработки, которая не требует установки или настройки системы. MPLAB Xpress имеет более ограниченный функционал по сравнению с MPLAB X IDE, однако поддерживает ее наиболее популярные функции, такие как конфигуратор кода MPLAB.
     
  • Конфигуратор кода MPLAB (MCC) – бесплатный графический плагин для инициализации системы, который также предоставляет драйверы для работы с компонентами. MCC может использоваться для настройки широкого спектра периферийных устройств и поддерживает работу с микроконтроллерами AVR и PIC.
     
  • MPLAB Harmony – гибкий фреймворк, включающий в себя программные модули, которые выступают в роли строительных блоков при создании приложения. Используя MPLAB Harmony, разработчик может включить в свой проект библиотеки и программные драйверы как компании Microchip, так и сторонних производителей. MPLAB Harmony поддерживает работу с 32-битными микроконтроллерами PIC и SAM.
     
  • Компиляторы MPLAB XC – комплексное решение для компиляции разрабатываемого программного кода. MPLAB XC поддерживает 8-битные PIC и AVR в версии MPLAB XC8, 16-битные PIC и dsPIC DSC в MPLAB XC16 и 32-битные PIC и SAM в MPLAB XC32. Для компиляторов MPLAB XC доступны два вида лицензии: бесплатная – включает базовые функции оптимизации и PRO – ориентирована на проекты, требующие максимальной оптимизации по скорости и размеру бинарного файла.
     
  • Microchip Studio (Atmel Studio 7) – интегрированная среда разработки (IDE) для написания кода и отладки микроконтроллеров AVR и SAM.
  • Atmel START – бесплатный онлайн-инструмент для графического конфигурирования микроконтроллеров для встраиваемых приложений на базе микроконтроллеров AVR и SAM.

Как несложно заметить, те или иные программные средства подходят только для определенного типа контроллеров. В Таблице 1 приведены данные по возможности работы с программным обеспечением в зависимости от выбранного микроконтроллера или микропроцессора.

Таблица 1. Данные по возможности работы программного обеспечения в зависимости от выбранного микроконтроллера
или микропроцессора
  Микро-
контроллеры
AVR
Микро-
контроллеры
PIC
Цифровые
контроллеры
сигналов
dsPIC
Микро-
контроллеры
SAM
Семейства
микро-
контроллеров
CEC/MEC
Микро-
процессоры
IDE MPLAB X IDE + + + + + +
MPLAB Xpress + + +
Microchip Studio + +
Компиляторы MPLAB XC + + + + + +
AVR GCC +
ARM GCC + +

Конфигураторы
кода

MPLAB Code
Configurator
+ + +
MPLAB
Harmony
+, только для
32-битных
версий
+ +
Atmel Start + +
Средства програм-
мирования
для производства
MPLAB IPE + + + +
MPLAB PM3 + +

Для упрощения процесса работы, компания Microchip объединила информацию по своим продуктам в раздел Microchip Developer Help [], в котором подробно описаны все тонкости работы с приведенными выше программными пакетами, а также приведены ссылки на продукты, дополнительные ресурсы, видеоуроки, курсы и документацию.

Стоит также учитывать возможность работы программного обеспечения на той или иной операционной системе. Например, инструменты разработки MPLAB совместимы с операционными системами Windows, Linux и macOS, а Microchip Studio (Atmel Studio 7) способна работать только под Windows.

Разберем описанные выше программные решения более подробно.

Интегрированная среда разработки MPLAB X

MPLAB X IDE представляет собой среду, которая объединяет в себе весь необходимый набор инструментов для настройки, разработки, отладки и оценки возможностей микроконтроллеров и микропроцессоров, производимых компанией Microchip (Рисунок 2). Среда построена на основе IDE NetBeans с открытым исходным кодом от Apache Software Foundation и распространяется бесплатно.

Рисунок 2. Стартовое окно MPLAB X IDE.

MPLAB X IDE обладает широкими возможностями для написания исходного кода программы, ее дальнейшей отладки и оптимизации проекта. Столь обширный функционал обеспечен благодаря наличию в MPLAB X IDE следующих модулей и возможностей (Рисунок 3):

  • Менеджер проектов (Project Manager) – служит для управления файлами рабочих групп;
  • Редактор кода (Editor) – позволяет редактировать и создавать программный код проекта;
  • Поддержка программаторов/отладчиков MPLAB ICD и MPLAB REAL ICE;
  • Симулятор MPLAB X Simulator, пошагово моделирующий работу программы;
  • Поддержка компиляторов MPLAB XC (XC8, XC16 и XC32) – преобразуют исходный код на языках С, С++, ассемблер в машинный;
  • И так далее.
Рисунок 3. Составляющие среды MPLAB X IDE.

MPLAB X предлагает пользователю широкий функционал, способный помочь быстро отладить проект и минимизировать время разработки. Данная IDE может рассчитать время исполнения операций (инструмент Stopwatch), открыть доступ к переменным и специальным регистрам контроллера, объединить разрозненные файлы в один проект и многое другое. В папке, где размещается MPLAB X, по пути emplatecode лежат файлы-шаблоны для проектов, с которых удобно начать работу.

Кроме того, возможности MPLAB X IDE можно расширить с помощью множества плагинов как от компании Microchip или NetBeans, так и от сторонних производителей.

Примерами доступных для MPLAB X IDE плагинов могут служить:

  • Монитор данных и контроллер интерфейсов (DMCI). DMCI позволяет разработчику изучать или изменять содержимое переменных без необходимости остановки приложения во время сеанса отладки;
  • Конфигуратор кода Microchip (MCС) – графический плагин для инициализации системы, который также предоставляет драйверы для работы с компонентами;
  • Графический интерфейс пользователя SMPS Buck (SMPSGUI) – представляет собой плагин, упрощающий работу и настройку гибридных ШИМ-контроллеров, в частности – MCP19110/11/18/19;
  • Конфигуратор дисплея Graphics Display Designer (GDD) – инструмент разработки интерфейсов, который позволяет быстро и легко создавать графический интерфейс пользователя для приложений на основе 16- или 32-разрядных микроконтроллеров PIC;
  • Программный пакет Proteus VSM Viewer, позволяющий виртуально собрать схему электронного устройства и симулировать его работу, выявляя ошибки, допущенные на стадии проектирования и трассировки;
  • Модуль отладки Segger J-Link, позволяющий работать с устройствами JTAG;
  • И так далее.

Полный список доступных и установленных плагинов можно найти в соответствующем разделе программы.

Следует отметить, что помимо положений, описанных в руководстве Microchip Developer Help, которое уже упоминалось ранее, компания Microchip предоставляет своим клиентам специальный обучающий курс , в котором приведено подробное описание среды. По окончании курса пользователь получит основные представления о принципах работы с MPLAB X IDE, узнает, как открыть и построить проект, усвоит основные принципы отладки и загрузки кода в микроконтроллер и многое другое.

Создание первого проекта

Следующая задача состоит в том, чтобы создать проект на основе AVR микроконтроллера и протестировать схему, компилятор и программатор.

Сначала перейдите в: Файл -> Создать -> Проект (англ. File -> New -> Project) и в открывшемся окне выберите: Исполняемый проект GCC C (англ. GCC C Executable Project), а в текстовом поле Имя (англ. Name) дайте любое название вашему проекту.

Следующее окно, которое должно появиться, — это окно выбора устройства. Из списка выберите Atmega168. Насколько мне известно, это окно не имеет никакого смысла, так как мы все равно передаем имя устройства в AVRDUDE вручную (пока я не могу найти способ заставить Atmel Studio 7 автоматически отправлять имя устройства в AVRDUDE через аргументы).

Результатом должен стать файл main.c, содержащий код нашей программы, который будет запускать AVR. Однако сгенерированный код ничего не делает, поэтому замените все содержимое файла main.c с помощью приведенной ниже программы (обязательно сохраните файл после ввода нового кода).

#define F_CPU 800000UL // Я использую кристалл 8 МГц

#include <avr/io.h>
#include <avr/delay.h>

int main(void){
	DDRD = 0xFF; // Сделать порт D портом выхода

	while(1){
		PORTD = 0xFF;
		_delay_ms(1000);
		PORTD = 0x00;
		_delay_ms(1000);
	}
}

Теперь пришло время скомпилировать код и загрузить его на устройство AVR. Первый шаг — убедиться, что наш проект использует компилятор WINAVR. Щелкните правой кнопкой мыши проект и выберите «Дополнительно» (англ. — Advanced) в окне свойств.

В окне «Дополнительно» убедитесь, что в поле «Набор инструментов» (англ. — Toolchain Flavour) выбран WINAVR.

Сохраните проект и скомпилируйте его, нажав: Build -> Build Solution (или нажав F7). Если все идет по плану, в окне вывода должно появиться следующее сообщение:

Build succeeded.

========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========

Это означает, что наш проект успешно скомпилирован и готов к передаче на наш чип. Чтобы запрограммировать устройство, убедитесь, что USBASP подключен как к ПК, так и к цепи Atmega, к цепи подано питание и что к микросхеме подключен кристалл (в случае, если микросхема была настроена для использования внешнего кристалла).

Затем, после всего этого, нажмите: Инструменты -> USBASP (англ. Tools -> USBASP), и все будет работать автоматически.

Если все хорошо, светодиод в вашей цепи должен начать мигать. Ниже приведен вывод AVRDUDE в Atmel Studio 7, показывающий, как выглядит успешная программа.

avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude.exe: Device signature = 0x1e9406
avrdude.exe: NOTE: FLASH memory has been specified, an erase cycle will be performed
             To disable this feature, specify the -D option.
avrdude.exe: erasing chip
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: reading input file "0x26"
avrdude.exe: writing lfuse (1 bytes):

Writing | ################################################## | 100% 0.00s

avrdude.exe: 1 bytes of lfuse written
avrdude.exe: verifying lfuse memory against 0x26:
avrdude.exe: load data lfuse data from input file 0x26:
avrdude.exe: input file 0x26 contains 1 bytes
avrdude.exe: reading on-chip lfuse data:

Reading | ################################################## | 100% 0.00s

avrdude.exe: verifying ...
avrdude.exe: 1 bytes of lfuse verified
avrdude.exe: reading input file "c:\users\robinlaptop\Documents\Atmel Studio\7.0\OurFirstAVR\OurFirstAVR\Debug\OurFirstAVR.hex"
avrdude.exe: writing flash (184 bytes):

Writing | ################################################## | 100% 0.11s

avrdude.exe: 184 bytes of flash written
avrdude.exe: verifying flash memory against c:\users\robinlaptop\Documents\Atmel Studio\7.0\OurFirstAVR\OurFirstAVR\Debug\OurFirstAVR.hex:
avrdude.exe: load data flash data from input file c:\users\robinlaptop\Documents\Atmel Studio\7.0\OurFirstAVR\OurFirstAVR\Debug\OurFirstAVR.hex:
avrdude.exe: input file c:\users\robinlaptop\Documents\Atmel Studio\7.0\OurFirstAVR\OurFirstAVR\Debug\OurFirstAVR.hex contains 184 bytes
avrdude.exe: reading on-chip flash data:

Reading | ################################################## | 100% 0.10s

avrdude.exe: verifying ...
avrdude.exe: 184 bytes of flash verified

avrdude.exe: safemode: Fuses OK

avrdude.exe done.  Thank you.

Благодаря увеличенной производительности и легкости использования, Atmel Studio 7 значительно ускоряет разработку приложений на основе микроконтроллеров Atmel |SMART и AVR и подходит как профессиональным инженерам, так и радиолюбителям

Выполняя роль связующего звена от начальной идеи до выводы на рынок конечного продукта, и дополняя собой среду Studio 7, платформа Atmel START является графическим веб-интерфейсом, позволяющим разработчикам осуществить конфигурацию программных компонентов и драйверов, компиляцию исходного кода, воспользоваться демонстрационными приложениями и базовыми проектами, поднимая свою продуктивность на новый уровень

Компания Atmel Corporation, ведущий поставщик микроконтроллеров и сенсорных решений, объявила о выпуске Atmel Studio 7 — полнофункциональной, бесплатной интегрированной среды проектирования (IDE) систем на базе микроконтроллеров семейств Atmel | SMART и AVR. Помимо этого, компания анонсировала платформу Atmel START — новый, интуитивно понятный графический интерфейс для разработки и конфигурации встраиваемых приложений, позволяющий разработчикам создавать уникальные программные решения.

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

Для сообщества радиолюбителей и изобретателей, работающих с платформой Arduino, Studio 7 предлагает возможность портировать свои скетчи, созданные в среде Arduino, в C++ проекты и легко переносить их в профессиональную среду Studio 7. Компания Atmel продолжает поддерживать независимых разработчиков на всем пути — от идеи до вывода на рынок конечного продукта.

Со стремительным развитием рынка Интернета вещей (IoT) и появлением миллиардов устройств, ожидаемых к 2020 году, качественное, высокоинтегрированное выстраиваемое ПО становится ключевым элементом, позволяющим создавать надежные коммуникационные решения, основанные на современных стандартах связи и безопасности. Анонсированная Atmel платформа Atmel START — это онлайн инструмент, помогающий разработчикам легко и быстро интегрировать базовые программные блоки и сконцентрироваться на создании собственных приложений.

Графический веб-интерфейс Atmel START позволяет пользователю выбрать нужные программные компоненты и сконфигурировать их для работы с обширным семейством отладочных плат Atmel или с собственной системой. Разработчики могут создавать программные платформы, включающие низкоуровневые драйверы, промежуточное ПО, операционную систему реального времени (RTOS), высокоуровневые стеки сетевых протоколов и многое другое. Помимо этого, Atmel START поддерживает графическую конфигурацию таблицы назначения выводов и системы тактирования. Сконфигурируемый программный пакет может быть загружен в любую поддерживаемую среду разработки, включая Atmel Studio 7, IAR Embedded Workbench и Keil µVision. Atmel START — это исключительно интернет приложение, не требующее предварительной установки, а доступный для скачивания контент всегда будет последней версии.

Interesting tutorials

How to make an app with Android Studio

Studio:
Step 1
Download and install Android Studio … Microsoft Visual Studio. However,&nbsp …

How to set up OBS Studio

OBS Studio is … up OBS Studio so that … Launch OBS Studio on … up OBS Studio using this …

How to Convert STY to SMF with Awave Studio

… styles.
Awave Studio 11.0 ( … need to download the …
Conclusion
Awave Studio 11.0 …

How to make a QR code

… QR-Code Studio. Here’s what … .
QR-Code Studio Main Screen … QR-Code Studio works flawlessly …

How to record your screen on Mac

… can.
Camtasia Studio — Shareware …
Camtasia Studio
Camtasia offers … Camtasia Studio puts …

How to make birthday cards

… Hallmark Card Studio, Fantasy CardMaker … use the Download button from … you to download and …

How to convert DivX to 3GP with ABC 3GP Converter

… ;ABC Media Studio, as it … need to download the following …

Atmel Studio

Недавно вышла новая Atmel Studio версии 7.0. Как и все предыдущие IDE от Atmel, она не лишена ряда существенных недостатков:

  1. Отсутствие кроссплатформенности. Только Windows, причем, не ниже Windows 7
  2. Отсутствие поддержки популярных программаторов, JTAG-ов и т.д, только фирменные атмеловские инструменты
  3. Не умеет обновляться — каждую версию приходится ставить отдельно. Причем, если удалить предыдущую установленную версию, то может сломаться последняя.

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

Для сборки проекта студия использует утилиту make и генерит makefile. В принципе, makefile можно писать руками, но это
не совсем удобно и очень громоздко. Попытки использования разных известные аналогов make (cmake, scons и прочее) желаемого результата также не дали.
Хотелось своего велосипеда — чего-то предельно простого, гибкого и удобного. В качестве основы был выбран Python, т.к. его легко использовать не
только в качестве языка для написания системы сборки, но и в качестве удобного языка для написания сценариев компиляции.

Установка WinAVR в Atmel Studio

1. В пункте меню “Tools (Инструменты)” выберите “External Tools (Внешние инструменты)”.

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

3. В пункте “Title (название)” введите имя вашего внешнего инструментального средства. Можно выбрать любое имя, но в рассматриваемом примере мы выбрали имя “USBasp”. Поставьте галочку в пункте ”Use Output Window” и снимите галочку с пункта “Prompt for arguments” как показано на нижеприведенном рисунке.

4. Теперь ведите “Command”. Там будет необходимо указать путь к “avrdude.exe” – его вы можете найти в папке где установлена WinAvr. Просто найдите “WinAVR-20100110” на диске “C” вашего компьютера – куда вы устанавливали WinAvr.

5. Введите аргументы. Это самый важный шаг в этой последовательности действий поскольку от них будет во многом зависеть корректность работы приложения. Поскольку в рассматриваемом нами случае мы используем внешние инструментальные средства, то можно ввести следующие аргументы:

6. Больше аргументов можно найти по этой ссылке.

7. Введите аргументы в поле для ввода аргументов. Оставьте поле “Initial directory (Начальный директорий)” без изменений.

8. После заполнения всех полей нажмите “Apply” и затем “Ok”.

В результате этих шагов вы сможете использовать внешние инструментальные средства чтобы загружать программы в микроконтроллер. Проверим это с помощью тестового проекта (программы) “blink.c”. Файл main.c вы можете найти в конце этой статьи. Теперь скопируйте main.c в Atmel studio.

Использование программатора USBASP в Atmel Studio

Программатор USBASP является на сегодняшний день самым дешевым программатором микроконтроллеров AVR компании ATMEL и позволяет программировать большое множество микроконтроллеров серий AVR ATTiny, AVR ATMega и других. В данной статье я расскажу вам об основных особенностях использования этого программатора из под ОС Windows 7 и как настроить его работу совместно со средой разработки программ Atmel Studio на примере версии 6.1. К сожалению, по умолчанию, Atmel Studio не поддерживает этот программатор.

Установка драйвера программатора

В первую очередь необходимо установить драйвер для программатора. Мы не будем подробно описывать процедуру установки драйвера, так как тут не должно возникнуть каких либо трудностей. После установки драйвера подключенный программатор отображается в диспетчере устройств Windows как устройство USBasp.

Установка Avrdude

Для программирования микроконтроллеров AVR будем использовать программу Avrdude. Эта программа поддерживает большое количество программаторов, в том числе и USBASP. Этой программе посвящена отдельная страница в википедии.

Программа avrdude является консольной и запускается из командной строки. Для выполнения программирования ей передается набор параметров, определяющий настройки. Ниже приведен пример командной строки для программирования контроллера при помощи программатора USBASP:

Поясним основные параметры: