Arduino:Продукты/Продукты Arduino/Плата Arduino 101

Материал из Онлайн справочника
Версия от 21:21, 22 августа 2023; Myagkij (обсуждение | вклад)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Рис. 1. Фото плат Arduino 101 и Genuino 101
Рис. 1. Фото плат Arduino 101 и Genuino 101

Arduino 101[1]

Плата Arduino 101 совмещает в себе простоту Arduino и цену, характерную для плат начального уровня. Она оснащена модулем Intel Curie, который отличается низким энергопотреблением, и предназначена для использования как в образовательных, так и в инженерных целях.

Она похожа и имеет те же компоненты, что и Arduino Uno, но вдобавок оснащена BLE-функционалом и 6-осевым акселерометром/гироскопом.

Модуль Intel Curie содержит два маленьких ядра, x86 (Quark) и 32-битное архитектурное ядро ARC; тактовая частота обоих ядер составляет 32 МГц.

Операционные системы реального времени (или RTOS, что значит «real-time operating system») и фреймворки, разработанные Intel, распространяются по принципу «open source». Ссылку для загрузки ищите ниже, в разделе «Прошивка». Ядро Arduino «общается» с RTOS при помощи статичных «мейлбоксов» (от «mailbox»), с их помощью выполняя самые разнообразные задачи (создание интерфейса с PC при помощи USB, программирование скетча на flash-памяти, подключение к скетчу BLE-функционала, выполнение ШИМ). Работа над RTOS для Intel Curie по-прежнему продолжается, поэтому в будущем для нее будут выходить новые функции и опции.

Модель Arduino 101 идет с 14 цифровыми I/O контактами (из которых 4 можно использовать для ШИМ), 6 аналоговыми контактами, USB-коннектором для последовательной коммуникации и загрузки скетча, разъемом для питания, ICSP-гребешком, а также отдельными контактами для интерфейсов SPI и I2C.

Рабочим напряжением для платы и I/O контактов является 3,3 вольта, причем все контакты имеют защиту от 5-вольтовой перегрузки.

Плата Arduino 101 разработана в сотрудничестве с Intel.

На этой странице можно почитать о том, как настроить плату, использовать IDE Arduino и побыстрее приступить к делу.

Если нужна помощь, то...

С чего начать

Тут можно почитать о совместном использовании интегрированных акселерометра и гироскопа, тут – о том, как сделать счетчик шагов, а здесь – датчик сердцебиения, для создания которого используется BLE-функционал Arduino 101.

О других проектах, которые можно создать на базе Arduino 101, читайте на Arduino Project Hub – разделе на сайте Arduino, содержащем руководства по созданию различных проектов. Вот пара примеров оттуда:

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

  • Микроконтроллер – Intel Curie
  • Рабочее напряжение – 3,3 вольта (контакты устойчивы к 5 вольтам)
  • Входное напряжение (рекомендуемое) – 7-12 вольт
  • Входное напряжение (лимит) – 7-20 вольт
  • Цифровые I/O контакты – 14 (на 4 есть ШИМ)
  • Цифровые I/O контакты с поддержкой ШИМ – 4
  • Входные аналоговые контакты – 6]]
  • Максимальная сила тока на один I/O контакт – 20 миллиампер
  • Flash-память – 196 Кб
  • SRAM – 24 Кб
  • Тактовая частота – 32 МГц
  • Встроенный светодиод (LED_BUILTIN) – 13-ый
  • Функции – BLE, 6-осевой акселерометр/гироскоп
  • Длина – 68,6 мм.
  • Ширина – 53,4 мм.
  • Вес – 34 грамма.

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

Arduino 101 – это устройство, распространяемое по принципу «open-source». Вы можете создать собственную плату, используя следующие файлы:

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

Плату Arduino 101 можно программировать через IDE Arduino (среду разработки Arduino). Зайдите в нее, а потом кликните на Инструменты > Плата > Arduino/Genuino 101 (Tools > Board > Arduino/Genuino 101), чтобы IDE Arduino понимала, с каким микроконтроллером ей придется иметь дело. О языке программирования Arduino читайте тут, а о руководствах – тут.

Плата поставляется уже запрограммированной при помощи RTOS, которая управляет USB-соединением и позволяет загружать новый код без использования внешнего аппаратного программатора. Коммуникация осуществляется через протокол DFU.

Отличия от других плат

Плата Arduino 101 имеет несколько общих функций с Uno (коннекторы, периферия) и Zero (32-битный микроконтроллер, I/O контакты с рабочим напряжением 3,3 вольта), но при этом оснащена контроллером, имеющим пониженное энергопотребление, встроенным BLE и датчиками движения.

