Atmel что это за программа

Введение

Это краткое пошаговое руководство по созданию проекта в Atmel Studio. Мы разберем как создать проект, как добавить в него ASF библиотеки, как его скомпилировать и как записывать прошивку в микроконтроллер, используя аппаратный отладчик или программатор.

Речь пойдет о создании проекта для ARM микроконтроллера SAM3S, но аналогичным образом создаются проекты и для других микроконтроллеров фирмы Atmel — xmega, atmega, attiny

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

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

Выбираем в верхнем меню пункт File > New > Project. или нажимаем комбинацию кнопок Ctrl + Shift + N.

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

Откроется окно, в котором нужно задать шаблон проекта, имя и место его хранения. Выбираем C/C++ > User Board > User Board SAM3S. Имя и место сохранения указываем по своему желания. Я назвал свой проект Test.

Микроконтроллер Attiny13: обзор, прошивка, применение

Выбираем тип шаблона

Последнее поле в этом окне — Solution name. Solution или решение — это некий «контейнер», который включает в себя один или несколько проектов Atmel Studio (аналог workspace или рабочего пространства в IAR). Такое объединение удобно использовать, когда идет работа над несколькими смежными проектами.

Если поставить галочку Create directory for solution, то будет создана директория с именем решения и файлами решения, в которой будет поддиректория, содержащая наш проект. Нам это сейчас не нужно, поэтому галочку можно снять.

Жмем ОК и в следующем диалоговом окне задаем тип микроконтроллера. Это нужно для того, чтобы Atmel Studio подключила к проекту требуемые заголовочные файлы.

Выбираем микроконтроллер

Выбираем SAM3S4B, жмем ОК и Atmel Studio создает проект с заданными параметрами.

Если мы заглянем в директорию проекта, то увидим следующий набор файлов.

Содержимое проекта

В папке Debug сохраняются результаты компиляции проекта — объектные файлы и прошивки в различных форматах. В папке src хранятся исходники проекта — C и C++ файлы.

Посмотрим на Atmel Studio. Перед нами созданный только что проект. С правой стороны у нас проводник, отображающий иерархию проекта. Чуть ниже окно — свойства. Там отображается информация о выбранном файле. С левой стороны — редактор кода, сейчас там открыт файл main.c.

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

Atmel Studio 7 — How to install.

Atmel Studio

ASF библиотеки

Чтобы убедиться в работоспособности платы Karma-SAM3S, добавим в проект простой код. Для начала подключим к проекту несколько ASF библиотек.

ASF (Atmel Software Framework) — это бесплатный набор библиотек для Atmel микроконтроллеров, интегрированный в среду разработки. ASF включает в себя драйверы внутренней периферии, сервисы и библиотеки для внешних устройств. Каждая библиотека имеет документацию с описанием и примерами. Чтобы использовать ASF библиотеки нужно создавать проект на основе шаблона (board template) или ASF примера.

Чтобы добавить ASF библиотеки к проекту, запускаем ASF Wizard. Это можно сделать с помощью меню Project > ASF Wizard, комбинации Alt + W или одноименной кнопки в меню баре.

ASF Wizard

Для первого проекта понадобятся следующие драйвера:

PIO — Parallel Input/Output Controller
PMC — Power Management Controller
WDT — Watchdog Timer

Ищем их в списке, выделяем и добавляем в окно Selected Modules с помощью кнопки Add.

Добавление ASF драйвера

Когда нужные драйверы добавлены, нажимаем кнопку Apply. В следующих окнах жмем ОК и со всем соглашаемся.

Выбранные библиотеки появятся в проводнике и в заголовочном файле asf.h. Теперь их можно использовать в своем проекте.

Тестовый код

Закрываем ASF Wizard и копируем в main.c следующий код.

#include

#define ONE_SEC 250000
#define LED1 PIO_PA17

void Delay (uint32_t value);

/*программная задержка */
void Delay (uint32_t value)
volatile uint32_t a = value;
while(—a!=0);
>

int main (void)
<
/*настройка периферии*/
wdt_disable(WDT);
pmc_enable_periph_clk(ID_PIOA);
pio_set_output(PIOA, LED1, LOW, DISABLE, DISABLE);

