Дополнительные ссылки для менеджера плат ардуино attiny

Дополнительные ссылки для менеджера плат ардуино attiny

Добавляем поддержку не родных м/к в среду Arduino IDE

Иногда можно использовать в своих проектах умного дома более простые или слабые микроконтроллеры,где ресурсов может быть достаточно для простых операций -Такие микроконтроллеры дешевле.Кроме программирования таких микроконтроллеров в более сложной среде разработки в WinAVR или CodeVisionAVR можно использовать среду Arduino IDE,добавив их поддержку.Иногда могут пригодится микроконтроллеры с бОльшим количеством портов,например Atmega16 и Atmega32 — их так же можно программировать в Arduino.

Обратите внимание,что обычно микроконтроллер с завода настроен на внутренний генератор и чаще всего прошивка загрузчика переключает микроконтроллер на внеший кварц — так что Вы должны позабодиться о подключении кварца к выводам микроконтроллера(выводы XTAL) по стандартной схеме.Исключение — серия attiny и некоторые другие м/к..

Серия микроконтроллеров ATtiny

attiny13,attiny2313, attiny45, attiny44,attiny85, attiny84, attiny25, attiny24, attiny4313

Цоколевка микроконтроллеров

Для программирования ATtiny 13/25/45/85 подключим его к нашему программатору согласно даташиту:

Примечание: У ATtiny13 нет шины i2c и имеет всего 1кб под программу.У ATtiny 25/45/85 имеется последовательный порт на выводах PB4 -RX ,PB3 — TX ,но м/к не поддерживают загрузку через его,только обмен данными.

У ATtiny 2313 и 4313 другая цоколевка,но подключается так же:

Настройка Arduino IDE для микроконтроллеров ATtiny

Для этого необходимо дописать нужные микроконтроллеры в файл boards.txt и распаковать архив arduino-tiny в папку папка_arduino/hardware/arduino/

Последнюю версию arduino-tiny можно найти тут.

Например ,чтобы добавить в список поддерживаемых контроллеров ATtiny85 необходимо добавить следущий текст в boards.txt:

###########################################################################
attiny85.name=Optiboot ATtiny85 @ 8 MHz (internal osc)
attiny85.upload.protocol=arduino
attiny85.upload.speed=9600
#bootloader takes up last 10 pages, so there is a limit on the max size.
attiny85.upload.maximum_size=7616
attiny85.bootloader.low_fuses=0xE2
attiny85.bootloader.high_fuses=0xD7
attiny85.bootloader.extended_fuses=0xFE
attiny85.bootloader.path=optiboot
attiny85.bootloader.file=optiboot_attiny85.hex
attiny85.build.mcu=attiny85
attiny85.build.f_cpu=8000000L
attiny85.build.core=tiny
attiny85.build.variant=tinyX5
# вариант c частотой внутренного генератора 8 мгц.
###########################################################################

Остальные примеры поддерживаемых микроконтроллеров можно посмотреть в файле Prospective Boards.txt архива arduino-tiny .

Для ATtiny13 необходимо другое ядро ,для этого распакуем архив в папку hardware\arduino\cores\core13\

и добавляем в список boards.txt:

attiny13.name=ATtiny13 (internal 9.6 MHz clock)
attiny13.bootloader.low_fuses=0x7a
attiny13.bootloader.high_fuses=0xff
attiny13.upload.maximum_size=1024
attiny13.build.mcu=attiny13
attiny13.build.f_cpu=9600000L
attiny13.build.core=core13
attiny13.build.variant=tiny8

Сейчас мы можем программировать добавленные микроконтроллеры через плату Arduno или USBasp.

Другие микроконтроллеры ATmega

ATmega8 без загрузчика

Чтобы добавить м/к ATmega8 без загрузчика добавляем в boards.txt следущий текст:

