- Начало работы с Digispark., а для кого то просто ATtiny85 с USB . Установка драйверов и работа с arduino IDE
- Digispark Kickstarter
- Digispark Kickstarter Micro
- Digispark Pro Kickstarter
- Самое время перейти к установке плат в нашу среду ARDUINO IDE :
- Digispark attiny85 своими руками
- Для этого понадобятся:
- Сначала рассмотрим скетч.
- //Начало скетча
- //Конец скетча
- Можете настроит этот скетч, как вам нравится.
- Или просто как есть, загрузите на плату, и соберите все, как показано на этой схеме.
- Digispark на Attiny85 — подключение под Windows 10
- USB программатор для ATtiny85 на основе загрузчика Digispark
- Необходимые компоненты
- Краткие сведения о микроконтроллере ATtiny85
- Перепрограммируемый загрузчик ATtiny85 с использованием платы Arduino Uno
- Схема USB программатора для ATtiny85
- Установка драйверов Digispark
- Конфигурирование Arduino IDE для программирования ATttiny85
Начало работы с Digispark., а для кого то просто ATtiny85 с USB . Установка драйверов и работа с arduino IDE
Итак начнем с разбора самой платы и ёё возможностей .
ATtiny85 — небольшой микроконтроллер с приличными возможностями и приятными особенностями, включая:
Плата разработчика ATTINY85 предназначена для разработки устройств с минимальными требованиями к периферии и возможностью непосредственного подключения к USB интерфейсу компьютера для программирования и отладки. Для подключения к компьютеру не требуется кабеля — контроллер подключается непосредственно в USB разъем. У контроллера выведено 6 выходов и все они доступны для использования. Два зарезервировано для работы с USB интерфейсом, к одному подключен светодиод. Для разработки можно использовать среду разработки Arduino IDE (OSX/Win/Linux).
Питаться устройство может от USB интерфейса, внешнего источника напряжением 5В и напряжением от 7В до 12В от внутреннего стабилизатора напряжения 5В 500мА. Переключение источника питания происходит автоматически.
Функции выводов контроллера:
- Р0 — ARef, SDA, DI, PWM
- P1 — DO, PWM
- P2 — D/A, SCK
- P3 — D/A, USB+
- P4 — PWM, D/A, USB-
- P5 — D/A
- Микроконтроллер: ATTINY85
- Внутренний генератор: 8МГц
- Встроенный умножитель частоты: 8
- Объем памяти программ: 8Кбайт (6Кбайт доступных)
- Аппаратные интерфейсы: SPI, I2C
- ШИМ: 3 канала
- АЦП: 4 канала
- Индикаторы: Питание Состояние (Pin0)
Пинмапинг и распиновка
Покупал я платы на Алиэкспресс :
Digispark Kickstarter
Digispark Kickstarter Micro
Digispark Pro Kickstarter
Самое время перейти к установке плат в нашу среду ARDUINO IDE :
Устанавливаем своеобразный плагин для среды Arduino (поддерживается начиная с версии 1.6.5).
Вставляем в поле Additional Boards Manager URLs строку
Переходим в меню Инструменты — Boards Manager:
В выпадающем списке Type выбираем Contributed, а затем щелкаем по Digistump AVR Boards, при этом появится кнопочка Install, которую и нажимаем:
Начнется скачивание и установка софта и драйверов. Говорим, что согласны на все:
Выбираем рекомендованную для начинающих плату Digispark (Default — 16,5mhz) — выбираем вашу плату :
Теперь можем перейти в раздел примеры — digispark и выбрать понравившийся вам тестовый скетч :
В отличие от классических плат Arduino, эту плату не нужно подключать к компьютеру перед загрузкой прошивки. Наоборот, сначала нужно запустить загрузку из среды Arduino и дождаться приглашения к подключению контроллера. Вот теперь — можно.
Таймаут на загрузку — 60 секунд:
Связано это с особым режимом работы загрузчика: при старте контроллера он ждет загрузки кода через USB в течение 5 секунд, а потом переключается в режим исполнения имеющегося в памяти контроллера кода.
Иными словами, если контроллер подключить к компьютеру до приглашения, то спустя пять секунд он начнет выполнять имеющийся код (если есть), а чтобы загрузить новый, нужно отключить и снова подключить плату к компьютеру.
Источник
Digispark attiny85 своими руками
Возможно кто то захочет сделать собственную RGB гирлянду, со своими индивидуальными алгоритмами.
Для этого понадобятся:
Плата Digispark на базе микроконтроллера Attiny85.
3 двенадцати вольтовые RGB ленты, кнопка и сопротивление 1-10 килоом.
3 мосфет транзистора 50N06 или любые другие N-канальные подходящие по мощности.
Я для сборки устройства использую макетную плату и соединительные провода, вы при желании можете сразу все спаять.
Сначала рассмотрим скетч.
Как прошить плату Digispark на базе микроконтроллера ATtiny 85 смотрите по этой ссылке www.kolotushkin.com/Как прошить плату Digispark на базе микроконтроллера ATtiny 85
//Начало скетча
//Конец скетча
В скетче имеется 5 функции:
“button2” — для опроса кнопки, и если кнопка нажата то перейти к следующей функции
“offRGB” — служит для отключения каналов RGB и обнуления переменных “r, g, b”
“program1, program2 и program3” — содержат алгоритмы для RGB ленты
Переменные “Speed1, Speed2 и Speed3” имеют значение “5”. Оно является задержкой, и влияет на скорость выполнения алгоритмов, чем больше это значение тем медленнее скорость выполнения, и наоборот.
Переменная “х” служит для хранения количества режимов для RGB. Значение “3” означает 4 программы (0, 1, 2, 3) = (offRGB, program1, program2, program3). Если вы измените количество программ, то для корректной работы также необходимо изменить значение переменной “x”.
Можете настроит этот скетч, как вам нравится.
Или просто как есть, загрузите на плату, и соберите все, как показано на этой схеме.
Обратите внимание что все 3 ленты подключены по разному!
После сборки можно можно подавать питание 12 вольт. При запуске будет выполняться нулевая программа с функцией “offRGB” и ленты светиться не будут! Нажмите кратковременно на кнопку и цикл перейдет к программе с функцией “program1”, после второго нажатия “program2”, после третьего “program3” и после четвертого нажатия опять “offRGB”.
В этой схеме я применил мосфет транзисторы 50N06. Они выдерживают напряжение до 60 вольт и ток до 50 ампер. Этого хватит для подключения 140 метров таких RGB лент как у меня. Вы можете применить любые другие N-канальные мофеты которые подойдут вам по мощности, главное соблюдайте распиновку при их подключении, ОНА МОЖЕТ ОТЛИЧАТЬСЯ от распиновки 50N06!
Источник
Digispark на Attiny85 — подключение под Windows 10
Если Вы читаете эти строки, значит что-то пошло не так… с подключением данного микроконтроллера. Знаю, у меня самого за сутки до написания статьи было так-же, но техноманьяки — народ упоротый упертый
Можно было спокойно заюзать любую из трех имеющихся ардуин или «голую» Atmega328P-PU/Atmega8-16PU
В конце концов, ПРОСТО загрузить USB-Linux c arduino ide под него.
Нет-же, в этот раз свет клином сошелся на Диджиспарке и ДЕСЯТКЕ — зря что-ли платил $3 за ESD-лицензию?.
«Уж если я чего решил, то выпью обязательно» пел Высоцкий, и как Вы поняли — таки да!
Ладно, с присказками закончили — бутаем комп, заходим в биос.
Находим пункт устройства/порты — USB — да, Digispark не работает с USB-3
Отключаем совместимось USB3-Disable (У некоторых просто может выставляться режим порта — ставим USB-2 Compatible)
У меня этот пункт назывался xHCI — Disable
Не торопитесь выходить — включите отладку — Debug-Enable
Опять на моем биосе эта функция зовется иначе — EHCI — Enable
Гуд? Загрузили винду?
Не торопитесь входить в ArduinoIde!
Снесите для начала Все установленные ранее дрова под digistump/digispark!
WIN-x — выполнить — regedit — поиск ищем digistump в реестре и беспощадно удаляем, F3 — поиск дальше!
Повторяем процедуру со словом digispark.
Контролный reboot в голову — винда все-же 😉
Теперь нам нужно сделать две закачки — правильный комплект дров с лоадером — micronucleus по ссылке
У меня это была версия micronucleus-2.0a4-win.zip
Еще нужна прога ArduinoIde с предустановленной поддержкой Digispark-a — идем сюда:
качаем последний ArduinoIDE, моя версия(на 07.06.2018) — DigisparkArduino-Win32-1.0.4-May19.zip, извлекаем содержимое.
На 64-битке — работает!
Распаковываем/сетапим наш микронуклеус драйвер.
Окей, запускаем DigisparkArduino версии 1.0.4!
Старый? А Вам Шашечки или Ехать?
Its a Sparta — это винда!
Лулзов добавляет, трейдмарк Sparta, под которым у меня импульсный паяльник и набор отверточек.
Но не торопитесь подключать плату в Usb порт!
Выбираем (в ArduinoIDE ) Сервис-Плата-Digispark (Tiny Core)
Наконец пришло время поморгать светодиодом 😉
Загружаем Ctrl-U (ведь правда мы еще не вставляли плату в ЮСБ? ЭТО ВАЖНО!!)
Вот только после такой надписи внизу — включаем Digispark в порт.
иначе он будет бесцельно блинкать появляясь и исчезая в устройствах — как первый спутник земли!
Если ВСЕ пункты выполнялись внимательно и последовательно, то мы получим подобную картинку
Источник
USB программатор для ATtiny85 на основе загрузчика Digispark
ATtiny – это серия самых маленьких микроконтроллеров из семейства AVR. Эти микроконтроллеры могут использовать большинство библиотек, доступных для платформы Arduino. ATtiny85 – это 8-пиновый 8-битный микроконтроллер семейства AVR. Его исключительно малый размер и низкое энергопотребление делают его чрезвычайно удобным для реализации небольших (в особенности переносных) проектов. Но его программирование может вызвать некоторые сложности у начинающих радиолюбителей поскольку у него нет USB интерфейса как у современных микроконтроллерных плат (например, Arduino).
В сети можно найти статьи по программированию микроконтроллера ATtiny85 с помощью платы Arduino Uno. Но использование платы Arduino в качестве ISP (In System Programming — внутрисистемное программирование) программатора для ATtiny85 не очень удобно и отнимает достаточно много времени. Поэтому в данной статье мы рассмотрим создание простого программатора для ATtiny85, который можно подключать к USB интерфейсу и, таким образом, программировать ATtiny85 как микроконтроллерную плату (с USB).
Также подобную готовую плату можно купить на Aliexpress (есть платы как с уже установленным микроконтроллером, так и с местом под его установку), в сети ее называют Digispark ATtiny85. В интернете можно найти достаточно много обзоров данной платы, лично мне понравился больше всего вот этот обзор — https://voltiq.ru/digispark-attiny85-review/.
Необходимые компоненты
- Плата Arduino Uno (купить на AliExpress) — необходима только на начальном этапе, для первоначальной загрузки загрузчика.
- Микроконтроллер ATtiny85 (купить на AliExpress).
- USB A-type Plug Male – USB разъем “папа” A-типа (купить на AliExpress).
- Резисторы 47 Ом (2 шт.) и 1 кОм (купить на AliExpress).
- Zener Diode (2 шт.) – диод Зенера, стабилитрон.
- Диод IN5819 (купить на AliExpress).
- 8-Pin IC Base — 8-пиновая основа (база) для микросхемы (купить на AliExpress).
- Макетная плата.
- Соединительные провода.
Краткие сведения о микроконтроллере ATtiny85
ATtiny85 – это высокопроизводительный 8-битный микроконтроллер с низким энергопотреблением, построенный на основе архитектуры Advanced RISC. Он имеет 8 Кбайт перепрограммируемой флеш-памяти (память программ), 512 Байт EEPROM (энергонезависимой памяти), 512 Байт оперативной памяти (SRAM), 6 контактов ввода/вывода общего назначения 32 регистра общего назначения, один 8-битный таймер/счетчик с режимом сравнения, один 8-битный высокоскоростной таймер/счетчик, USI (универсальный последовательный интерфейс), внутренние и внешние прерывания, 4-х канальный 10-битный АЦП (аналого-цифровой преобразователь), программируемый сторожевой таймер с внутренним генератором, 3 программно управляемых режима энергопотребления.
Назначение контактов (распиновка) микроконтроллера ATtiny85 приведено на следующем рисунке.
Большинство контактов ATtiny85 могут выполнять несколько функций.
Перепрограммируемый загрузчик ATtiny85 с использованием платы Arduino Uno
Для программирования ATtiny85 без использования платы Arduino мы сначала должны загрузить в него загрузчик используя плату Arduino Uno. Этот процесс выполняется один раз и в дальнейшем у нас не будет необходимости в использовании платы Arduino для программирования микроконтроллера ATtiny85. Загрузчик (bootloader) – это специальная программа, которая выполняется в микроконтроллере, который необходимо запрограммировать. Использование загрузчика – это один из самых удобных способов загрузки программы в микроконтроллер. Загрузчик находится в микроконтроллере и выполняет поступающие команды, а затем записывает новую программу в память микроконтроллера.
Перепрограммируемый загрузчик в микроконтроллере устраняет необходимость в использовании специальных внешних аппаратных средств (плат программирования, программаторов) для программирования микроконтроллера и позволяет загружать программу в микроконтроллер непосредственно с помощью USB соединения. Платы Digispark ATtiny85 (а выбор подобных плат сейчас достаточно большой) работают на загрузчике “micronucleus tiny85”, первоначально написанным Bluebie. Загрузчик – это программный код, который заранее загружен в плату Digispark и позволяет работать ей как USB устройство, которое можно программировать с помощью Arduino IDE. Мы будем использовать аналогичный подход и загружать загрузчик digispark attiny85 в наш микроконтроллер ATtiny85.
Для реализации этой задачи необходимо выполнить следующую последовательность шагов.
Шаг 1. Конфигурирование платы Arduino Uno в качестве ISP программатора.
Поскольку ATtiny85 является всего лишь микроконтроллером, для его программирования требуется ISP (In-System Programming — внутрисистемное программирование). Поэтому для программирования ATtiny85 нам необходимо сначала сконфигурировать плату Arduino Uno в качестве ISP программатора. Для этого подключите плату Arduino Uno к компьютеру и запустите Arduino IDE. После этого откройте пункт меню File > Example > ArduinoISP и загрузите в Arduino ISP код.
Шаг 2. Схема перепрограммируемого загрузчика ATtiny85.
Схема перепрограммируемого загрузчика ATtiny85 представлена на следующем рисунке.
Конденсатор 10 мкФ подключен между контактами Reset и GND платы Arduino. Все соединения схемы представлены в следующей таблице:
ATtiny85 Pin | Arduino Uno Pin |
Vcc | 5V |
GND | GND |
Pin 2 | 13 |
Pin 1 | 12 |
Pin 0 | 11 |
Reset | 10 |
После сборки схемы подключите плату Arduino Uno и запустите Arduino IDE. Определите к какому COM порту подключена плата Arduino Uno (в диспетчере устройств Windows). В нашем случае это COM5.
После этого скачайте файлы для загрузчика ATtiny85 по следующей ссылке. Откройте файл «Burn_AT85_bootloader.bat» и измените в нем COM порт с именем «PCOM5» на тот COM порт, к которому подключена у вас плата Arduino Uno. Сохраните изменения.
После этого скопируйте отредактированный файл «Burn_AT85_bootloader.bat» и файл ATtiny85.hex» в корневой каталог Arduino IDE (C:\Program Files (x86)\Arduino).
После этого сделайте клик правой кнопкой мыши на файле «Burn_AT85_bootloader.bat» и выберите «Run as Admin» (запуск от администратора). Необходимо примерно 5-6 секунд чтобы загрузчик загрузился. Если все прошло успешно, то вы должны увидеть сообщение «AVRdude done. Thank you. Press any key to continue. «.
После выполнения этой операции загрузчик будет успешно установлен в микроконтроллер ATtiny85. После этого микроконтроллер ATtiny85 можно будет программировать через USB с помощью нашего самодельного программатора, который описан далее в статье.
Схема USB программатора для ATtiny85
Схема USB программатора для ATtiny85 представлена на следующем рисунке. В ней мы подключаем микроконтроллер ATtiny85 к разъему Male USB Plug. За основу схемы была взята схема платы Digispark ATtiny85, расположенная по следующему адресу.
R3 в данной схеме выполняет роль подтягивающего резистора и подключен между контактами Vcc и PB3 микроконтроллера. Стабилитроны D1-D2 используются для защиты USB интерфейса. После сборки программатора на перфорированной плате у нас получилась конструкция следующего вида:
Установка драйверов Digispark
Чтобы программировать ATtiny85 через USB вам необходимо установить на свой компьютер драйверы Digispark. Скачайте их по приведенной ссылке, извлеките их из zip архива и запустите на выполнение файл “DPinst64.exe” чтобы установить эти драйверы.
После того как драйверы будут успешно установлены, подключите собранную плату программатора с установленным в нее ATtiny85 к компьютеру. После этого откройте диспетчер устройств в Windows и найдите в нем устройство ATtiny85 в устройствах “libusb-win32 devices” под именем “Digispark Bootloader”. Если таким образом вам не удается найти ‘libusb-win32 devices’ в диспетчере устройств, нажмите в нем обзор и выполните поиск скрытых устройств (‘Show hidden Devices’).
Конфигурирование Arduino IDE для программирования ATttiny85
Для того, чтобы программировать плату ATtiny85 с помощью Arduino IDE сначала нам необходимо добавить поддержку платы Digispark в Arduino IDE. Для этого откройте пункт меню File > Preferences, добавьте следующую ссылку в Additional Boards Manager URLs в Arduino IDE и нажмите ‘OK.’
После этого откройте пункт меню tools > Board > Board Manager, выполните поиск ‘Digistump AVR’ и установите его последнюю версию.
После этого в инструментах вы обнаружите новый пункт меню с именем ‘Digispark’.
Затем откройте пункт меню file > Examples > Basics и откройте Blink example (пример с мигающим светодиодом).
Измените в коде этого примера номер контакта с LED_BUILTIN на 0.
После этого откройте пункт меню Tools -> Board и выберите плату “Digispark (Default – 16mhz)”. После этого в Arduino IDE нажмите кнопку загрузки кода.
Примечание : подключайте плату программатора ATtiny85 к компьютеру только тогда, когда в Arduino IDE появится сообщение “Plugin device now”.
После того как код программы будет загружен в плату с микроконтроллером, светодиод, подключенный к ATtiny85, начнет мигать.
Более подробно процесс работы платы нашего программатора можно посмотреть в следующем видео.
Источник