while(1) /*моргаем светодиодом*/
Delay(ONE_SEC);
pio_set(PIOA, LED1);
Delay(ONE_SEC);
pio_clear(PIOA,LED1);
>

return 0;
>

Детально разбирать его не будем, но несколько комментариев сказать стоит.

В начале программы запрещается работа сторожевого таймера, разрешается тактирование контроллера ввода-вывода и вывод PA17 настраивается на выход. К этому выводу на плате Karma-SAM3S подключен светодиод.

Далее идет бесконечный цикл, в котором состояние вывода PA17 меняется на противоположное. Чтобы смена состояний не была слишком быстрой, используется программная задержка — Delay(). Значение задержки подобрано так, чтобы светодиод моргал с частотой единицы Гц.

Микроконтроллер SAM3S4B имеет гибкую систему тактирования, которая обычно настраивается в начале программы. В этом примере мы ее не трогаем, поэтому микроконтроллер тактируется от внутреннего низкочастотного генератора с частотой 4 МГц.

Читайте также:
Administration business что это за программа

Обратите внимание, библиотечные функции имеют префикс, по которому легко понять к какой периферии они относятся. Чтобы получить информацию о любой функции или константе в программе, нужно кликнуть по ее имени правой кнопкой мыши и выбрать пункт Goto Implementation.

Компиляция проекта

Теперь нужно скомпилировать проект. Это можно сделать с помощью меню Build > Build Solution, кнопки F7 или одноименной иконки в меню баре.

Компиляция проекта

Если компиляция и сборка прошла успешно, в консоли появится сообщение Build succeeded.

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

Полученная прошивка лежит в папке проекта. Можно загрузить ее в микроконтроллер с помощью загрузчика, а можно с помощью аппаратного отладчика. В последнем случае, загрузка выполняется прямо из Atmel Studio.

Загрузка прошивки

Подаем на плату Karma-SAM3S питание, подключаем SAM-ICE (или J-link) и выбираем в меню Debug > Start Without Debugging.

Загрузка прошивки

При первом включении Atmel Studio предложит выбрать инструмент — аппаратный отладчик или симулятор. Но поскольку Atmel Studio пока что не поддерживает программную симуляцию ARM микроконтроллеров, выбора как такового нет.

Если выбрать в меню пункт Debug > Start Debugging and Break , то Atmel Studio перейдет в режим отладки кода. Откроются окна отображающие содержимое регистров и памяти микроконтроллера, а в редакторе кода появится указатель. При нажатии кнопки F11 код будет выполняться построчно.

Также есть другой вариант загрузки прошивки. Выбираем в меню Tools > Device Programming.

В открывшемся окне Device Programming выбираем отладчик, интерфейс и нажимаем кнопку Apply. Atmel Studio автоматически определит тип микроконтроллера. Выбираем пункт Memories и нажимаем кнопку Program, чтобы записать прошивку в микроконтроллер.

Загрузка прошивки

Другие пункты в окне Device Programming позволяют настраивать интерфейс программирования, получать информацию об отладчике и микроконтроллере, устанавливать конфигурационные биты.

Источник: chipenable.ru

Atmel Studio 7.0.1931

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

Atmel Studio

Программа подходит для разработки приложений от 8 до 32 бит, а также для семейств AVR и ARM. В этой среде разработки есть все актуальные решения, включая компилятор GNU C/C++.

Пароль ко всем архивам: 1progs

Что же можно назвать наиболее важными особенностями программы:

  • пользователям доступны интегрированные компилятор и симулятор для работы на C/C++;
  • при этом есть возможность самостоятельно расширять возможности программы — например, добавить плагин, который будет поддерживать компилятор GCC;
  • инструментов на выбор будет достаточно много и большая их часть относится к самой Atmel — это множество библиотек и архитектур;
  • постепенно пользователи смогут адаптировать программу под свои индивидуальные запросы — это может быть добавление любых плагинов и дополнительных инструментов, использование командной строки с поддержкой TI и многое другое.

Atmel Studio скачать