ATmega8 имеется в списке поддерживаемых как Arduino NG or older с загрузчиком,который отнимает 1 кб ,при таком загрузчике микроконтроллер можно прошивать стандартно,установив его например в Arduino UNO. Сконфигурировать свой загрузчик на другую частоту вы можете в Конструкторе Bootloader`а .

ATmega32 ,ATmega16,ATmega1284,ATmega644,ATmega324

Для добавления данных микроконтроллеров необходимо распаковать из архива avr-netino папку hardware\avrnetio и поместить её в папку Arduiono_ide\hardware\ .Другие папки с примерами и библиотеками можно так же распаковать в соотвествующие папки при необходимости.

Расмотрим пример на микроконтроллере ATmega32:

Микроконтроллер ATmega32 имеет 40 ножек из них 32 — это порты ввода вывода.

Расшифруем основные из них:

D — это цифровые выводы в нумерации arduino.

AI — аналоговые входы.

PWM — выводы с возможностью ШИМ.

Если Вы правельно скопировали папку avrnetio ,то после запуска Arduino IDE Вы увидите добавленные микроконтроллеры в общем списке.Вы можете исправить или удалить некоторые ненужные микроконтроллеры в файле hardware\avrnetio \board.txt

Если сейчас подключить микроконтроллер к Arduno или USBasp ,то можно уже заливать скетчи из среды Arduino IDE .

Обратите внимание,что новый м/к запрограммирован работать от внутреннего генератора и при прошивке загрузчика (через меню сервис-> записать загрузчик) поменяются фьюзы на режим от внешнего кварца.Загрузчик прошивать не обязательно,если Вы не хотите Заливать скетчи через последовательный порт.Перед прошивкой загрузчика можно поправить фьюзы в файле board.txt в строках bootloader.low_fuses и bootloader.high_fuses используя калькулятор фьзов.

Хотя avr-netino и поставляется с загрузчиками,но загрузка через последовательный порт на ATmega32 у меня не заработала.Для загрузки через его необходимо подсунуть «правельный» загрузчик в папку /hardware/avrnetio/bootloaders/optiboot/ из архива boots.zip ,заменив в файле board.txt имя файла загрузчика в строке bootloader.file соотвествующего микроконтроллера .Сконфигурировать свой загрузчик на другую частоту вы можете в Конструкторе Bootloader`а

Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.

Источник

Установка поддержки микроконтроллеров ATtiny в IDE Arduino. Инструкция

ATtiny (Atmel AVR) — микроконтроллеры от американского производителя Atmel пользуется особой популярностью у радиолюбителей. Недорогие микроконтроллеры ATtiny очень просты в программировании и благодаря очень низкому энергопотреблению и малым размерам идеально подходят для небольших или простых проектов.

Например, вам не нужно использовать большую плату Arduino UNO для небольшого проекта, в котором задействованы всего 2-3 цифровых вывода. Достаточно перенести весть проект на подходящую модель ATtiny и загрузить скетч через IDE Arduino.

Но поскольку изначально IDE не поддерживает микроконтроллеры ATtiny, то нам для программирования потребуется установить необходимые драйвера.

На самом деле установить в IDE Arduino поддержку микроконтроллеров семейства ATtiny не так уж и сложно.

Нам нужно только добавить новую ссылку-источник в нашу Arduino IDE, а затем выполнить установку всех необходимых драйверов с помощью встроенного менеджера плат. В результате всей это проделанной работы у нас появиться возможность работать с микроконтроллерами серия ATtiny.

Давайте рассмотрим все шаги по порядку:

Шаг 1: Сначала запустите программу Arduino IDE и перейдите по пути: «Файл – Настройки».

В поле, помеченное как «Дополнительные ссылки для Менеджера плат», вводим следующую строку:

http://drazzy.com/package_drazzy.com_index.json

и сохраняем, нажимая «ОК».

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

После этого закрываем IDE и запускаем заново.

Шаг 2: Теперь нажимаем «Инструменты — Плата:**** — Менеджер плат…»:

В имеющееся окно впишите слово ATtiny и нажмите Enter. В списке Драйверов найдите ATTinyCore наведите мышь на поле с описанием, нажмите на появившуюся кнопку «Установка» и дождитесь завершения установки драйверов:

Когда вы выполнили все вышеперечисленные шаги, закройте «Менеджер плат». Перейдите по пути «Инструменты — Плата:**** — ATTinyCore». Вы увидите все доступные в IDE микроконтроллеры Attiny:

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

Источник

Программирование ATTINY13 / ATTINY13A в Arduino IDE

Несмотря на то, что микроконтроллеры семейства ATtiny чрезвычайно дешёвые и при этом считаются очень полезными, всё равно ощущается острый недостаток проектов и руководств по применению этих микросхем. Из этого руководства вы узнаете, как создавать приложения для микроконтроллера ATtiny13 и загружать их посредством среды разработки Arduino IDE.

Прежде всего, ATtiny13 — это 8‑битный микроконтроллер КМОП с низким энергопотреблением на базе усовершенствованной RISC-архитектуры AVR. После приобретения компании Atmel компанией Microchip новый микроконтроллер ATtiny13 по-прежнему находится в производстве.

Выполняя мощные инструкции за один тактовый цикл, микроконтроллер ATtiny13 достигает производительность в 1 миллион операций в секунду на 1 МГц, позволяя разработчикам систем сбалансировать энергопотребление и скорость обработки.

