STEMTera breadboard: инструкция, подключение, распиновка и документация
STEMTera — это слоёный пирог из макетной платы и платформы Arduino Uno.
Видеообзор
Подключение и настройка
STEMTera состоит из двух частей, каждая из которых управляется отдельным микроконтроллером.
- Первая построена на микроконтроллере ATmega328P и повторяет архитектуру Ардуино. Это означает полную совместимость с Arduino Shield’ами.
- Вторая базируется на микроконтроллере ATmega32U2, который служит для связи микроконтроллера ATmega328 с USB-портом компьютера.
В отличии от Arduino Uno, на STEMTera выведены пины микроконтроллера ATmega32U2, которыми можно управлять через Atmel Studio.
Рассмотрим более подробно оба варианта подключения.
Пример работы ATmega328
- Соедините STEMTera с компьютером по USB-кабелю. На плате должен загореться светодиод «ON».
- Для программирования платформы STEMTera в операционной системе Windows скачайте и установите на компьютер интегрированную среду разработки Arduino IDE. В диспетчере устройств платформа должна определиться как COM-порт с именем
Arduino Uno
.
После загрузки примера, светодиод на 13
пине и встроенный светодиод L
, начнут мигать раз в секунду. Это значит всё получилось и можно смело переходить к экспериментам на Arduino.
Пример работы ATmega32u2
Микроконтроллер ATmega32U2 при стандартной прошивке обеспечивает связь микроконтроллера ATmega328P с USB-портом компьютера.
Но в отличии от Arduino Uno, на STEMTera выведены пины микроконтроллера ATmega32U2.
После перепрошивки STEMTera не будет определяться как виртуальный COM-порт
в диспетчере устройств и микроконтроллер ATmega328 будет недоступен. Для восстановления доступа, прошейте ATme32U2 стандартной прошивкой.
Повторим эксперимент «маячок», но на этот раз мозгом устройства будет ATmega32U2.
- Соедините STEMtera с компьютером по USB-кабелю. На плате должен загореться светодиод «ON».
- Запустите плату STEMtera в режиме программирования Atmega32U2. Для этого с помощью провода «папа-папа» замкните пин
RST
с землёй.По истечению2
-3
секунд снимите провод «папа-папа». Обратите внимание плата STEMtera определилась как устройствоATmega32U2
: - Для работы STEMtera с микроконтроллером ATmega32U2 в операционной системе Windows скачайте и установите на компьютер интегрированную среду разработки микроконтроллеров семейства AVR — Atmel Studio.
- Прошейте платформу примером приведённым ниже:
- blink
// подключаем необходимые библиотеки #include <avr/io.h> #define F_CPU 16000000 #include <avr/io.h> #include <util/delay.h> int main(void) { // порт B в режим выхода DDRB = 0xFF; // устанавливаем нули на выходе PORTB = 0x00; while (1) { // зажигаем светодиод PORTB |= (1 << PB0); // ждём 1 секунду _delay_ms(1000); // гасим светодиод PORTB &= ~(1 << PB0); // ждём 1 секунду _delay_ms(1000); } }
После загрузки программы, светодиод на пине
PB0
начнёт мигать раз в секунду. Это значит всё получилось и можно дальше продолжать программироватьATmega32U2
более серьёзными программами.
Для перепрошивки ATmega32U2 существует множество готовых примеров использующих фреймворк LUFA. С его помощью STEMTera подключается к компьютеру в режиме эмуляции HID-контроллера. Windows определит плату как клавиатуру, джойстик или принтер — всё будет зависеть от выбранной прошивки.
Элементы платы
Микроконтроллер ATmega328P
Сердцем платформы Arduino-части является 8-битный микроконтроллер семейства AVR.
Микроконтроллер ATmega32U2
Микроконтроллер ATmega32U2 обеспечивает связь микроконтроллера ATmega328P с USB-портом компьютера. При подключении к ПК Arduino Uno определяется как виртуальный COM-порт. Прошивка микросхемы 32U2 использует стандартные драйвера USB-COM, поэтому установка внешних драйверов не требуется.
Пины питания
- VIN: Напряжение от внешнего источника питания (не связано с 5 В от USB или другим стабилизированным напряжением). Через этот вывод можно как подавать внешнее питание, так и потреблять ток, если к устройству подключён внешний адаптер.
- 5V: На вывод поступает напряжение 5 В от стабилизатора платы. Данный стабилизатор обеспечивает питание микроконтроллеров ATmega328 и ATmega32U2. Запитывать устройство через вывод
5V
не рекомендуется — в этом случае не используется стабилизатор напряжения, что может привести к выходу платы из строя. - 3.3V: 3,3 В от стабилизатора платы. Максимальный ток вывода — 50 мА.
- GND: Выводы земли.
- IOREF: Вывод предоставляет платам расширения информацию о рабочем напряжении микроконтроллера. В зависимости от напряжения, плата расширения может переключиться на соответствующий источник питания либо задействовать преобразователи уровней, что позволит ей работать как с 5 В, так и с 3,3 В устройствами.
Порты ввода/вывода
- Цифровые входы/выходы: пины
0
–13
Логический уровень единицы — 5 В, нуля — 0 В. Максимальный ток выхода — 40 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно. - ШИМ: пины
3
,5
,6
,9
,10
и11
Позволяют выводить 8-битные аналоговые значения в виде ШИМ-сигнала. - АЦП: пины
A0
–A5
6 аналоговых входов, каждый из которых может представить аналоговое напряжение в виде 10-битного числа (1024 значений). Разрядность АЦП — 10 бит. - TWI/I²C: пины
SDA
иSCL
Для общения с периферией по синхронному протоколу, через 2 провода. Для работы — используйте библиотекуWire
. - SPI: пины
10(SS)
,11(MOSI)
,12(MISO)
,13(SCK)
.
Через эти пины осуществляется связь по интерфейсу SPI. Для работы — используйте библиотекуSPI
. - UART: пины
0(RX)
и1(TX)
Эти выводы соединены с соответствующими выводами микроконтроллера ATmega16U2, выполняющей роль преобразователя USB-UART. Используется для коммуникации платы Arduino с компьютером или другими устройствами через классSerial
.
Светодиодная индикация
Имя светодиода | Назначение |
---|---|
RX и TX | Мигают при обмене данными между STEMtera в режиме Arduino и ПК. |
L | Светодиод вывода 13 микроконтроллера ATmega328. При отправке значения HIGH светодиод включается, при отправке LOW – выключается. |
ON | Индикатор питания на платформе. |
Разъём для внешнего питания
Разъём для подключения внешнего питания от 7 В до 12 В.
Кнопка сброса
Осуществляет сброс микроконтроллера ATmega328 — перезапуск микроконтроллера ATmega328.
Принципиальная и монтажная схемы
Характеристики
Общие
- Входное напряжение питания: 7–12 В
- Максимальный выходной ток пина 3.3V: 50 мА
- Максимальный выходной ток пина 5V: 800 мА
- 4 светодиодных индикации: ON, TX, RX и L
- Габариты: 115×80×16 мм
Микроконтроллер: ATmega328
- Тактовая частота: 16 МГц
- Напряжение логических уровней: 5 В
- Портов ввода-вывода общего назначения: 20
- Максимальный ток с пина ввода-вывода: 20 мА
- Портов с поддержкой ШИМ: 6
- Портов, подключённых к АЦП: 6
- Разрядность АЦП: 10 бит
- Flash-память: 32 КБ
- EEPROM-память: 1 КБ
- SRAM-память: 2 КБ
Микроконтроллер: ATmega32U2
- Портов ввода-вывода общего назначения: 20
- Напряжение логических уровней: 5 В
- Портов ввода-вывода общего назначения: 21
- Максимальный ток с пина ввода-вывода: 20 мА
- Портов с поддержкой ШИМ: 3
- Flash-память: 32 КБ
- EEPROM-память: 1 КБ
- SRAM-память: 1 КБ