Site logo

Developer Blog

Pavel Koltyshev

Обзор ATtiny13A

Содержание

attiny13a

ATtiny13a - Microchip picoPower® 8-разрядный AVR® микроконтроллер на базе RISC-архитектуры имеет: 1 KB флэш-памяти ISP, 64 bytes EEPROM, 64 bytes SRAM, 32 bytes регистровый файл и 4-канальный 10-разрядный аналого-цифровой преобразователь. Устройство обеспечивает пропускную способность до 20 MIPS на частоте 20 МГц при работе 1,8-5,5 V.

Характеристики ATtiny13a

attiny13a

ПараметрЗначение
Тип памятиFlash
Размер памяти (для записи программ)1 KB
Скорость CPU20 MIPS/DMIPS (20 МГц)
SRAM64 bytes
EEPROM64 bytes
ШИМ (PWM) контактов2
Таймеры1 x 8-bit
Диапазон температур-40 - 125 °C
Диапазон рабочего напряжения1.8 - 5.5 V
Цифровых контактов6
Аналоговых контактов4
SPI1
I2C-
UART-

MIPS (Millions of Instructions Per Second) - миллион команд в секунду.

Схема микроконтроллера ATtiny13a

attiny13a pinout

Прошивка ATtiny13a с помощью Arduino

ATtiny13a будем прошивать через SPI. Прошивка через UART невозможна из-за отсутствия UART в микроконтроллере.

Схема подключения Arduino к ATtiny13a (для прошивки)

attiny13a bootloader

ArduinoATtiny13a
GNDGND
3.3 VVcc
13PB2 (SCK)
12PB1 (MISO)
11PB0 (MOSI)
10PB5 (RESET)

Дополнительно для прошивки ATtiny13a нужно добавить конденсатор на 10 мкФ. Более длинный (положительный) контакт конденсатора подключите к выводу RESET микроконтроллера, короткий (отрицательный) контакт конденсатора подключите к выводу GND.

attiny13a bootloader

Подготовка Arduino как ISP-программатора

  1. Подключить Arduino к ПК (далее будет использоваться Arduino Pro Mini);
  2. Запустить Arduino IDE;
  3. Загрузить ArduinoISP скетч (Файл -> Примеры -> 11.ArduinoISP -> ArduinoISP);
  4. Выбрать плату Arduino, ту которую используете (Инструменты -> Плата -> Arduino AVR Boards -> Arduino Pro Mini);
  5. Выбрать используемый порт (Инструменты -> Порт);
  6. Нажать в панели управления Arduino IDE кнопку “Загрузка”;
  7. После успешной загрузки скетча, Arduino может использоваться как ISP-программатор.

attiny13a bootloader

Установка загрузчика в ATtiny13a

  1. Добавить поддержку ATtiny13a в Arduino IDE:
  1. Выбрать плату ATtiny13a (Инструменты -> Плата -> MicroCore -> ATtiny13)
  2. Настроить плату:
  1. Выбрать программатор (Инструменты -> Программатор -> Arduino as ISP (MicroCore));
  2. Записать загрузчик (Инструменты -> Записать загрузчик);
  3. В нижней части Arduino IDE появиться надпись “Запись загрузчика завершена”.

Загрузка скетча в ATtiny13a

  1. Создайте новый скетч и скопируйте в него содержимое ниже;
  2. Выбрать плату ATtiny13a (и если нужно настроить ее);
  3. Выбрать программатор (Инструменты -> Программатор -> Arduino as ISP (MicroCore));
// Мигаем светодиодом на контакте PB3 у ATtiny13a
void setup() {
  pinMode(PB3, OUTPUT);
}

void loop() {
  digitalWrite(PB3, HIGH);
  delay(1000);
  digitalWrite(PB3, LOW);
  delay(1000);
}
  1. Загрузка скетча (Скетч -> Загрузить через программатор).