Каталог товаров

ARDUINO UNO R3 PRO

Цена:

620 р.
Уже в корзине
Код товара: 13445
Оригинальное название:
ARDUINO R3 with CH340

Описание товара

Модуль UNO R3, PRO-версия, Arduino-совместимый. Плата разработчика.

  • Микроконтроллер: ATmega328
  • Тактовая частота: 16 МГц
  • Флеш-память: 32 Кб, из которых 0.5 Кб используются для загрузчика
  • ОЗУ-память: 2 Кб
  • EEPROM-память: 1 Кб
  • Рабочее напряжение: 5 В
  • Входное напряжение (рекомендуемое): 7-12 В
  • Входное напряжение (предельное): 6-20 В
  • Цифровые входы/выходы: 20
  • ШИМ выходы: 6
  • Аналоговые входы: 6, 10-бит
  • Максимальный постоянный ток через вход/выход: 40 мА, рекомендуемый: 20мА
  • Максимальный постоянный ток для вывода 3.3 В: 30 мА
  • Кнопка ручного перезапуска "Reset"
  • USB-разъём: USB-B
  • Световая индикация событий: обмен данными RX,TX, питание платы, цифровой вывод 13
  • Размеры: 68.6х53.4х12.8мм
  • Вес: 25 гр

Arduino-совместимый модуль Uno R3 является сторонней разработкой, созданный на основе открытого источника проекта Arduino. Плата целиком и полностью повторяет все размеры, параметры и возможности оригинального контроллера Uno R3. Тем не менее, присутствуют небольшие отличия от прародителя, расширяющие возможности:

  1. Центральный микроконтроллер ATmega328 выполнен в миниатюрном корпусе MLF-32.
  2. Связь между USB-портом и центральным процессором основана на чипе CH340G, выполняющим роль аппаратного моста и запрограммированным в режим работы преобразователя USB-в-TTL.
  3. Наличие дополнительный выводов интерфейсов UART, TWI/IIC/I2C и контактов питания 5В, 3.3В для удобства пользователя.
  4. Наличие дополнительных дублирующих контактов-отверстий для всех групп аналого-цифровых выводов и выводов питания, расположенных по бокам платы. Они предоставляют возможность тестирования каждого вывода в процессе отладки проекта.

Несомненно, UNO заслужила максимальную популярность: ею часто комплектуются стартовые наборы, выпускаемые сторонними производителями для начинающих с азов разработчиков. Зачастую, её используют в своих проектах как любители, так и профессионалы. На основе UNO разработано и создано просто огромное количество разнообразных полезных проектов, примеры которых распространены на просторах Интернета. Arduino обладает поддержкой в лице дружелюбного сообщества пользователей, активно общающихся между собой на форумах, и охотно помогающих в возникающих трудностях. Доступность, лёгкость в понимании при изучении и надёжность в использовании - это её конёк.

Главное назначение платы - организация связи и взаимодействия между дополнительными функциональными модулями, которые вы без труда можете подключать к модулю. К ним относятся:

  • модули с кнопками или светодиодами;
  • часы реального времени;
  • датчики звука, капель и дождя, расстояния, обнаружения газов, температуры или освещённости;
  • часы реального времени;
  • MP3-проигрыватели, звуковые усилители, FM-приёмники;
  • сервомоторы;
  • Ethernet модули;
  • модули с реле разнообразных конфигураций;
  • картридеры SD и микро-SD карт памяти;
  • беспроводные радиопередатчики GSM/GPRS, RFid, WiFi и Bluetooth;
  • символьные и графические дисплеи;
  • гироскопы, акселерометры, магнитометры и многие другие.

Если говорить обобщённо, Arduino - это полноценный комплекс, состоящий из микроконтроллерной платы и программы-редактора на основе упрощённой версии языка С++ для написания пользовательского исполняемого кода с возможностью последующей прошивки контроллера.

Открытое программное обеспечение ARDUINO IDE, используемое для программирования плат ARDUINO, можно бесплатно загрузить уже сейчас (поддерживаются операционные системы Linux, Mac OS и Windows).

UNO не имеет своей операционной системы - полная доступность ресурсов находится под контролем пользователя. Единственное программное обеспечение, предварительно записанное в микросхему ATmega328, называется "Загрузчик", которое инициализирует систему, управляет доступом к встроенной памяти при загрузке в микроконтроллер нового кода, а также запуском исполняемых программ.

Основные шаги в создании проектов

  1. Разработка проекта "на бумаге" на основе вашей идеи;
  2. Предварительная "черновая" сборка электрической схемы;
  3. Написание программного кода и его прошивка в микроконтроллер;
  4. Анализ полученного результата, при необходимости - отладка отдельных частей проекта;
  5. Сборка законченного варианта конструкции.

Обзор платы

Расположение элементов на плате Arduino UNO R3

В отличии от предыдущих версий UNO, в которых за связь между USB-портом и главным контроллером ATmega328 отвечал микроконтроллер ATmega8U2, данная содержит в себе бюджетный чип CH340.

В обновлённой UNO Rev3, рядом с контактом AREF, были добавлены выводы SDA и SCL интерфейса TWI/IIC/I2C. Появился новый контакт 5V, несущий в себе функцию IOREF. Для более удобного использования кнопка "Reset" из центра перемещена на угол платы.

Память

  1. Энергонезависимая флеш-память объёмом 32 КБ, из которых 0.5 кБ выделено под загрузчик. Основная область для хранения исполняемого программного кода, записываемого в микроконтроллер при его прошивке;
  2. ОЗУ-память (SRAM) размером 2 КБ, предназначена для хранения переменных, создаваемых в процессе выполнения исполняемого пользовательского кода. ОЗУ-память зависит от питающего напряжения, при его отсутствии все данные удаляются;
  3. EEPROM-память объёмом 1 КБ. Относиться к разряду энергонезависимой памяти, доступной пользователю для хранения данных, независящих от основного кода.

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

Плата UNO обладает цифровыми выводами (контакты 0-13), работающими с логикой напряжений "1" и "0". Под единицей подразумевается входящее/исходящее напряжение +5 вольт, называемое высоким сигналом. Под нулём - входящее/исходящее напряжение 0 вольт, называемое низким сигналом.

Каждый вывод имеет нагрузочный резистор (20-50 кОм), отключенный по умолчанию. Рекомендуемый ток отдельного вывода составляет 20 миллиампер, предельный ток - 40 миллиампер. Обращение к выводам в программном коде осуществляется операторами pinMode(), digitalWrite() и digitalRead().

Примечание! Избегайте превышения значения максимального тока, способного повредить микроконтроллер.

Некоторые выводы наделены аналоговым функционалом (А0-А5), позволяющим определять входящее напряжение в диапазоне от нуля до напряжения, выбранного в качестве основного (по умолчанию), делящееся в цифровом соотношении на 1024 возможных значения (0..1023). В программном коде обращение к выводам осуществляется оператором analogRead(). Оператор analogReference() позволяет установить границы измеряемого напряжения, возможные варианты:

  • DEFAULT: стандартное опорное напряжение 5 вольт;
  • INTERNAL: встроенное опорное напряжение 1.1 вольта;
  • EXTERNAL: напряжение внешнего источника, подключенного к контакту AREF.

Примечание! При подключенном напряжении на выводе AREF необходимо использовать только тип EXTERNAL. В противном случае существует риск повреждения ATmega328.

В качестве примера: опорное напряжение - 5 вольт, на входе аналогового контакта - 2.5 вольта. Результат сравнения = 512.

В добавок, UNO оснащена шестью специализированными выводами (значок тильда "~"), позволяющие пользователю регулировать исходящее напряжение в диапазоне от 0 до 5 вольт на основе широтно-импульсной модуляции (ШИМ) с градацией цифровых значений в интервале от 0 до 255. Обращение к выводам в программном коде осуществляется оператором analogWrite().

Специальные функции:

  • Асинхронный последовательный интерфейс UART: выводы RX0 (приём) и TX1 (передача). Подключение к ним других устройств осуществляется по схеме RX->TX, TX->RX;
  • Двунаправленный последовательный интерфейс TWI/I2C: выводы А4 или SDA, A5 или SCL. Связь с другими устройствами поддерживается библиотекой TWI;
  • Последовательный периферийный интерфейс SPI: выводы 10 (SS), 11(MOSI), 12 (MISO), 13 (SCK) и на разъёме ICSP, расположенного рядом с микроконтроллером ATmega328. Связь с другими устройствами поддерживается библиотекой SPI;
  • ШИМ: выводы 3, 5, 6, 9, 10 и 11 с разрядностью 8-бит;
  • Внешние прерывания: вывод 2 (INT0) и вывод 3 (INT1). Каждый контакт можно настроить на генерацию прерывания по низкому уровню, по восходящему или спадающему фронту (задержка программы для предотвращения ложного прерывания в момент подачи питания), или на любое изменение уровня на входе вывода прерывания. Оперирует прерываниями программная функция attachInterrupt();
  • Светодиод L: отображает наличие сигнала высоко уровня (значение HIGH) для цифрового вывода 13. Гаснет при сигнале низкого уровня (значение LOW). Также, индицирует процесс прошивки микроконтроллера ATmega328;
  • AREF - опорное напряжение, устанавливаемое оператором analogReference();
  • Reset - передача сигнала низкого уровня (LOW) приведёт к перезапуску микроконтроллера.