Для проекта нам понадобятся следующие компоненты:

Схема подключения

Соедините элементы, как показано на нижеследующей схеме, созданной с помощью программы Fritzing (полный обзор программы по ссылке).

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

Сначала нужно соединить вывод 5V платы Arduino и вывод 8 микроконтроллера ATtiny. Затем соедините соответствующие выводы платы и микроконтроллера: GND к 4, 13 к 7, 12 к 6, 11 к 5 и, наконец, 10 к 1.

Программирование микроконтроллера ATtiny13

Для загрузки программы в микроконтроллер ATtiny13 нам необходимо настроить плату Arduino в режим программатора. Это можно сделать, загрузив готовый пример ArduinoISP в плату, выбрав пункт меню Файл > Примеры > ArduinoISP (File > Examples > ArduinoISP) в среде разработки.

Теперь наша плата Arduino готова запрограммировать микроконтроллер ATtiny13, но нам ещё нужно настроить среду разработки для работы с ATtiny13, установив специальные файлы. В этом руководстве отдаётся предпочтение файлам от пользователя sleepmanj.

Для установки этих файлов запустите среду Arduino IDE и выберите пункт меню Файл > Настройки (File > Preferences). Скопируйте следующий адрес в поле «Дополнительные ссылки для Менеджера плат» (Additional Boards Manager URLs): https://raw.githubusercontent.com/sleemanj/optiboot/master/dists/package_gogo_diy_attiny_index.json. Если у вас уже есть ссылка в этом поле, то можно добавить новую, отделив её от прежней запятой и пробелом.

Теперь зайдите в меню Инструменты > Плата (Tools > Board) и щёлкните на пункте «Менеджер плат» (Boards Manager). Теперь прокрутите вниз, пока не увидите плату DIY ATtiny, установите её файлы, нажав кнопку «Установка» (Install).

Запись начального загрузчика в микроконтроллер ATtiny

По сути, начальный загрузчик (bootloader) — это часть встроенного программного обеспечения, которая позволяет устанавливать новое ПО без использования внешнего программатора.

Чтобы начать программировать микроконтроллер ATtiny13, нам необходимо записать в него начальный загрузчик. Для этого надо выполнить два шага. Первый — в меню Инструменты > Плата (Tools > Board) выбрать ATtiny13. Второй — выбрать пункт меню Инструменты > Записать Загрузчик (Tools > Burn Bootloader).

Необходимо обратить внимание на версию микроконтроллера ATtiny и в меню Инструменты > Процессор (Tools > Processor Version) выбрать ATtiny13 или ATtiny13a в зависимости от вашей версии.

После записи Загрузчика микроконтроллер ATtiny готов для программирования. Вы теперь можете попробовать примеры из среды Arduino IDE, такие как Blink.

Чтобы пример Blink работал как следует, вам необходимо ознакомиться с нижеприведённой схемой.

Здесь вывод 3 на микросхеме определён как 4 (PB4), поэтому скорректированный код будет выглядеть следующим образом:

Далее измените свою схему, добавив светодиод между выводом 3 и землёй GND вместе с подходящим резистором.

Поиск и устранение неисправностей

Если при реализации этого проекта у вас возникли какие-либо проблемы, вы можете выполнить следующее:

  • Перепроверьте все соединения и положение микросхемы ATtiny и светодиода.
  • Перезапишите пример ArduinoISP в плату Arduino.
  • Установите электролитический конденсатор 10 мкФ между землёй и выводом сброса (Reset) на плате Arduino. Убедитесь, что установили конденсатор в правильном положении — отрицательная ножка соединяется с землёй.
  • Установите любой большой конденсатор между линией 5 В (5V) и линией земли на макетной плате, это поможет сгладить скачки напряжения.
  • Убедитесь, что плата Arduino, через которую программируется микроконтроллер ATtiny, получает достаточно электропитания. 9‑вольтовой батарейки может оказаться недостаточно.
  • Замените свою плату Arduino на другую плату Arduino.
  • Убедитесь, что используете актуальную версию среды разработки и актуальные специальные файлы для микроконтроллера.
  • Откройте меню «Инструменты» (Tools) и удостоверьтесь, что оно выглядит, как на рисунке из раздела этой статьи «Запись начального загрузчика». Если что-то отличается, то измените это и снова запишите загрузчик.

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

Теперь, когда всё готово, время исследовать новые идеи и применения, программируя микроконтроллер ATtiny с помощью среды Arduino IDE!

Источник

Adblock
detector