Программирование ATtiny85 с помощью платы Arduino Uno

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

Внешний вид процесса программирования ATtiny85 с помощью платы Arduino Uno

Микросхема ATtiny85 содержит 8 контактов – 6 контактов ввода/вывода (включая Reset) и 2 контакта питания. Но как его программировать если он не имеет USB интерфейса как большинство современных микроконтроллерных плат? В этом случае его можно запрограммировать с помощью платы Arduino Uno (этот способ мы рассмотрим в данной статье) или сконструировать самодельный USB программатор для ATtiny85.

Необходимые компоненты

  1. Плата Arduino Uno (купить на AliExpress).
  2. Микроконтроллер ATtiny85 (купить на AliExpress).
  3. Светодиод (купить на AliExpress).
  4. Резистор 220 Ом (купить на AliExpress).
  5. Макетная плата.
  6. Соединительные провода.

Краткие сведения о микроконтроллере ATtiny85

ATtiny85 – это высокопроизводительный 8-битный микроконтроллер с низким энергопотреблением, построенный на основе архитектуры Advanced RISC. Он имеет 8 Кбайт перепрограммируемой флеш-памяти (память программ), 512 Байт EEPROM (энергонезависимой памяти), 512 Байт оперативной памяти (SRAM), 6 контактов ввода/вывода общего назначения 32 регистра общего назначения, один 8-битный таймер/счетчик с режимом сравнения, один 8-битный высокоскоростной таймер/счетчик, USI (универсальный последовательный интерфейс), внутренние и внешние прерывания, 4-х канальный 10-битный АЦП (аналого-цифровой преобразователь), программируемый сторожевой таймер с внутренним генератором, 3 программно управляемых режима энергопотребления.

Назначение контактов (распиновка) микроконтроллера ATtiny85 приведено на следующем рисунке.

Назначение контактов (распиновка) микроконтроллера ATtiny85

Большинство контактов ATtiny85 могут выполнять несколько функций.

Пошаговое руководство по программированию ATtiny85 с помощью платы Arduino Uno

Шаг 1. Конфигурирование платы Arduino Uno в качестве ISP

Поскольку ATtiny85 является всего лишь микроконтроллером, то для его программирования необходимо использовать ISP (In-System Programming – внутрисистемное программирование. Поэтому нам необходимо сконфигурировать Arduino Uno в качестве ISP чтобы ее можно было использовать как программатор для ATtiny85. Для этого подсоедините Arduino Uno к компьютеру и запустите Arduino IDE. После этого откройте пункт меню File > Example > ArduinoISP и загрузите код ArduinoISP в плату Arduino Uno.

Конфигурирование платы Arduino Uno в качестве ISP

Шаг 2. Схема для программирования ATtiny85

Схема для программирования ATtiny85 с помощью платы Arduino Uno представлена на следующем рисунке.

Схема для программирования ATtiny85 с помощью платы Arduino Uno

В схеме положительный вывод светодиода подключен к контакту 0 микроконтроллера ATtiny85 через резистор 220 Ом. Полная схема соединений представлена в следующей таблице.

ATtiny85 Плата Arduino Uno
Vcc 5V
GND GND
Pin 2 13
Pin 1 12
Pin 0 11
Reset 10

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

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

Шаг 3. Программирование ATtiny85 с помощью Arduino IDE

Для программирования ATtiny85 с помощью Arduino IDE первым делом нам необходимо добавить поддержку ATtiny85 в Arduino IDE. Для этого откройте пункт меню File > Preferences, добавьте приведенную ниже ссылку в поле Additional Boards Manager URLs и нажмите ‘OK.’

https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json

Добавление поддержки ATtiny85 в Arduino IDE

Затем откройте пункт меню Tools > Board > Board Manager, запустите там поиск ‘attiny’ и установите его последнюю версию.

Установка последней версии attiny

После этого вы увидите как у вас появится новый пункт в меню Arduino IDE – в пункте Board появится подпункт с именем 'Attiny25/45/85'.

В меню появился новый пункт с именем 'Attiny25/45/85'

Теперь откройте File > Examples > Basics и в нем откройте пример с миганием светодиода (Blink example).

Открытие примера с миганием светодиода (Blink example)

Измените в этом примере номер контакта с LED_BUILTIN на 0.

Изменение в примере мигания светодиода номера контакта с LED_BUILTIN на 0

Теперь снова откройте пункт меню Tools -> Board и выберите “Attiny25/45/85”, потом выберите ATtiny85 в пункте Tools > Processor.

Выбор необходимых инструментов в Arduino IDE

Теперь можете произвести загрузку кода программы в микроконтроллер. Если после загрузки программы светодиод, подключенный к контакту 0 микроконтроллера Attiny85, начнет мигать, значит, программа загружена успешно.

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

(Проголосуй первым!)
Загрузка...
156 просмотров


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

Ваш адрес email не будет опубликован. Обязательные поля помечены *