Arduino M0

Примечание

Эта страница относится к продукту, снятому с производства.

Arduino M0 предоставляет мощность 32-битного микроконтроллера.

Плата Arduino M0

С новой платой Arduino M0 творческие люди получат потенциал для создания самых необычных и новых идей для IoT-устройств, носимых технологий, высокотехнологичной автоматизации, робототехники и других пока ещё немыслимых приключений в мире мейкеров. Arduino M0 представляет собой простое, но мощное 32-битное расширение платформы Arduino UNO. Плата работает на микроконтроллере Atmel SAMD21 с 32-битным ядром ARM Cortex M0. С появлением платы M0 семейство Arduino становится больше, предоставляя новый член с повышенной производительностью.

Мощность ядра Atmel даёт этой плате улучшенную гибкость и расширяет горизонты проектов, которые можно задумать и реализовать; более того, это делает M0 идеальным образовательным инструментом для изучения разработки 32-битных приложений.

Начало работы

В разделе Начало работы вы можете найти всю необходимую информацию для настройки платы, использования Arduino Software (IDE) и начала экспериментов с программированием и электроникой.

Документация

Схемы (открытое оборудование)

Arduino M0 — это открытое оборудование! Вы можете собрать свою собственную плату, используя следующие файлы:

Питание

Arduino M0 может питаться через разъём micro USB или от внешнего источника питания. Источник питания выбирается автоматически. Внешнее (не USB) питание может поступать от адаптера переменного тока (блок питания) или батареи. Адаптер подключается к плате через разъём питания с центральным положительным штекером 2.1 мм. Провода от батареи можно подключить к выводам Gnd и Vin разъёма POWER. Плата автоматически определяет доступные источники питания и выбирает нужный в соответствии со следующим приоритетом:

  • Внешнее питание

  • USB (Target)

Внешнее питание необходимо, когда 500 мА через USB-разъём недостаточно для питания подключённого USB-устройства в приложении USB-хоста. Выводы питания:

  • VIN — входное напряжение платы Arduino при использовании внешнего источника питания (в отличие от 5 В от USB или другого стабилизированного источника). Вы можете подавать напряжение через этот вывод или, при питании через разъём, получать доступ к нему через этот вывод. Допустимый диапазон входного напряжения для этого вывода (и разъёма питания) — 6–20 В.

  • 5V — стабилизированное напряжение питания для микроконтроллера и других компонентов на плате. Может поступать от VIN через встроенный стабилизатор или от USB или другого стабилизированного источника 5 В. Максимальный выходной ток встроенного стабилизатора — 1 А (в зависимости от источника входного питания).

  • 3V3 — напряжение 3.3 В от встроенного стабилизатора. Максимальный ток — 1 А (в зависимости от источника входного питания).

  • GND — выводы земли.

  • IOREF — напряжение, на котором работают выводы ввода/вывода платы (т.е. VCC для платы). Для M0 это 3.3 В.

Память

ATSAMD21G18 имеет 256 КБ flash-памяти программ (из которых 4 КБ используются загрузчиком). Загрузчик предустановлен на заводе Atmel и хранится в выделенной ROM-памяти. Загрузчик защищён с помощью NVM-предохранителя. Микроконтроллер также имеет 32 КБ SRAM.

Входы и выходы

Каждый из 14 цифровых выводов M0 может использоваться как вход или выход с помощью функций pinMode(), digitalWrite() и digitalRead(). Они работают на напряжении 3.3 В. Максимальный постоянный ток — 7 мА, внутренний подтягивающий резистор (по умолчанию отключён) номиналом 20–60 кОм. Кроме того, некоторые выводы имеют специализированные функции:

  • Serial: 0 (RX) и 1 (TX). Используются для приёма (RX) и передачи (TX) последовательных данных TTL с использованием аппаратного последовательного порта ATSAMD21G18. Обратите внимание, что на M0 класс SerialUSB относится к USB (CDC) связи; для последовательной связи на выводах 0 и 1 используйте класс Serial5.

  • TWI: SDA и SCL. Поддержка TWI-связи с использованием библиотеки Wire.

  • ШИМ: выводы 2–13. Обеспечивают 8-битный ШИМ-выход с помощью функции analogWrite(). Разрешение ШИМ может быть изменено с помощью функции analogWriteResolution(). Примечание 1: выводы 4 и 10 не могут использоваться одновременно для ШИМ. Примечание 2: выводы 5 и 12 не могут использоваться одновременно для ШИМ.

  • SPI — на разъёме ICSP. Эти выводы поддерживают SPI-связь с использованием библиотеки SPI. Обратите внимание, что выводы SPI не подключены ни к одному из цифровых выводов, как на Uno. Они доступны только на разъёме ICSP. Это означает, что если у вас есть шилд, использующий SPI, но НЕ имеющий 6-выводного разъёма ICSP для подключения к 6-выводному ICSP-разъёму M0, шилд не будет работать.

  • LED: 13. Встроенный светодиод подключён к цифровому выводу 13. Когда вывод имеет значение HIGH, светодиод включён; когда LOW — выключен.

  • Аналоговые входы: A0–A5. M0 имеет 6 аналоговых входов, обозначенных A0–A5. Выводы A0–A5 расположены в тех же местах, что и на Uno. Каждый аналоговый вход обеспечивает разрешение 12 бит (т.е. 4096 различных значений). По умолчанию аналоговые входы измеряют напряжение от земли до 3.3 В, хотя можно изменить верхнюю границу диапазона с помощью вывода AREF и функции analogReference().

  • DAC: вывод A0 обеспечивает истинный аналоговый выход с разрешением 10 бит (1023 уровня) с помощью функции analogWrite(). Этот вывод может использоваться для создания аудиовыхода с помощью библиотеки Audio.

  • Reset — понижение этой линии сбрасывает микроконтроллер. Обычно используется для добавления кнопки сброса, когда шилды блокируют кнопку на плате.