Прошивка

Для платы 101 периодически выходит апдейт прошивки, и он загружается в самую последнюю версию IDE Arduino. Чтобы автоматически обновить прошивку Arduino 101, просто кликните по Инструменты > Записать загрузчик (Tools > Burn Bootloader).

Если вам хочется скомпилировать собственную прошивку, исходный код и подробности об использовании ищите на сайте Intel.

Питание

Плату Arduino 101 можно запитать через USB-соединение или внешний источник питания. Источник питания выбирается автоматически.

Внешним (не USB) источником питания может быть либо адаптер, конвертирующий переменный ток в постоянный, либо батарея. Адаптер можно подключить, вставив 2,1-миллиметровый штекер с положительным центральным контактом в разъем для питания на Arduino. Провода от батареи можно подключить к контактам GND и Vin на коннекторе POWER.

Контакты коннектора POWER (т.е. коннектора, через который на плату подается питание):

  • Vin – контакт для подачи на Arduino 101 входного напряжения, когда используется внешний источник питания (в противовес 5 вольтам от USB-соединения или другого регулированного источника питания). Вы можете подать напряжение на этот контакт напрямую, либо через разъем для питания, который имеет доступ к этому контакту.
  • 5V – дает отрегулированные 5 вольт от регулятора платы. Плату можно питать либо от DC-разъема для питания (7-12 вольт), либо через USB-коннектор (5 вольт), либо через Vin-контакт (7-12 вольт). Подача напряжения через 5-вольтовый и 3,3-вольтовый контакты идет в обход регулятора, поэтому если напряжение не будет отрегулировано, то может повредить плату. Делать это не рекомендуется.
  • 3V3 – напряжение в 3,3 вольт, генерируемое встроенным регулятором платы. Максимальное потребление тока – 1500 миллиампер. Этот регулятор также обеспечивает питанием микроконтроллер Curie.
  • GND – контакты для «земли».
  • IOREF – этот контакт является источником эталонного напряжения, необходимого для работы контроллера. Правильно настроенный «шилд» может прочитать напряжение на этом контакте и выбрать нужный источник питания или включить на выходных устройствах преобразователи, позволяющие работать либо с 5, либо с 3,3 вольтами.

Память

Память модуля Intel Curie поделена между двумя микроконтроллерами, поэтому ваш скетч может использовать 196 Кб из 384 Кб (flash-память) и 24 Кб из 80 Кб (SRAM).

Входные и выходные контакты

Любой из 20 контактов общего пользования Arduino 101 можно использовать и для цифрового ввода, и для цифрового вывода – при помощи функций pinMode(), digitalWrite() и digitalRead(). Контакты, на которых можно выводить ШИМ – это 3-ий, 5-ый, 6-ой и 9-ый, и для этого понадобится функция analogWrite(). Все контакты работают на 3,3 вольтах и могут быть использованы в качестве источника прерывания. Более подробно читайте в статье о функции attachInterrupt(). Каждый контакт может получать/отдавать не более 20 миллиампер.

Кроме того, у некоторых контактов есть специальные функции:

  • Последовательная передача данных: 0-ой (RX) и 1-ый (TX) контакты. Используются для получения (RX) и передачи (TX) последовательных TTL-данных. На этих контактах используется класс Serial1.
  • Внешние прерывания на всех контактах. Эти контакты можно настроить на запуск прерывания при переключении на значение LOW, на значение HIGH, нарастающем/убывающем фронте импульса или изменении значения (этот фактор поддерживается только на 2-ом, 5-ом, 7-ом, 8-ом, 10-ом, 11-ом, 12-ом и 13-ом контактах). Более подробно читайте в статье о функции attachInterrupt().
  • Интерфейс SPI: 10-ый (SS), 11-ый (MOSI), 12-ый (MISO) и 13-ый (SCK) контакты. Они поддерживают SPI-коммуникацию при помощи библиотеки SPI.
  • Встроенный светодиод: 13-ый контакт. Это светодиод, по умолчанию встроенный в плату Arduino и управляемый 13-ым цифровым контактом. Если на этот контакт подано значение HIGH, то светодиод включится, а если LOW, то выключится.
  • Входные аналоговые контакты. Шесть из двадцати I/O контактов на Arduino 101 можно использовать как входные аналоговые контакты. Они названы от A0 до A5 и имеют 10-битное разрешение (т.е. позволяют работать с данными в диапазоне от 1 до 1024). Вольтовой диапазон на них составляет от 0 до 3,3 вольт.
  • Интерфейс TWI: контакты для SDA и SCL. Они поддерживают TWI-коммуникацию при помощи библиотеки Wire.

См.также

Внешние ссылки