ATmega8515 (Arduino IDE)

ATmega8515 – экономичный 8-разрядный микроконтроллер, основанный на усиленной AVR RISC архитектуре. Выполняя команды за один цикл, ATmega8515 достигают производительности 1 MIPS при частоте задающего генератора 1 МГц, что позволяет разработчику оптимизировать отношение потребления к производительности.

AVR ядро объединяет богатую систему команд и 32 рабочих регистра общего назначения. Все 32 регистра непосредственно связаны с арифметико-логическим устройством (АЛУ), что позволяет получить доступ к двум независимым регистрам при выполнении одной команды. В результате эта архитектура позволяет обеспечить в десятки раз большую производительность, чем стандартная CISC архитектура.

Основные параметры:

  • Высокоэффективный, экономичный 8-разрядный AVR микроконтроллер
  • RISC архитектура
    • Мощная система команд с 130 инструкциями, большинство из которых выполняются за один машинный цикл
    • 32 восьмиразрядных рабочих регистров общего назначения
    • Полностью статическое функционирование
    • Производительность до 16 млн. оп./ сек. при задающей частоте 16 МГц
    • Встроенное умножение за 2 цикла
  • Энергонезависимые память программ и данных
    • 8 кбайт внутрисхемного программируемой флэш-памяти с возможностью самозаписи
    • Долговечность: 10,000 циклов «запись-стирание»
    • Возможность создания сектора предварительной загрузки с раздельными битами защиты
    • Возможность внутрисхемного программирования программой во встроенном секторе начальной загрузки
    • Возможность считывания во время записи
    • 512 байт ЭППЗУ (EEPROM) Долговечность: 100,000 циклов «запись-стирание»
    • 512 байт внутреннего статического ОЗУ
    • Возможность организации внешней области памяти размером до 64 кбайт
    • Программирование битов защиты программного обеспечения
  • Периферийные устройства
    • Один 8-разрядный таймер-счетчик с отдельным предделителем и режимом компаратора
    • Один 16-разрядный таймер-счетчик с отдельным предделителем, режимом компаратора и режимом захвата фронтов
    • Три канала ШИМ (широтно-импульсная модуляция)
    • Программируемый последовательный УСАПП (устройство синхронной или асинхронной приемопередачи)
    • Последовательный интерфейс SPI с режимами главный и подчиненный
    • Программируемый сторожевой таймер с отдельным встроенным генератором
    • Встроенный аналоговый компаратор
  • Специальные функции микроконтроллера
    • Сброс при подаче питания и программируемый супервизор питания
    • Встроенный калиброванный RC-генератор
    • Внутренние и внешние источники запросов на прерывание
    • Три режима управления энергопотреблением: холостой ход (Idle), пониженное потребление (Power-down) и дежурный (Standby)
  • Ввод-вывод и корпуса
    • 35 программируемых линий ввода-вывода
    • 40-выв. PDIP, 44-выв. TQFP, 44-выв. PLCC и 44-выв. MLF
  • Напряжение питания
    • 2.7 — 5.5В для ATmega8515L
    • 4.5 — 5.5В дляATmega8515
  • Рабочая частота
    • 0 — 8 МГц для ATmega8515L
    • 0 — 16 МГц для ATmega8515

Для использования ATmega8515 в Arduino IDE Вам необходимо собрать следующую схему:

Перед прошивкой ATmega8515 необходимо установить поддержку контроллера в Arduino IDE, для этого откройте меню Файл >> Настройки и в пункте Дополнительные ссылки для Менеджера плат вставьте ссылку:

https://mcudude.github.io/MajorCore/package_MCUdude_MajorCore_index.json

Далее переходим в меню  Инструменты >> Плата >> Менеджер плат

В строке поиска напишите 8515, списке менеджера плат выберите пакет: MajorCore by MCUdude

После установки поддержки плат в Arduino IDE появится плата ATmega8515

  • Для прошивки скетча или загрузчика Вам понадобится программатор USBasp

Распиновка USBasp

Перед загрузкой в настройках платы укажите частоту кварцевого резонатора (16 МГц), выбрать программатор  USBasp, в пункте Bootloader выберите No bootloader или Yes (UART0) если планируете загружать скетчи через UART ( USB — TTL ).

Во вкладке «Инструменты»  нажмите «Записать загрузчик«.(делается только один раз)

После записи загрузчика Вы в Arduino IDE увидите примерно следующее:

Для загрузки скетча выберите вкладку — Скетч >> Загрузить через программатор

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

Для примера можно загрузить скетч BLINK, для этого в выводу 39 (PA0) через резистор 300 Ом подключите светодиод и загрузите один из скетчей:

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

int main(){
  DDRA |= (1<<PA0);
  
  
while(1){  
  PORTA |=(1<<PA0);
  _delay_ms(1000);
  PORTA &=~(1<<PA0);
  _delay_ms(1000);
  }}

Скетч использует 100 байт (1%) памяти устройства. Всего доступно 8192 байт.
Глобальные переменные используют 0 байт (0%) динамической памяти, оставляя 512 байт для локальных переменных. Максимум: 512 байт.

После загрузки скетча начнет мигать светодиод с интервалом 1 секунда.

Даташит — ATmega8515.pdf

 

Добавить комментарий

Войти с помощью: