{{#setlogo:ArduinoCommunityLogo.png}}
Проверка/Оформление/Редактирование: Мякишев Е.А.
Чтобы подключить Arduino Due к компьютеру, понадобится USB -кабель с разъемом Micro-B . Этот кабель, с одной стороны, будет питать плату электричеством, а с другой, позволит ее программировать.
Подключите кабель разъемом Micro-B к так называемому «порту для программирования» на Due . Это USB-порт, который находится ближе к DC -разъему, т.е. разъему для питания переменным током. Чтобы загрузить скетч, открываем меню Инструменты > Плата (Tools > Board) и выбираем там . Затем выбираем нужный порт в меню Инструменты > Порт (Tools > Port) .
На официальном форуме Arduino есть специальная ветка , посвященная Arduino Due .
Чтобы программировать на Due , версия IDE Arduino должна быть не старее 1.5 . Загрузить ее можно отсюда .
Использование Arduino Due почти ничем не отличается от использования других Arduino . Однако несколько важных отличий и функциональных расширений все же есть.
Контакты на Arduino Due расположены так же, как и на Arduino Mega 2560 .
Микроконтроллеру, которым оснащена Arduino Due , нужно питание 3,3 вольт – это значит, что все датчики и прочие устройства можно будет питать только этими 3,3 вольтами . Если подключить более высокое напряжение (вроде 5 вольт , которыми обычно питаются Arduino ), это приведет к повреждению Due .
Плата может питаться либо от USB -коннекторов, либо от DC -разъема. При использовании DC -разъема напряжение должно быть в пределах 7-12 вольт .
Arduino Due оснащена импульсным стабилизатором напряжения, чьи характеристики соответствуют требованиям для устройств с функцией USB -хоста. Благодаря этому Due может выступать в качестве источника питания для USB -устройства, подключенного к ее штатному USB -порту. То есть, по сути, служить USB -хостом. Однако для этого она сама должна быть подключена к источнику питания через DC -разъем.
Модель Arduino Due оснащена двумя USB -портами. Штатный USB -порт поддерживает CDC -коммуникацию (от Connected Device Class ; означает то, что плата будет отображаться для ОС как виртуальный последовательный порт) через объект SerialUSB и подключен напрямую к микропроцессору SAM3X . Другой USB -порт – это порт для программирования. Он подключен к чипу ATMEL 16U2 , который служит USB-UART преобразователем. Именно этот порт по умолчанию используется для загрузки скетчей и коммуникации с Arduino .
Преобразователь USB-UART подключен к первому UART ’у микропроцессора SAM3X . Благодаря этому с портом для программирования можно взаимодействовать при помощи объекта Serial из языка Arduino .
USB -коннектор на штатном порте напрямую подключен к контактам USB -хоста SAM3X . Таким образом, благодаря штатному порту Due можно использовать и как клиентское периферийное USB -устройство (например, как мышь или клавиатура, подключенные к компьютеру), и как USB -хост, к которому могут быть подключены различные USB -устройства (вроде тех же мыши, клавиатуры или телефона на Andriod ). Кроме того, этот порт можно использовать как виртуальный последовательный порт при помощи объекта SerialUSB в языке программирования Arduino .
Микроконтроллер SAM3X отличается от микроконтроллеров AVR тем, что перед тем, как снова его программировать, его flash -память должна быть очищена. Это можно сделать вручную – сначала секунду нажимать на кнопку очистки памяти, потом нажать на кнопку в IDE Arduino , а после этого нажать на кнопку сброса.
Это скучная и монотонная процедура, однако ее можно автоматизировать. Но для каждого из портов это делается по-разному:
В то же время, если штатный порт будет открыт/закрыт не на 1200 бит/с , а на какой-то другой скорости, то SAM3X сброшен не будет. Чтобы воспользоваться монитором порта и с его помощью увидеть, какие данные скетч будет отправлять в самом начале работы Due , в секцию setup() нужно вписать дополнительный код – благодаря ему SAM3X перед выполнением скетча будет ждать открытия SerialUSB -порта:
while (! Serial) ;
Если нажать на Due кнопку сброса (Reset ), то будет сброшен и SAM3X , и USB -соединение. Если у вас во время этого разрыва будет открыт «Монитор порта» , то для восстановления соединения его нужно будет закрыть и снова открыть.
Это более надежная процедура, чем та, что имеется на штатном порте, и если микроконтроллер зависнет, она должна сработать лучше.
Чтобы настроить последовательную передачу данных через порт для программирования, нужно использовать объект Serial . Все скетчи, использующие последовательную коммуникацию на базе Uno , должны работать таким же образом. Порт для программирования на Due работает примерно так же, как последовательный порт Uno – в том отношении, что преобразователь USB-UART сбрасывает плату каждый раз, когда вы открываете коммуникацию через монитор порта (или другую последовательную коммуникацию).
Нажатие на Reset во время коммуникации через порт для программирования не оборвет USB -соединение с компьютером, т.к. сброшен будет только микропроцессор SAM3X .
Когда Due выступает в качестве хоста, она еще и обеспечивает периферийное устройство электричеством. Поэтому мы рекомендуем подключить ее к питанию через DC -разъем.
Кроме того, в Due можно менять установленную по умолчанию разрядность для считывания и записи аналоговых данных (10 бит и 8 бит , соответственно). Она может поддерживать разрядность до 12 бит – и для АЦП , и для ШИМ . Более подробно читайте на соответствующих страницах – и .
Модель Due также имеет SPI -шину с расширенными возможностями, которые могут пригодиться, когда к плате подключено несколько устройств, и они общаются с нею на разных скоростях. Более подробно читайте .
Если вы используете Arduino IDE версии 1.6.2 и новее, то вам надо будет установить ядро, поддерживающее Arduino Due . Инструкции для этой процедуры описаны .
С точки зрения пользователя процесс загрузки скетча на Due такой же, как и на других моделях Arduino . Мы рекомендуем использовать для этих целей порт для программирования, но вообще делать это можно через оба USB -порта. Для загрузки через порт для программирования нужно проделать следующее:
Теперь на Arduino Due можно загружать скетчи.
Более подробно читайте на странице , описывающей оборудование платы.
Arduino Due – это микроконтроллерная плата на базе процессора Atmel SAM3X8E ARM Cortex-M3 . Это первая плата Arduino на базе микроконтроллера с 32-битным ядром ARM . У нее 54 цифровых I/O контакта (из которых 12 можно использовать для выдачи ШИМ ), 12 аналоговых контактов, 4 аппаратных последовательных порта (UART ), частота 84 МГц , поддержка OSB OTG , 2 ЦАП (цифро-аналоговых преобразователя), 2 TWI , разъем для питания, SPI -гребешок, JTAG -гребешок, кнопка сброса и кнопка очистки flash -памяти.
Внимание: В отличие от большинства плат Arduino, Due работает на 3,3 вольтах. Максимальное напряжение, к которому терпимы I/O контакты – 3,3 вольта. Если подать на них более высокое напряжение, это может повредить плату.
Плата оснащена всем необходимым для микроконтроллера; просто подключите ее к компьютеру через кабель micro-USB либо запитайте через батарею или адаптер, конвертирующий переменный ток в постоянный. Модель Due совместима со всеми «шилдами» Arduino , которые работают на 3,3 вольтах .
Кроме того, Due совместима с распиновкой 1.0:
Чип SAM3X также поддерживает коммуникацию через интерфейсы SPI и TWI . Чтобы упростить использование TWI , в IDE Arduino есть библиотека Wire , а для SPI есть библиотека SPI .
Для программирования платы можно использовать оба USB -порта, но лучше отдать предпочтение USB -порту для программирования – из-за того, каким образом осуществляется стирание памяти на чипе:
В отличие от других плат Arduino , на которых используется avrdude , плата Due использует .
Плата Arduino Due оснащена восстанавливаемым предохранителем, который защищает USB-порты вашего компьютера от перегрузок. Хотя у большинства компьютеров есть собственная защита от подобных неприятностей, предохранитель добавляет к ней еще один слой. Если на USB-порт будет подано более 500 миллиампер , этот предохранитель автоматически прервет соединение, пока короткое замыкание или перегрузка не будут устранены.
Максимальные длина и ширина печатной платы Arduino Due составляют 10,16 и 5,33 см соответственно, однако USB-коннекторы и разъем для питания могут немного выходить за эти пределы. Кроме того, на плате имеются три отверстия, которые позволяют прикрепить ее к какой-либо поверхности или корпусу. Обратите внимание, что расстояние между 7-ым и 8-ым контактами составляет 0,406 см , а между остальными контактами – 0,254 см .
Плата Arduino Due совместима с большинством «шилдов» , разработанных для плат Uno , Diecimila и Duemilanove . Цифровые контракты с 0-го по 13-ый (и прилегающие к ним контакты AREF и GND ), аналоговые контакты с 0-го по 5-ый , гребешок для питания и ICSP -гребешок (для SPI ) находятся на тех же местах. Более того, на тех же контактах (т.е. на 0-ом и 1-ом ) находится и UART (последовательный порт). Обратите внимание, что интерфейс I2C расположен на 20-ом и 21-ом контактах, тогда как у Duemilanove и Diecimila она находится на 4-ом и 5-ом контактах.
Плата Arduino Due – это оборудование, распространяемое по принципу «open-source» . Вы можете создать на ее основе собственную плату, используя следующие файлы:
Arduino продукты | |
---|---|
Начальный уровень | Arduino Uno () Arduino Leonardo Arduino 101 |
Мощная плата Arduino DUE имеет 32-битное ядро, производительность которого существенно превосходит 8-ми битные чипы, установленные на других платах итальянского производителя. Питание платформы осуществляется от внешнего источника или от USB порта. На процессор Atmel при его изготовлении записывается загрузчик, что позволяет обойтись без внешних программаторов. Широкий ассортимент входов позволяет осуществлять Arduino DUE простые проекты и решать сложные задачи.
Платформа укомплектована средствами связи с ПК, другими платами Arduino, планшетами, смартфонами и другими автоматизированными устройствами. Программируется с помощью ПО производителя, загрузить программы на SAM3X можно только стерев flash-память. Осуществить программирование Arduino DUE можно через один из двух USB портов. Выводы платформы аналогичны плате Arduino 1.0, что облегчает использование ее в проектах с применением других продуктов компании. Доступная на Arduino DUE цена делает этот микроконтроллер одним из самых популярных в своем классе.
Плата DUE имеет следующие технические параметры:
Arduino Due - это устройство на основе микропроцессора Atmel SAM3X8E ARM Cortex-M3 (datasheet). Это первая плата Ардуино на базе 32-разрядного микроконтроллера ARM. В ее состав входят 54 цифровых вывода (из которых 12 могут работать в качестве ШИМ-выходов), 12 аналоговых входов, 4 UART (аппаратных приемопередатчика, осуществляющих последовательную передачу данных), генератор тактовой частоты на 84 МГц, USB с поддержкой технологии OTG, 2 ЦАП (цифро-аналоговых преобразователя), 2 TWI, разъем питания, разъем SPI, разъем JTAG, кнопка сброса и кнопка очистки памяти.
Внимание: в отличие от других плат Ардуино, рабочее напряжение Arduino Due составляет 3.3В. Соответственно, максимальное напряжение, которое могут выдержать его выводы, равно 3.3В. Подача на вывод большего напряжения (например, 5В) может привести к выходу платы из строя.
В состав устройства входит все необходимое для обеспечения работы микроконтроллера; для начала работы достаточно просто подать питание от AC/DC-адаптера или батарейки, либо подключить его к компьютеру посредством USB-кабеля. Arduino Due совместим со всеми платами расширения, работающими от 3.3В, и соответствует требованиям распиновки 1.0:
Благодаря использованию 32-разрядного ядра ARM, Arduino Due во многом превосходит типичные платы на базе 8-разрядных микроконтроллеров. Наиболее существенные отличия заключаются в следующем:
Микроконтроллер | AT91SAM3X8E | |
Рабочее напряжение | 3.3В | |
Напряжение питания (рекомендуемое) | 7-12В | |
Напряжение питания (предельное) | 6-16В | |
Цифровые выводы | 54 (из них 12 могут работать как ШИМ-выходы) | |
Аналоговые входы | 12 | |
Аналоговые выходы | 2 (ЦАП) | |
Суммарный выходной ток всех выводов (максимальный) | 130 мА | |
Максимальный выходной ток вывода 3.3V | 800 мА | |
Максимальный выходной ток вывода 5V | 800 мА | |
Flash-память | 512 КБ в полном объеме доступна пользовательским программам | |
SRAM | 96 КБ (два банка памяти: 64 КБ и 32 КБ) | |
Тактовая частота | 84 МГц |
Arduino Due может быть запитан от USB либо от внешнего источника питания - тип источника выбирается автоматически.
В качестве внешнего источника питания (не USB) может использоваться сетевой AC/DC-адаптер или аккумулятор/батарея. Штекер адаптера (диаметр - 2.1мм, центральный контакт - положительный) необходимо вставить в соответствующий разъем питания на плате. В случае питания от аккумулятора/батареи, ее провода необходимо подсоединить к выводам Gnd и Vin разъема POWER.
Напряжение внешнего источника питания может быть в пределах от 6 до 20 В. Однако, уменьшение напряжения питания ниже 7В приводит к уменьшению напряжения на выводе 5V, что может стать причиной нестабильной работы устройства. Использование напряжения больше 12В может приводить к перегреву стабилизатора напряжения и выходу платы из строя. С учетом этого, рекомендуется использовать источник питания с напряжением в диапазоне от 7 до 12В.
Ниже перечислены выводы питания, расположенные на плате:
Объем флеш-памяти программ микроконтроллера SAM3X составляет 512 КБ (2 блока по 256 КБ). Устройство выпускается с прошитим загрузчиком, расположенном в отдельной памяти ПЗУ. Объем доступной оперативной памяти SRAM составляет 96 КБ, представляющих собой два смежных банка памяти по 64 КБ и 32 КБ соответственно. Вся доступная память (Flash, ОЗУ и ПЗУ) имеет общее линейное адресное пространство.
Кнопка удаления, расположенная на плате, позволяет очистить Flash-память микроконтроллера SAM3X и стереть текущую загруженную программу. Для этого необходимо нажать и удерживать ее в течение нескольких секунд.
Данные выводы поддерживают протокол связи CAN, однако на данный момент его реализация в Arduino API пока отсутствует.
Встроенный светодиод, подсоединенный к выводу 13. При отправке значения HIGH светодиод включается, при отправке LOW - выключается. Помимо этого, яркость свечения светодиода можно регулировать, поскольку вывод 13 может работать как ШИМ-выход.
Другие выводы на плате:
Опорное напряжение АЦП. Используется функцией analogReference() .
Формирование низкого уровня (LOW) на этом выводе приведет к перезагрузке микроконтроллера. Обычно этот вывод служит для функционирования кнопки сброса на платах расширения.
Arduino Due предоставляет ряд возможностей для осуществления связи с компьютером, еще одним Ардуино или другими микроконтроллерами, а также с различными устройствами, такими, как телефоны, планшеты, камеры и т.д. В микроконтроллере SAM3X есть один аппаратный UART и три аппаратных USART для реализации последовательных интерфейсов с TTL-уровнем напряжения 3.3В.
USB-порт для программирования на плате взаимодействует с микросхемой ATmega16U2, выполняющую роль USB-UART преобразователя, который при подключении к компьютеру определяется как виртуальный COM-порт. (Для корректной идентификации на Windows-системах потребуется.inf-файл, на системах с OSX и LINUX плата распознается автоматически). Микросхема 16U2 соединена с аппаратным приемопередатчиком UART микроконтроллера SAM3X. Для программирования микроконтроллера через микросхему ATmega16U2 используются выводы RX0 и TX0. В пакет программного обеспечения Ардуино входит специальная программа, позволяющая считывать и отправлять на Ардуино простые текстовые данные. При передаче данных через микросхему-преобразователь USB-UART во время USB-соединения с компьютером, на плате будут мигать светодиоды RX и TX. (При последовательной передаче данных посредством выводов 0 и 1, без использования USB-преобразователя, данные светодиоды не задействуются).
В микроконтроллере SAM3X также реализована поддержка последовательных интерфейсов TWI и SPI. В программное обеспечение Ардуино входит библиотека Wire, позволяющая упростить работу с шиной I2C; для получения более подробной информации см. документацию. Для работы с интерфейсом SPI используйте библиотеку SPI.
Процесс загрузки программ в микроконтроллер SAM3X отличается от процесса прошивки AVR-микроконтроллеров, используемых в других платах Ардуино. Особенность SAM3X заключается в том, что для его перепрошивки требуется предварительно очищать Flash-память контроллера. Такая необходимость обусловлена тем, что процесс загрузки программы контролируется загрузчиком в ПЗУ SAM3X, который запускается только при условии отсутствия программы во Flash-памяти микроконтроллера.
Таким образом, любой из USB-портов может использоваться для прошивки платы. Тем не менее, рекомендуется использовать USB-порт для программирования ("Programming Port" на рисунке) в силу некоторых особенностей процесса очистки памяти микроконтроллера:
В отличие от других плат Ардуино, для программирования которых используется avrdude, процесс прошивки Arduino Due осуществляется с помощью программы .
Исходный код прошивки микроконтроллера ATmega16U2 доступен в репозитории Ардуино . Прошить микроконтроллер можно через разъем для внутрисхемного программирования ISP с помощью внешнего программатора (в этом случае затрется DFU-загрузчик).
В Arduino Due есть восстанавливаемые предохранители, защищающие USB-порт компьютера от коротких замыканий и перегрузок. Несмотря на то, что большинство компьютеров имеют собственную защиту, такие предохранители обеспечивают дополнительный уровень защиты. Если от USB-порта потребляется ток более 500 мА, предохранитель автоматически разорвет соединение до устранения причин короткого замыкания или перегрузки.
Максимальная длина и ширина печатной платы Arduino Due составляет 10.2 см и 5.4 см соответственно, с учетом USB-разъемов и разъема питания, выступающих за пределы платы. Три крепежных отверстия позволяют прикреплять плату к поверхности или корпусу. Обратите внимание, что расстояние между цифровыми выводами 7 и 8 не кратно традиционным 2.54 мм и составляет 4 мм.
Arduino Due спроектирован таким образом, чтобы обеспечивать совместимость с большинством плат расширения для Uno, Diecimila или Duemilanove. Расположение основных выводов платы полностью эквивалентно: цифровые выводы 0 - 13 (а также смежные выводы AREF и GND), аналоговые входы 0 - 5, разъем POWER и разъем "ICSP" (SPI) - все выводы расположены на одинаковых расстояниях друг относительно друга. Кроме того, линии основного приемопередатчика UART соединены с одними и теми же выводами (0 и 1). Пожалуйста, обратите внимание, что номера выводов I2C на Arduino Due (20 и 21) отличаются от выводов Duemilanove / Diecimila (аналоговые входы 4 и 5).
Подробная инструкция по работе с Arduino Due (на англ.)
Arduino Due - представляет более серьезное решение, по сравнению с . Это первая плата Arduino на основе 32-разрядного ядра.
Для подключения к компьютеру понадобится .
Arduino Due может быть запитан от USB, через , либо от внешнего источника питания: , , штекер которого (Ø 2,1 мм, центральный вывод - положительный) необходимо подключить к силовому разъему питания. Если внешним источником питания служит аккумуляторная батарея, то её нужно подключить к выводам Vin и GND. Тип источника питания выбирается автоматически.
Arduino Due построена на базе 32-разрядного микроконтроллера Atmel SAM3X8E ARM Cortex-M3 с тактовой частотой 84МГц. В отличии от большинства плат Arduino, Arduino Due работает от 3,3 В, имеет 2 порта I2C, порт CAN, 2 аналоговых выхода (ЦАП), 2 порта microUSB с поддержкой USB OTG - возможность подключения других USB-устройств к USB порту. Наличие контроллера DMA позволяет освободить процессор от ресурсоемких задач. Помимо кнопки Reset имеется кнопка Erase (бортового стирания) удержание которой в течении нескольких секунд, при наличии питания, приведет к аппаратному стиранию данных из Flash-памяти. Загрузчик прошивается на заводе изготовителе в специально для него выделенную область памяти. Следует учесть, что наличие напряжения больше 3,3В на любом входе, может повредить плату.
Скачать (загрузить) программу Arduino IDE для создания, редактирования и загрузки скетчей в Arduino или Genuino, Вы можете с