====== Arduino MKR GSM 1400: распиновка, схема подключения и программирование ======
[[amp>product/arduino-mkr-gsm-1400?utm_source=man&utm_campaign=arduino-mkr-gsm-1400&utm_medium=wiki|Arduino MKR GSM 1400]] — платформа для создания проектов с использованием мобильной связи.
{{ :products:arduino-mkr-gsm-1400:arduino-mkr-gsm-1400.1.jpg?nolink |}}
Плата может включать исполняющие модули по входящему звонку, опрашивать и передавать данные с датчиков по SMS, а также выходить в интернет по GPRS/HSPA соединению.
===== Подключение и настройка =====
В ходе работы сотового передатчика, ток потребления платформы может подняться выше 500 мА, поэтому при питании от обычного USB-порта компьютера, плате необходим дополнительный источник напряжения: Li-Ion аккумулятор или внешнее питание через разъём Vin.
==== Шаг 1 ====
[[articles:arduino-ide-install|Скачайте и установите]] на компьютер интегрированную среду разработки Arduino IDE.
==== Шаг 2 ====
По умолчанию среда Arduino IDE настроена только на AVR-платы. Для работы с платформой Arduino MKR GSM 1400 — [[:articles:arduino-boards-manager#добавление_плат_с_ядром_cortex-m0|добавьте в менеджере плат поддержку платформ на ядре ARM Cortex-M0+]].
[[установка-и-настройка-arduino-ide:arduino-m0-restore|У меня не появляются новые устройства при подключении Arduino MKR GSM 1400.]]
==== Шаг 3 ====
Установите SIM-карту формата Micro-SIM в слот на обратной стороне Arduino GSM 1400.
===== Примеры работы =====
* [[:projects:scheduler-multiple-blinks|Многозадачность на Arduino]]
* [[:projects:play-music-dac|Воспроизведение музыки через ЦАП]]
* [[:projects:play-music-i2s|Аудио плеер на через интерфейс I²S]]
===== Элементы платы =====
[[this>_media/products:arduino-mkr-gsm-1400:arduino-mkr-gsm-1400_annotation.pdf|{{:products:arduino-mkr-gsm-1400:arduino-mkr-gsm-1400_annotation-preview.png}}]]
==== Микроконтроллер ATSAMD21G18 ====
Мозгом платформы Arduino MKR GSM 1400 является 32-разрядный микроконтроллер фирмы Microchip (Atmel) — {{ :products:arduino-mkr-gsm-1400:atsamd21g18_datasheet.pdf |ATSAMD21G18}} с вычислительном ядром ARM Cortex® M0.
Контроллер работает на тактовой частоте 48 МГц, а также предоставляет 256 КБ Flash-памяти для хранения прошивки и 32 КБ SRAM-памяти для работы с переменными в программе.
==== Беспроводной модуль SARA-U201 ====
Модуль U-blox SARA-U201 обеспечивает сотовую связь 3G/2G с поддержкой UMTS/HSPA и GSM/GPRS. Поддержка стандарта 3G обеспечивает входящую скорость передачи данных до 7,2 Мбит/с и исходящую до 5,76 Мбит/с. Для пользования сотовой связью вам понадобится SIM-карта формата Micro-SIM, которая устанавливается с обратной стороны платформы.
==== Разъём подключения GSM-антенны ====
В зоне слабого приёма воспользуйтесь дополнительной антенной усиления GSM-сигнала, которая подключается через разъём U.FL.
==== Крипто-чип =====
==== Разъём micro-USB ====
Разъём micro-USB предназначен для прошивки и питания платформы Arduino с помощью компьютера.
==== Светодиодная индикация ====
^ Имя светодиода ^ Назначение ^
| ON |Индикатор питания платформы.|
| CHRG |Индикатор зарядки внешнего аккумулятора.|
| L | Пользовательский светодиод на ''6'' пине микроконтроллера, в отличии от ''13'' пина на других платформах Arduino. Используйте определение ''LED_BUILTIN'' для работы со светодиодом. При задании значения ''HIGH'' светодиод включается, при ''LOW'' – выключается.|
==== Разъём подключения аккумулятора ====
На плате расположен {{ :products:arduino-mkr-gsm-1400:jst-ph-connector.pdf |JST PH-разъём (2 pin)}} для подключения внешних Li-Pol и Li-Ion аккумуляторов.
{{ :products:arduino-mkr-gsm-1400:jst-ph-connector.png?nolink |}}
При одновременном питании платформы от USB и аккумулятора:
* батарея заряжается через контролер заряда {{ :products:arduino-mkr-gsm-1400:bq24195l_datasheet.pdf |BQ24195L}} до 4,2 вольта.
* светодиод ''ON'' горит об индикации питания
* светодиод ''CHRG'' горит об индикации заряда батареи
При питании платформы только от аккумулятора:
* батарея не заряжается
* светодиод ''ON'' горит об индикации питания
==== Разъём I²C интерфейса ====
На платформе предусмотрен {{ :products:arduino-mkr-gsm-1400:jst-sh-connector.pdf |JST SH-разъём (5 pin)}} для подключения дополнительных модулей по интерфейсу «I²C». Коннектор включает в себя:
* пины питания — ''5V'' и ''GND''
* пины шины I²C — ''SDA'' и ''SCL''
* дополнительный цифровой пин ''7''
{{ :products:arduino-mkr-vidor-4000:jst-sh-connector.png?nolink |}}
==== Регулятор напряжения ====
Линейный понижающий регулятор напряжение {{ :products:arduino-mkr-gsm-1400:ap7215-33_datasheet.pdf |AP7215-33}} с выходом 3,3 вольта обеспечивает питание микроконтроллера. Максимальный выходной ток составляет 600 мА.
==== Кнопка RESET ====
Служит для сброса микроконтроллера. Это аналог кнопки ''RESET'' обычного компьютера.
===== Распиновка =====
==== Пины питания ====
* **VIN:** Пин для подключения внешнего источника напряжения в диапазоне от 5 до 6 вольт.
* **5V:** На вывод поступает напряжение 5 В при подключении платы через USB. При питании платформы через пин ''VIN'' или разъём для внешнего аккумулятора — на пине может быть напряжение в диапазоне от нуля до входного.
* **VCC:** Пин от стабилизатора напряжения с выходом 3,3 вольта и максимальных током 600 мА. Регулятор обеспечивает питание микроконтроллера {{ :products:arduino-mkr-gsm-1400:atsamd21g18_datasheet.pdf |ATSAMD21G18}}. В любом варианте питания платформы на пине будет присутствовать 3,3 вольта.
* **GND:** Выводы земли.
* **AREF:** Пин для подключения внешнего опорного напряжения АЦП относительно которого происходят аналоговые измерения при использовании функции [[https://www.arduino.cc/reference/en/language/functions/analog-io/analogreference/|analogReference()]] с параметром «EXTERNAL».
==== Порты ввода/вывода ====
В отличие от большинства плат Arduino, родным напряжением Arduino MKR GSM 1400 является 3,3 В, а не 5 В. Выходы для логической единицы выдают 3,3 В, а в режиме входа ожидают принимать не более 3,3 В. Более высокое напряжение может повредить микроконтроллер!
Будьте внимательны при подключении периферии: убедитесь, что она может корректно функционировать в этом диапазоне напряжений.
* **Цифровые входы/выходы:** 22 пина; ''0''–''14'' и ''A0''–''A6''\\ Логический уровень единицы — 3,3 В, нуля — 0 В. Максимальный ток выхода — 7 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно.
* **ШИМ:** 12 пинов; ''0''–''8'', ''10'', ''A3'' и ''A4''\\ Позволяет выводить аналоговые значения в виде ШИМ-сигнала. По умолчанию разрядность «ШИМ» установлена в 8 бит. Изменить разрядность «ШИМ» можно с помощью функции [[https://www.arduino.cc/reference/en/language/functions/zero-due-mkr-family/analogwriteresolution/|analogWriteResolution()]].
* **АЦП:** 7 пинов; ''A0''–''A6''\\ Позволяет представить аналоговое напряжение в виде цифровом виде. По умолчанию разрядность «АЦП» установлена в 10 бит. Изменить разрядность «АЦП» можно с помощью функции [[https://www.arduino.cc/reference/en/language/functions/zero-due-mkr-family/analogreadresolution/|analogReadResolution()]]. Диапазон входного напряжения от 0 до 3,3 В. При подаче большего напряжения микроконтроллер может выйти из строя.
* **ЦАП:** пин ''DAC/A0''\\ Аналоговый выход цифро-аналогового преобразователя, который позволяет формировать 10-битные уровни напряжения. Вывод может использоваться для [[https://www.arduino.cc/en/Tutorial/SimpleAudioPlayer|создания аудио-выхода]] — для этого используйте библиотеку [[https://www.arduino.cc/en/Reference/AudioZero|AudioZero]].
* **TWI/I²C:** пины ''(11)SDA'' и ''(12)SCL''\\ Для общения с периферией по интерфейсу «I²C». Для работы используйте библиотеку [[https://www.arduino.cc/en/Reference/Wire|Wire]].
* **SPI:** пины ''8(MOSI)'', ''10(MISO)'' и ''9(SCK)''\\ Для общения с периферией по интерфейсу «SPI». Для работы — используйте библиотеку [[https://www.arduino.cc/en/Reference/Spi|SPI]].
* **UART/Serial:**
* **Serial:** пины ''D+'' и ''D−''
* **Serial1:** пины ''12(RX)'' и ''11(TX)'' \\ Используется для коммуникации платы Arduino с компьютером или другими устройствами по последовательному интерфейсу. Выводы шины ''Serial'' соединены с соответствующими контактами USB-порта для прошивки и мониторинга микроконтроллера. Для коммуникации платы Arduino с другими платами и модулями воспользуйтесь шиной ''Serial1''. Для работы с последовательным интерфейсом — используйте методы библиотеки [[https://www.arduino.cc/en/Reference/Serial|Serial]].
* **I²S:** пины ''2(SCK/BCLK)'', ''3(WS/LRCLK/FS)'' и ''A6(SD/SDATA/SDIN/SDOUT)''\\ Используется для передачи и приёма цифрового звука с другими аудио устройствами. Для работы используйте библиотеки [[https://www.arduino.cc/en/Reference/I2S|I²S]] и [[https://www.arduino.cc/en/Reference/ArduinoSound|Arduino Sound]]
===== Принципиальная и монтажная схема =====
[[this>_media/products:arduino-mkr-gsm-1400:arduino-mkr-gsm-1400_schematic.pdf|{{:products:arduino-mkr-gsm-1400:arduino-mkr-gsm-1400_schematic-preview.png?direct&340 }}]]
[[this>_media/products:arduino-mkr-gsm-1400:arduino-mkr-gsm-1400_layout-top.pdf|{{ :products:arduino-mkr-gsm-1400:arduino-mkr-gsm-1400_layout-top-preview.png?direct&300}}]]
[[this>_media/products:arduino-mkr-gsm-1400:arduino-mkr-gsm-1400_layout-bottom.pdf|{{ :products:arduino-mkr-gsm-1400:arduino-mkr-gsm-1400_layout-bottom-preview.png?direct&300}}]]
===== Габаритный чертёж =====
[[this>_media/products:arduino-mkr-gsm-1400:arduino-mkr-gsm-1400_design.pdf|{{:products:arduino-mkr-gsm-1400:arduino-mkr-gsm-1400_design-preview.png}}]]
===== Характеристики =====
==== Общие ====
* Чипы: ATSAMD21G18 и U-blox SARA-U201
* Пинов ввода-вывода всего: 22
* Напряжение логических уровней: 3,3 В
* Максимальный ток с пина или на пин: 7 мА
* Максимальный выходной ток пина 3V3: 600 мА
* Входное напряжение через пин Vin: 5–6 В
* Входное напряжение через разъём для аккумулятора: 3,7–4,2 В
* Габариты: 68×25 мм
==== Микроконтроллер ====
* Чип: ATSAMD21G18
* Ядро: 32-битный ARM Cortex M0+
* Тактовая частота: 48 МГц
* Flash-память: 256 КБ
* SRAM-память: 32 КБ
* Контактов с АЦП: 7
* Разрядность АЦП: 8/10/12 бит (по умолчанию 10 бит)
* Контактов с ЦАП: 1
* Разрядность ЦАП: 10 бит
* Контактов с ШИМ: 12
* Разрядность ШИМ: 8/10/12 бит (по умолчанию 8 бит)
* Пинов с прерываниями: 12
* Аппаратных интерфейсов SPI: 1
* Аппаратных интерфейсов I²C / TWI: 1
* Аппаратных интерфейсов UART / Serial: 1
==== Модуль сотовой связи U-blox SARA-U201 ====
* Размер SIM-карты: Micro-SIM
* Стандарты связи: 3G UMTS/HSPA и 2G GSM/GPRS
* Несущие частоты: 850/900/1800/1900/2100 МГц
* Максимальная входящая скорость: 7,2 Мбит/с
* Максимальная исходящая скорость: 5,76 Мбит/с
===== Ресурсы =====
* [[amp>product/arduino-mkr-gsm-1400?utm_source=man&utm_campaign=arduino-mkr-gsm-1400&utm_medium=wiki|Arduino MKR GSM 1400]] в магазине.
* [[https://github.com/amperka/hardware-drawings/blob/master/arduino-mkr-gsm-1400.svg|Векторное изображение Arduino MKR GSM 1400]]
* {{ :products:arduino-mkr-gsm-1400:atsamd21g18_datasheet.pdf |Datasheet на микроконтроллер ATSAMD21G18}}
* {{ :products:arduino-mkr-gsm-1400:sara-u2_datasheet.pdf |Datasheet на беспроводной модуль U-blox SARA-U201}}
* {{ :products:arduino-mkr-gsm-1400:sara-u2_at-commands-manual.pdf |Мануал по AT-командам на U-blox SARA-U201}}
* {{ :products:arduino-mkr-gsm-1400:atecc508a_datasheet.pdf |Datasheet на крипто-чип ATECC508A}}
* {{ :products:arduino-mkr-gsm-1400:ap7215-33_datasheet.pdf |Datasheet на понижающий регулятор напряжения AP7215-33 с выходом 3,3 вольта}}
* {{ :products:arduino-mkr-gsm-1400:bq24195l_datasheet.pdf |Datasheet на контроллер BQ24195L заряда Li-Pol и Li-Ion аккумуляторов}}