Важным преимуществом Atmel Studio можно назвать встроенный менеджер проектов. Вообще, переключаться между различными проектами и закладками здесь очень удобно — эта программа адаптирована под создание приложений со значительным объёмом кода.

Источник: 1progs.ru

Пишем свою первую программу на микроконтроллере AVR

Решил начать осваивать микроконтроллеры (далее МК) AVR. Думал что все просто раз и прошил микроконтроллера, но не так все просто как казалось на первый взгляд. В процессе прошивки контроллера возникли ряд трудностей о которых я хочу описать в этом посте. Я сам начинающий в этом нелегком деле, поэтому если увидели ошибки или другие косяки то прошу сообщить.

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

Подопытным МК будет Atmega8. Для того чтобы ее прошить нужна будет ее распиновка выводов представлена ниже. Распиновку также можно посмотреть тут. Нам нужно понимать куда подключать программатор куда подавать напряжение.

Распиновка микроконтроллера Atmega8

Далее нам необходимо определиться с программатором которым будем шить МК. Я взял USBasp программатор, самый простой программатор. Они бывают с разными разъемами, какой взять не принципиально. Главное правильно подключить выводы MOSI, MISO, RST, SCK а также питалово VCC и GND к микроконтроллеру.

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

USBasp программатор и распиновка выводов

После того как мы выбрали программатор и МК нам нужно их соединить) Вот схема подключения программатора и микроконтроллера

Схема подключения программатора USBasp и микроконтроллера Atmega8

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

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

Запускам среду Atmel Studio и создаем новый проект.

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

И выбираем в списке устройств наш камень Atmega8

Читайте также:
Форма access что это за программа

Создание проекта в Atmel Studio, выбор микрокнтроллера

И пишем программу, в качестве примера возьмем код мигания светодиодом. Так же вот есть проект мигалки на микроконтроллере с 4-мя светодиодами.

Код программы в Atmel Studio

/* * LED blink.c * * Created: 06.04.2020 21:31:26 * Author : Mudji */ #ifndef F_CPU #define F_CPU 1000000UL // 1 MHz clock speed #endif #include #include int main(void) < DDRC = 0xFF; //Nakes PORTC as Output while(1) //infinite loop < PORTC = 0xFF; //Turns ON All LEDs _delay_ms(1000); //1 second delay PORTC= 0x00; //Turns OFF All LEDs _delay_ms(1000); //1 second delay >>

Следует обратить внимание вот на первые 2 две сточки:

#ifndef F_CPU #define F_CPU 1000000UL // 1 MHz clock speed #endif

тут мы определяем частоту тактирования микроконтроллера. В нашем случаем это 1 МГц. И запоминаем это значение — оно нам еще пригодится.

Компиляция программы

Далее необходимо откомпилировать программу, для этого нажимаем Build -> Build Solution или просто нажимаем клавишу F7 . Если никаких ошибок не было то программа откомпилируется и в консоле появится сообщение что все у нас гуд нет никаких варнингов и ошибок.

Сообщение об успешной компиляции программы

И так поздравляю Вас с успешной компиляции программы. Далее нам нужно найти файл hex который появляется после компиляции программы. Его можно найти в папке с проектом, лежит он в папке , в моем случае папка проект Led blink и там в папке Debug находится наш долгожданный файл hex.

Расположение файла hex в папке проекта

Загрузка прошивки в микроконтроллер

Остается только залить этот файл в память прошиваемого микроконтроллера. Для этого я использовал программу Khazama AVR Programmer на мой взгляд очень удобная программа.

Для загрузки прошивки в МК делаем следующее:

  1. Запускаем программу и устанавливаем состояние fuse битов. Что такое фьюз биты мы говорили ранее. Для того чтобы установить их сначала нужно считать, для это жмем Command->Fuses and Lock Bits и далее во всплывающем окне жмем Read All

Установка фьюз битов микроконтроллера

Тут выставляем нужные нам Fuse биты Lock биты лучше пока не трогать если не знаете какой бит за что отвечает.