Группа из 6-ти контактов - ICSP

Разъём ICSP (внутрисистемное последовательное программирование) разработан для непосредственного программирования центрального микроконтроллера ATmega328P с помощью внешних программаторов (USB ASP, AVRISP STK500 или другой с поддержкой интерфейса SPI) без использования внутреннего загрузчика. Данный способ применяется в тех случаях, когда требуется полный объём доступной флэш-памяти, или же использование USB-соединения нецелесообразно или неудобно.

Питание

Подать питание плате UNO R3 можно проводным соединением через USB-порт или используя внешний источник питания. Определение и переключение на активный источник питания происходит в автоматическом режиме.

К внешним (не USB) источникам относятся стационарные блоки питания, преобразующие переменное напряжение в постоянное, или батареи. Адаптеры питания могут подключаться к разъёму внешнего источника питания, имеющего размеры: внешний "минусовой" контакт 5,5мм, центральный штырьевой "плюсовой" контакт 2,1мм. Батареи можно соединять с выводами Vin (+) и GND (-).

Напряжение внешнего источника питания рекомендуется в интервале от 7 до 12 вольт. Питание платы напряжением менее 7 вольт может привести к нестабильной работы системы в целом. Питание с напряжением более 12 вольт приведёт к перегреву компонентов и выходу из строя всего модуля.

Назначение выводов 8-контактной группы "Питание":

  • VIN - входящее напряжение внешнего источника питания;
  • 5V - исходящее напряжение, отрегулированное встроенным понижающим регулятором до 5 вольт. Основное рабочее напряжение всей цепи модуля. Используется для питания подключаемых внешних модулей;
  • 3.3V - исходящее напряжение, отрегулированное встроенным понижающим регулятором до 3.3 вольт. Используется для питания подключаемых внешних модулей;
  • GND - общий вывод, заземление;
  • RES - служит для управляемого аппаратного сброса микроконтроллера. Физическая кнопка "Reset" позволяет выполнить сброс вручную;
  • 5V(IOREF) - "информационный" вывод, соединённый с контактом 5V. Установленные на плату полноразмерные модули расширений,  имеющие аналогичный ответный контакт, смогут определить рабочее напряжение контроллера, и, при необходимости, самостоятельно выбрать нужный им источник питания: 5 вольт, 3.3 вольта или дополнительный внешний.
  • Крайний 8-й вывод не задействован. Возможно, ему определят назначение в новых версиях платы.

Примечание! Не запускайте ваш проект (Arduino) при недостаточном питании. Модуль Uno способен самостоятельно перезапуститься, если совмещаются модули с высоким энергопотреблением: серво, моторы, большие экранные модули. Лучшим решением будет подключение таких модулей к внешним источникам напряжения. Простого USB-питания может оказаться не достаточно, особенно, когда сервопривод работает с нагрузкой.

Распиновка (цоколёвка) контактов UNO R3

Распиновка (цоколевка) Arduino UNO R3, UNO R3 pinout

Связь и коммуникация

Модуль UNO R3 обладает рядом возможностей для коммуникации с компьютером, другой Arduino-платой, или другими микроконтроллерами. С этой задачей справляется встроенный чип СР340, преобразующий входящие сигналы от USB-порта в TTL-уровни интерфейса UART, и создающий обычный виртуальный COM-порт, по которому и происходит общение с платой. Микропрограмма CH340 использует собственные USB-драйверы, которые необходимо предварительно установить в операционную систему вашего компьютера.

Драйвер CH340 можно загрузить сейчас. Поддерживаются ОС Windows: XP, Vista, 7, 8, 8.1, 10.

Для связи с аналогичными устройствами служат UART TTL (5В) выводы 0 (RX) и 1 (TX). Светодиоды RX, TX будут мигать, когда данные передаются через микросхему USB-в-TTL при соединении с компьютером через USB-порт (но не для последовательной связи на контактах 0 и 1).

Первое подключение

Установите драйвер CH340, используя автоматический установщик в соответствии с разрядностью операционной системы вашего компьютера. Модуль UNO R3 имеет все необходимые компоненты для подключения, просто соедините его USB-кабелем со свободным портом компьютера. На плате загорится светодиод "ON", информирующий вас о том, что UNO R3 подключена к питанию. На экране монитора появиться сообщение, подтверждающее назначение виртуального COM-порта. Заглянув в Диспетчер устройств, в разделе "Порты (COM и LPT)" вы увидите

Драйвер CH340 установлен

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

Если вы ранее не программировали контроллеры ARDUINO, то вам необходимо загрузить бесплатный редактор ARDUINO IDE с сайта разработчика и установить его на ваш компьютер. Загрузить сейчас.
Теперь вы можете приступать к программированию UNO.