Связь

Arduino M0 имеет ряд средств для связи с компьютером, другим Arduino или другими микроконтроллерами и различными устройствами, такими как телефоны, планшеты, камеры и т.д. SAMD21 обеспечивает один аппаратный UART и три аппаратных USART для последовательной связи на 3.3 В. Программное обеспечение Arduino включает монитор порта, позволяющий отправлять и получать простые текстовые данные на плату и обратно. Светодиоды RX и TX мигают при передаче данных через чип ATSAMD21G18 и USB-соединение с компьютером (но не при последовательной связи на выводах 0 и 1). Нативный USB-порт подключён к SAMD21. Он обеспечивает последовательную (CDC) связь через USB. Это предоставляет последовательное соединение с монитором порта или другими приложениями на компьютере. SAMD21 также поддерживает TWI и SPI связь. Программное обеспечение Arduino включает библиотеку Wire для упрощения использования шины TWI. Для SPI-связи используйте библиотеку SPI.

Программирование

Arduino M0 может быть запрограммирован с помощью программного обеспечения Arduino. Если вы используете Linux, следуйте руководству Arduino IDE на Linux. Загрузка скетчей на SAMD21 отличается от работы с микроконтроллерами AVR в других платах Arduino: flash-память должна быть стёрта перед перепрограммированием. Операция загрузки управляется выделенной областью ROM на SAMD21. USB-порт: для использования этого порта выберите «Arduino M0 (Native USB Port)» в Arduino IDE. Нативный USB-порт подключён напрямую к SAMD21. Подключите нативный USB-порт M0 (ближайший к кнопке сброса) к компьютеру. Открытие и закрытие нативного порта на скорости 1200 бод инициирует процедуру «мягкого стирания»: flash-память стирается и плата перезапускается с загрузчиком. Открытие и закрытие нативного порта на другой скорости не сбрасывает SAMD21.

Защита USB от перегрузки по току

M0 имеет самовосстанавливающийся предохранитель, который защищает USB-порты вашего компьютера от коротких замыканий и перегрузки по току. Хотя большинство компьютеров имеют собственную внутреннюю защиту, предохранитель обеспечивает дополнительный уровень защиты. Если к USB-порту подаётся более 500 мА, предохранитель автоматически разрывает соединение до устранения короткого замыкания или перегрузки.

Физические характеристики

Максимальная длина и ширина печатной платы M0 составляют 2.7 и 2.1 дюйма соответственно, при этом USB-разъём и разъём питания выступают за эти размеры. Четыре крепёжных отверстия позволяют прикрепить плату к поверхности или корпусу. Обратите внимание, что расстояние между цифровыми выводами 7 и 8 составляет 160 мил (0.16»), что не кратно стандартному шагу 100 мил остальных выводов.

Технические характеристики

Микроконтроллер Arduino

Микроконтроллер

ATSAMD21G18, 48 выводов LQFP

Архитектура

ARM Cortex-M0+

Рабочее напряжение

3.3 В

Flash-память

256 КБ

SRAM

32 КБ

Тактовая частота

48 МГц

Аналоговые выводы

6 + 1 DAC

Постоянный ток на вывод

7 мА

Общие характеристики

Входное напряжение

5–15 В

Цифровые входы/выходы

20, с 12 ШИМ и UART

Выходы ШИМ

12

Потребление

29 мА

Размер платы

53 x 68.5 мм

Вес

21 г

Код продукта

A000103