Arduino M0 Pro
Arduino M0 Pro — платформа для разработки на базе микроконтроллера ATSAMD21G18 с вычислительным ядром ARM Cortex® M0!
Это расширенная версия Arduino M0 с продвинутыми инструментами отладки на борту. Отладка скетчей выполняется в режиме реального времени, а bootloader восстанавливается без дополнительного оборудования и внешних программаторов.
Подключение и настройка
Для работы с платформой Arduino M0 Pro в операционной системе Windows скачайте и установите на компьютер интегрированную среду разработки Arduino — Arduino IDE.
Добавление платформы
По умолчанию среда Arduino IDE настроена только на AVR-платы. Для работы с платформой Arduino M0 Pro — добавьте в менеджере плат поддержку платформ на ядре ARM Cortex-M0+.
Что-то пошло не так?
Элементы платы
Микроконтроллер ATSAMD21G18
Платформа Arduino M0 Pro построена на мощном 32-разрядном микроконтроллере ATSAMD21G18 с ядром ARM Cortex® M0 компании Microchip (Atmel).
Благодаря 32-разрядному ядру, Arduino M0 Pro во многом превосходит типичные платы на базе 8-разрядных микроконтроллеров.
- 32-битное ядро позволяет обрабатывать 4х-байтовые данные всего за один такт.
- Тактовая частота – 48 МГц.
- Объем флеш-памяти программ – 256 КБ.
- Объем оперативной памяти SRAM – 32 КБ.
- Наличие DMA-контроллера позволяет разгрузить центральный процессор, выполняя ресурсоёмкие операции с памятью.
Микроконтроллер AT32UC3A4256
При подключении Arduino M0 Pro к ПК через Programming USB
, микроконтроллер AT32UC3A4256 обеспечивает связь микроконтроллера ATSAMD21G18 с USB-портом компьютера. В этом режиме становиться доступно выполнять отладку в режиме реального времени и восстанавливать bootloader без дополнительных программаторов.
Пины питания
- VIN: Напряжение, поступающее в Arduino от внешнего источника питания (не связано с 5 В от USB или другим стабилизированным напряжением). Через этот вывод можно как подавать внешнее питание, так и потреблять ток, когда устройство запитано от внешнего адаптера.
- 5V: На вывод поступает напряжение 5 В от стабилизатора напряжения на плате, независимо от того, как запитано устройство: от адаптера (7–14 В), от USB (5 В) или через вывод VIN (7–14 В). Запитывать устройство через выводы
5V
или3.3V
не рекомендуется, поскольку в этом случае не используется стабилизатор напряжения, что может привести к выходу платы из строя. - 3.3V: 3,3 В от стабилизатора напряжения на плате. Стабилизатор обеспечивает питание микроконтроллера
ATSAMD21G18
. Максимальный ток равен 1,2 А. - GND: Выводы земли.
- IOREF: Вывод предоставляет платам расширения информацию о рабочем напряжении микроконтроллера. В зависимости от напряжения, считанного с вывода IOREF, плата расширения может переключиться на соответствующий источник питания или задействовать преобразователи уровней. Это позволит плате работать как с 5 В, так и с 3,3 В устройствами.
Порты ввода/вывода
В отличии от большинства плат Arduino, родным напряжением Arduino M0 является 3,3 В, а не 5 В. Выходы для логической единицы выдают 3,3 В, а в режиме входа ожидают принимать не более 3,3 В. Большее напряжение может повредить микроконтроллер!
Будьте внимательны при подключении периферии: убедитесь, что она может корректно функционировать в этом диапазоне напряжений.
- Цифровые входы/выходы: 20 пинов;
0
–13
иA0
–A6
Логический уровень единицы — 3,3 В, нуля — 0 В. Максимальный ток выхода — 7 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно. - ШИМ: 12 пинов;
2
–13
Позволяет выводить 8-битные аналоговые значения в виде ШИМ-сигнала. Разрядность ШИМ, взаимодействующего с этими выводами, по умолчанию, установлена в 8 бит (для совместимости с другими платами Arduino). Изменить разрядность ШИМ можно с помощью функции analogWriteResolution(). Одновременно нельзя использовать ШИМ на некоторых парах пинов:4
и10
,5
и12
, так как каждая парочка висит на общем таймере. - АЦП: 6 пинов;
A0
–A5
Позволяет представить аналоговое напряжение в виде 12-битного числа. Разрядность АЦП, взаимодействующего с этими выводами, по умолчанию, установлена в 10 бит (для совместимости с другими платами Arduino). Изменить разрядность АЦП можно с помощью функции analogReadResolution(). На аналоговые входы Arduino M0 можно подавать напряжение в диапазоне от 0 до 3,3 В. При подаче большего напряжения микроконтроллер может выйти из строя. - ЦАП: пин
DAC(A0)
Аналоговый выход цифро-аналогового преобразователя, который позволяет формировать 10-битные уровни напряжения. Данный вывод может использоваться для создания аудио-выхода — для этого используйте библиотеку Audio. - TWI/I²C: пины
SDA
иSCL
Для общения с периферией по интерфейсуI²C
. Для работы используйте библиотеку Wire. - SPI: пины
11(MOSI)
,12(MISO)
и13(SCK)
Для общения с периферией по интерфейсуSPI
. Для работы — используйте библиотеку SPI. - UART: пины
0(RX)
и1(TX)
Используется для коммуникации платы Arduino с компьютером или другими устройствами через классSerial1
. Для связи Arduino M0 Pro с компьютером через портProgramming USB
— используйте классSerial
, а для портаNative USB
—SerialUSB
. Для работы — используйте методы библиотеки Serial.
Светодиодная индикация
Имя светодиода | Назначение |
---|---|
RX и TX | Мигают при обмене данными между Arduino M0 Pro и компьютером. |
L | Светодиод вывода 13 . При задании значения HIGH светодиод включается, при LOW – выключается. |
ON | Индикатор питания |
DEBUG | Индикатор отладки |
Разъём Programming USB
Разъём для прошивки платформы Arduino M0 Pro с помощью компьютера.
Для использования выберите в Arduino IDE в качестве вашей платы "Arduino M0 Pro (Programming Port)". При этом также производится стирание предыдущей прошивки. Аппаратное стирание более надежно, чем «программное стирание», которое происходит на собственном USB порте, и будет работать даже при повреждении главного микропроцессора. В программное обеспечение Arduino входит монитор последовательной шины, который дает возможность компьютеру обмениваться простыми текстовыми сообщениями с платой подключенной через Programming USB посредством контроллера ATmega16U2.
Разъём Native USB
Разъём для прошивки платформы Arduino M0 Pro с помощью компьютера.
Для использования выберите в Arduino IDE тип вашей платы Arduino M0 Pro (Native USB Port)
. Native USB port подключен к SAM21D, тем самым осуществляя последовательную связь (CDC) посредством USB обеспечивая подключение к монитору последовательной шины, или другим приложениям на вашем компьютере. Открытие и закрытие собственного порта при скорости передачи 1200 бит в секунду запускает процедуру «программного стирания»: флеш-память стирается и плата перезапускается с помощью загрузчика. Также это дает платформе возможность эмулировать USB мышь или клавиатуру.
Разъём для внешнего питания
Разъём для подключения внешнего питания от 7 В до 14 В.
Регулятор напряжения 5 В
Когда плата подключена к разъёму внешнего источника питания или через пин Vin
, напряжение проходит через стабилизатор LM2734. Выход стабилизатора соединён с пином 5V
. Максимальный выходной ток составляет 1 А.
Регулятор напряжения 3,3 В
Стабилизатор MPM3810GQB-33 с выходом 3,3 вольта, обеспечивает питание микроконтроллера. Максимальный выходной ток составляет 1,2 А.
Кнопка RESET
Служит для сброса микроконтроллера. Это аналог кнопки RESET
обычного компьютера.
SPI-разъём
С применением библиотеки SPI данные выводы могут осуществлять связь по интерфейсу SPI. Линии SPI выведены на 6-контактный разъём и не продублированы на цифровых контактах, как это сделано на Arduino Uno. Если плата расширения использует SPI и не имеет снизу ICSP-разъёма ответного к этим штырькам на Arduino, она не будет работать работать.
Обратите внимание, SPI-разъём не предназначен для внутрисхемного программирования микроконтроллера ATSAMD21G18
и может использоваться только для связи с другими SPI-устройствами.
SWD-разъём
SWD-разъём предназначен для внутрисхемного программирования микроконтроллера ATSAMD21G18
.
Принципиальная и монтажная схемы
Характеристики
- Микроконтроллер: ATSAMD21G18, 32-Bit ARM Cortex M0+
- Микроконтроллер отладки: AT32UC3A4256, 32-Bit AVR
- Тактовая частота: 48 МГц
- Объём Flash-памяти: 256 КБ
- Объём SRAM-памяти: 32 КБ
- Портов ввода-вывода всего: 20
- Портов с АЦП: 6
- Разрядность АЦП: 12 бит, по умолчанию 10 бит
- Портов, подключённых к ЦАП: 1
- Разрядность ЦАП: 10 бит
- Портов с ШИМ: 12
- Разрядность ШИМ: 10 бит, по умолчанию 8 бит
- Аппаратных интерфейсов SPI: 1
- Аппаратных интерфейсов I²C / TWI: 1
- Аппаратных интерфейсов UART / Serial: 1
- Номинальное рабочее напряжение: 3,3 В
- Максимальный выходной ток пина 5V: 1 A
- Максимальный выходной ток пина 3V3: 1,2 А (включая питание микроконтроллера)
- Максимальный ток с пина или на пин: 7 мА
- Допустимое входное напряжение от внешнего источника: 7–14 В
- Габариты: 69×53 мм