Нас интересуют биты CKSEL 0…3 они отвечают за выбор типа тактирования внешний кварц или внутренний RC генератор. В нашем случае частота 1 МГц и тактирование от внутреннего RC генератора. Поэтому пишем значение 0001.

Fuse биты CKSEL 0. 3 отвечающие за настройку частоты тактирования

После того как выставили Fuse биты нажимаем кнопку Write All после чего биты установятся в МК.

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

Запись прошивки в микроконтроллер

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

  • Staticvoid
  • 11 Апр 2020
  • 9 комментариев

Источник: www.radiodetector.ru

Программирование микроконтроллеров AVR с помощью программатора USBASP и Atmel Studio 7.0

Существует несколько способов программирования микроконтроллеров семейства AVR. В данной статье мы рассмотрим один из наиболее популярных в настоящее время способов программирования данных микроконтроллеров – с помощью программатора USBASP v2.0 и программы Atmel Studio 7.0. Хотя на нашем сайте уже есть достаточно подробные статьи про программатор USBASP и программу Atmel Studio 7.0 я все таки решил перевести с иностранного сайта и эту статью – вдруг кто то найдет в ней для себя что то интересное.

USBASP и Atmel Studio 7.0 - инструменты для программирования микроконтроллеров AVR

В данной статье будут рассмотрены следующие вопросы:

  1. Установка драйвера USBASP.
  2. Скачивание и установка Atmel Studio.
  3. Установка WinAVR для Atmel Studio.
  4. Установка микроконтроллера Atmega16 с кварцевым генератором и одним светодиодом.
  5. Создание и загрузка программного кода в Atmega16.

Рассмотрим подробно все эти вопросы. Установку драйвера для программатора USBASP будем рассматривать на примере операционной системы Windows10 – но все сказанное в этом разделе будет справедливо и для других версий Windows.

Установка драйвера для USBASP в Windows 10

Если вы используете интерфейс JTAG, вам может потребоваться установка драйвера для USBASP если он не установился автоматически. Если вы не установите этот драйвер, то вы не сможете найти порт USBASP в программе Atmel Studio. Скачать драйвер USBASP можно по этой ссылке — http://www.mediafire.com/file/z576zrku371qyjs/windows-8-and-windows-10-usbasp-drivers-libusb_1.2.4.0-x86-and-x64-bit.zip/file.

После скачивания драйвера выполните следующую последовательность действий:

1. Распакуйте из архива скачанные файлы и поместите их на рабочий стол.

2. Подсоедините модуль USBASP v2.0 к своему компьютеру.

3. Откройте в Windows диспетчер устройств (Device Manager).

4. Теперь вы можете увидеть подсоединенный USBASP в списке устройств.

USBASP в диспетчере устройств

5. Кликните правой кнопкой мыши по “USBasp” и выберите “Обновить драйвер (Update Driver)”.

Меню обновления драйвера для USBASP

6. Select “Произвести поиск драйвера на своем компьютере (Browse my computer for driver software)”.

Выбор способа обновления драйвера для USBasp

7. Найдите в открывшемся окне распакованную папку с драйвером для USBASP и щелкните «Открыть».

Выбор папки с драйвером для USBASP

8. Если установка драйвера прошла успешно, то вы увидите сообщение примерно такое же как на нижеприведенном рисунке – в этом случае вам уже не нужно выполнять дальнейшие инструкции в этом разделе статьи.

Драйвер для USBASP успешно установлен

9. Если вы увидите сообщение об ошибке как на приведенном рисунке, то вы в этом случае должны отключить цифровую подпись драйвера.

Произошла ошибка при установке драйвера для USBASP

Чтобы сделать выполните следующие шаги:

— нажмите кнопку Shift и удерживая ее нажатой перезагрузите свой компьютер (кликните Restart в меню Windows пока держите ее нажатой);

Читайте также:
Что за программа screen reader

— когда ваш компьютер перезагрузится не отпускайте кнопку Shift до тех пор пока не увидите “Advanced Options (Расширенные настройки)” на синем экране;

Выбор расширенных настроек

— отпустите кнопку Shift и кликните на “Startup Settings”;

— кликните на “Troubleshoot (Устранение проблем)”;