Любая программа, написанная для ARDUINO, называется "скетч". Прежде, чем вы загрузите первый скетч, необходимо провести небольшую настройку редактора:
Выберите в меню "Инструменты(Tools) / Плата(Boards)" тип вашего устройства "ARDUINO / Genuine Uno".

Выбор ARDUINO UNO

Следующим шагом необходимо указать порт компьютера, к которому подключен ваш USB кабель. В ОС Windows порты могут быть COM2, COM3 и т.д. На ОС MAC наименование порта может выглядеть как /dev/tty.usbserial-A6006hSc

Выбор порта ARDUINO UNO

Теперь все настроено для загрузки скетча в вашу UNO R3.

Воспользуйтесь приведённым ниже демонстрационным кодом простого скетча, позволяющего "помигать" светодиодом L. Скопируйте или наберите текст программы в окно редактора.

int ledPinL = 13; // Указываем номер контакта светодиода L

void setup()
{
pinMode(ledPinL, OUTPUT); // Задаём контакту режим "вывод информации".

}
void loop()
{
digitalWrite(ledPinL, HIGH); // Устанавливаем светодиод L в положение включен
delay(1000); // Ждем 1 секунду
digitalWrite(ledPinL, LOW); // Устанавливаем светодиод L в положение выключен
delay(1000); // Ждем 1 секунду
}

После того, как вы нажмете кнопку "Загрузить" на панели управления ARDUINO IDE, на плате замигают светодиоды, показывающие передачу данных, и на экране компьютера появиться сообщение "Загрузка завершена" (Done Uploading). Спустя доли секунды, микроконтроллер начнёт выполнять вашу программу.

Кроме стандартного метода программирования через USB, платой предоставлена возможность программировать контроллер напрямую. Для этого необходимо подключить внешний программатор к ICSP-разъёму. Написание кода можно выполнять в разных программах, одна из таких  - BASCOM-AVR. Тот же пример мигания светодиодом L, написанный для редактора BASCOM-AVR

$regfile = "m328pdef.dat"
$crystal = 16000000
$hwstack = 40
$swstack = 16
$framesize = 32

Config Portb.5 = Output
Portb.5 = 0
Do
Portb.5 = 1
Waitms 500
Portb.5 = 0
Waitms 500
Loop
End

Изучив назначение портов микроконтроллера ATmega328 (на картинке с распиновкой), определяем, что светодиод L подключен к 17 ножке чипа, соответствующей порту B.5. Инициализируем порт B.5 в режим вывода информации. Единичкой и нулем с небольшой задержкой включаем и выключаем светодиод.

Редакторы ARDUINO IDE и BASCOM-AVR имеют немалые ознакомительные библиотеки примеров, предназначенные для изучения основных функций среды разработки.

Техническая помощь

Вопрос: Плата перестала прошиваться, в ARDUINO IDE получаю ошибку обращения к порту или ошибку инициализации порта.

Ответ. Попробуйте сделать следующее (каждый шаг может решить проблему):

  1. Отсоедините шнур от USB-разъёма вашего компьютера и соедините снова;
  2. Откройте "Диспетчер устройств", найдите ваше устройство в разделе "Порты (COM и LPT)", щёлкните на нём правой кнопкой и выберите "Свойства". В открывшемся окне, в закладке "Параметры порта" установите другой, неиспользуемый ранее номер порта. Повторите шаг 1;
  3. Откройте "Диспетчер устройств", найдите ваше устройство в разделе "Порты (COM и LPT)", щёлкните на нём правой кнопкой и выберите "Удалить". Повторите шаг 1. Вашему устройству будет определён новый свободный COM-порт;
  4. Возможно, повреждён или утерян загрузчик для ATmega328. Файл дампа памяти для UNO c загрузчиком и примером программы, мигающей светодиодом, можно загрузить по ссылке.
  5. Возможно, неисправен встроенный USB-в-TTL преобразователь уровней. Для программирования контроллера используйте самостоятельные USB-в-TTL адаптеры, подключив их к выводам RX0, TX1, GND, RST(DTR), VCC. Или воспользуйтесь внешними AVR-программаторами.

Похожие позиции

790 р.
Арт. 14741
Уже в корзине
2250 р.
Арт. 12977
Уже в корзине
430 р.
Арт. 10005
Уже в корзине
1120 р.
Арт. 14265
Уже в корзине
1490 р.
Арт. 10007
Уже в корзине
7700 р.
Арт. 12978
Уже в корзине
1550 р.
Арт. 10009
Уже в корзине
Информация представленная на данном информационном ресурсе преследует исключительно рекламные цели и не является договором-офертой !
© Все права защищены 2021г https://compacttool.ru
Связаться с нами 8-495-752-55-22 zakaz@compacttool.ru