Выбор устранения проблем

— выберите “Advanced Options (Расширенные настройки)”;

Выбор расширенных настроек при устранении проблем

— после этого вы увидите на экране список расширенных опций и кнопку “Restart” в правом нижнем углу – кликните на ней;

Список расширенных опций перезагрузки

— подождите пока компьютер снова перезагрузится. После этого вы увидите на экране ряд настроек;

— в открывшемся списке настроек выберите пункт “Disable Driver Signature Enforcement (Отключить цифровую подпись драйвера)”. Чтобы ее выбрать просто нажмите кнопку «7» на вашей клавиатуре (не путать с кнопкой «F7»);

Отключение цифровой подписи драйвера при перезагрузке

— после нажатия этой кнопки компьютер перезагрузится и цифровая подпись драйвера будет отключена;

— после этого снова выполните шаги 1-8 из данного раздела статьи и драйвер для программатора USBASP будет успешно установлен.

Скачивание и установка Atmel Studio

Выполните следующую последовательность действий:

2. Также вам необходимо скачать приложение WinAVR чтобы иметь возможность загружать программы в микроконтроллер AVR с помощью USBASP.

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

3. Подсоедините USBASP v2.0 к USB порту вашего компьютера и подождите пока он правильно определится.

4. Откройте Atmel Studio.

5. Выберите пункт меню “File”, в нем “New” и выберите “project”.

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

6. Теперь назовите ваш проект, выберите место расположения проекта и выберите компилятор “GCC C Executable Project”. Кликните на “Ok” и продолжайте.

Выбор компилятора в Atmel Studio

7. После этого вам будет необходимо выбрать ваше устройство для программирования. В нашем случае это будет микроконтроллер Atmega16A. Если вы будете программировать другие микроконтроллеры, например, Atmega8, Atmega32, то для их программирования также можно использовать программатор USBASP.

Выбор типа микроконтроллера в Atmel Studio

8. После этого для вас будет создан файл main.c, где вы можете писать ваш программный код.

Но после создания проекта финальный шаг, который вам необходимо выполнить – это установить внешние инструментальные средства (WinAVR).

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

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

Выбор внешних инструментов в Atmel Studio

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.

Схема устройства с мигающим светодиодом для Atmega16

Схема устройства, которую необходимо собрать, приведена на следующем рисунке. Соедините кварцевый генератор и светодиод с микроконтроллером Atmega16.

Схема конструкции с мигающим светодиодом

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

Внешний вид макетной платы с собранной конструкцией

Также вы должны соединить микроконтроллер и USBASP как показано на следующей схеме:

Схема соединений USBASP и микроконтроллера AVR ATmega16

Компоновка и загрузка программного кода в Atmega16

1. Сохраните файл main.c.

2. Подсоедините светодиод к контакту PORTA0 микроконтроллера Atmega16 как было показано на вышеприведенном рисунке.

3. Выберите пункт меню “Build” и затем выберите “Build Blink”.

Компоновка проекта в Atmel Studio

4. Если программа не содержит ошибок, то вы увидите сообщение как на представленном рисунке.

Успешная компиляция проекта в Atmel Studio

5. Теперь выберите пункт меню “Tools” и выберите в ней созданные внешние инструментальные средства. В нашем случае это будет “USBasp”. Кликните по нему.

Выбор USBASP в Atmel Studio

6. Если после этого вы увидите сообщение об успешности операции (как показано на рисунке ниже), то значит вы успешно загрузили программу в микроконтроллер. Если вы получили сообщение об ошибке, то проверьте правильность выполнения всех предыдущих шагов, а также проверьте исправность соединительных проводов между USBASP и Atmega16.

Загрузка программы в микроконтроллер AVR с помощью программатора USBASP и Atmel Studio 7.0

7. Вы успешно загрузили тестовую программу с мигающим светодиодом в микроконтроллер используя USBASP v2.0 and Atmel Studio 7.0 и можете увидеть как мигает светодиод в собранной схеме. Теперь вы можете аналогичным образом загружать в микроконтроллер любые другие программы.

Источник: microkontroller.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru