Главная » Arduino » Распиновка Arduino UNO. Назначение и описание контактов

Распиновка Arduino UNO. Назначение и описание контактов

Платы разработки Ардуино предлагают своим пользователям множество преимуществ, поэтому они идеально подходят для создания различных и интересных устройств. В этой статье мы приводим назначение и описание выводов платы Arduino UNO R3 на базе 8-битного микроконтроллера AVR ATmega328P.

Содержание

  1. Arduino UNO — распиновка выводов
  2. Arduino — блок питания
  3. Arduino — аналоговые контакты
  4. Arduino — цифровые контакты
  5. Arduino — цифровые выводы с функцией генерации сигналов ШИМ
  6. Arduino — контакты связи — интерфейс UART
  7. Arduino — контакты связи — интерфейс SPI
  8. Arduino — контакты связи — интерфейс I2C
  9. Arduino — контакты прерывания
  10. Arduino — разъем ICSP на UNO R3

1. Arduino UNO распиновка выводов

Большинство моделей Ардуино, включая самую популярную Arduino UNO R3, оснащены 8-битным микроконтроллером AVR ATmega328P. Дорожки на печатной плате соединяют выводы микроконтроллера с гребенкой контактов. Благодаря этому мы можем подключить к Arduino внешние устройства, такие как Arduino Shield, светодиоды, транзисторы, датчики, потенциометры и другие.

Контакты Arduino UNO R3 включают в себя 14 цифровых контактов, 6 аналоговых контактов, разъемы питания, разъем USB и разъем для дополнительного внешнего программатора USB-ASP. Полная схема  распиновки платы Arduino UNO R3 показана на следующем рисунке:

Arduino - общая распиновка выводов

2. Arduino — питание платы

Как подключить Arduino к питанию. Как и любое другое электронное устройство, для работы платы Ардуино необходимо подключить питающее напряжение. Питание к Arduino UNO R3 может подаваться тремя способами.

  • Первый способ — использовать разъем питания Arduino 5,5 мм/2,1 мм (круглый). В данном случае выходное напряжение должно быть в диапазоне от 7В до 12В.
  • Второй способ — подать на вывод «VIN» напряжение от внешнего источника в диапазоне от 7В до 12В. Это может быть лабораторный блок питания или два литий-ионных аккумулятора формата 18650, соединенных последовательно. Вывод «VIN» подключен к выпрямительному диоду, что предотвращает повреждение в случае подключения напряжения с обратной полярностью.
  • Третий способ — также питание можно подать через разъем USB типа B — как при подключении Ардуино к компьютеру, так и при питании от зарядного устройства для смартфона. Необходимо иметь в виду, что USB компьютера обеспечивает максимальный ток до 500 мА.

Arduino - питание платы

Мощность блока питания следует подобрать в соответствии с энергопотреблением разрабатываемого устройства.  Независимо от выбранного источника питания, схема должна соединяться с землей (GND). На плате Ардуино есть пять контактов «GND», которые гальванически связаны друг с другом.

Также на плате есть контакт «RESET», который после короткого замыкания на землю, например, с помощью кнопки на плате, вызывает временное отключение питания и перезапуск Arduino.

На Arduino можно подать внешний источник опорного напряжения через вывод «IOREF».

3. Arduino — аналоговые контакты

У Arduino UNO 6 аналоговых входов («A0» — «A5»). Эти входы соединены через мультиплексор с входом аналого-цифрового преобразователя (АЦП) микроконтроллера ATmega328.

АЦП преобразовывает входной аналоговый сигнал в диапазоне 0В-5В в цифровую форму. Разрешение АЦП в Ардуино составляет 10 бит. Это означает, что количество уровней напряжения на входе преобразователя равно 1023 с разрешением 4,89 мВ. Разрешение можно расширить с помощью опорного напряжения ниже 5В, которое подается на вывод «AREF».

Arduino - аналоговые контакты

Частота дискретизации преобразователя АЦП составляет примерно 9600 Гц. АЦП будет безупречно обрабатывать данные пока сигнал будет ниже половины частоты дискретизации АЦП, т.е. не более 4800Гц.

Типичные приложения с использованием АЦП Arduino: аналоговые датчики, потенциометры, а также управление голосом через микрофон (VoIP).

4. Arduino — цифровые контакты

У Arduino Uno 14 цифровых контактов («D0» — «D13»), которые можно настроить как входы или выходы. Один из этих контактов «D13» подключен к встроенному светодиоду.

Максимальный ток (нагрузка) каждого цифрового контакта составляет 20 мА. Цифровые выводы работают с логическими состояниями: низкое состояние означает лог.0, а высокое состояние — лог.1. Если цифровые контакты Ардуино настроены как выходы, то низкое напряжение равно 0 В, а высокое равно 5 В.

Arduino - цифровые контакты

Если же цифровые контакты сконфигурированы как входы, принимающие сигналы от внешних устройств, то логические уровни будут другие. Ардуино интерпретирует входное напряжение в диапазоне 0,0В — 0,8В как низкое состояние («0»), а в диапазоне 2,0В до 5,0В как высокое состояние («1»). Диапазон 0,8В — 2,0В означает запрещенное состояние, в котором нет права на изменение логического состояния.

5. Arduino — цифровые выводы с функцией генерации сигналов ШИМ

В дополнение к своей стандартной функциональности некоторые цифровые контакты используются для генерации сигнала ШИМ. Выходы ШИМ в Arduino: «D3», «D5», «D6», D9», «D10» и «D11». По умолчанию частота ШИМ Arduino составляет 490 Гц.

Arduino - цифровые выводы с функцией генерации сигналов ШИМ

Величина скважности определяет, в течение какой части периода на цифровом выводе находиться низкое состояние. Например, если скважность ШИМ-сигнала составляет 40%, то при пиковом напряжении 5В среднее значение напряжения такого сигнала будет равно 2В. Соответственно, чем больше значение коэффициента заполнения, тем выше среднее значение сигнала ШИМ.

Популярными приложениями, использующие  ШИМ-сигнал, являются регуляторы скорости электродвигателя, регуляторы яркости светодиодного освещения, музыкальные синтезаторы.

6. Arduino — коммуникационные контакты — интерфейс UART

Ардуино использует несколько интерфейсов для связи с внешними устройствами. Одним из них является протокол UART (Universal Asynchronous Receiver-Transmitter — универсальный асинхронный приемник-передатчик). Это последовательный протокол, реализованный с помощью цифровых выводов:

  • «D0» («RX» — приемник, который получает сигнал от внешнего устройства)
  • «D1» («TX» — передатчик, который отправляет сигнал на внешнее устройство)

Arduino - коммуникационные контакты - интерфейс UART

UART обеспечивает связь с внешними модулями, а также с компьютером, к которому он подключается через USB разъем.

7. Arduino — коммуникационные контакты — интерфейс SPI

Другим интерфейсом, является SPI (Serial Peripheral Interface — последовательный периферийный интерфейс ). Это последовательный протокол, который позволяет микроконтроллеру обмениваться данными с одним или несколькими устройствами. Данный протокол обеспечивает синхронную связь с другим микроконтроллером в топологии Master — Slave.

Arduino - коммуникационные контакты - интерфейс SPI

В Arduino UNO R3 шина SPI имеет следующие контакты:

  • SS (Slave Select) — пин «D10» — выбор адреса ведомого устройства, с которым должен связаться микроконтроллер
  • SCK (Serial Clock) — пин «D13» — тактовый сигнал, синхронизирующий передачу данных в обе стороны
  • MISO (Master Input Slave Output) — пин «D12» — линия отправки информации от ведомых устройств к ведущему устройству
  • MOSI (Master Output Slave Input) — пин «D11» — линия, которая отправляет информацию от ведущего устройства к ведомым устройствам

8. Arduino — коммуникационные контакты — интерфейс I2C

Ардуино также имеет шину I2C, которая обеспечивает связь между двумя компонентами. Для платы UNO R3 связь по I2C реализована с помощью двух контактов:

  • SDA (Data Series) — пин «A4» для передачи данных по шине I2C
  • SCL (Serial Clock) — пин  «A5» тактового сигнала, синхронизирующий передачу данных по шине I2C в обе стороны

Arduino - коммуникационные контакты - интерфейс I2C

Каждое внешнее устройство, которое обменивается данными с Arduino через шину I2C, имеет свой уникальный адрес, например, 0x23. К одной шине одновременно может быть подключено до 255 устройств.

9. Arduino — контакты прерывания

В микроконтроллерах, таких как ATmega238P, встроенных в Arduino, мы можем инициировать процедуру внешнего прерывания. Внешнее прерывание — системное прерывание, которое инициируется автоматически с уровня взаимодействующего устройства или вручную с уровня пользователя по причине внешних сигналов.

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

Arduino - контакты прерывания

В Arduino UNO R3 за прерывания отвечают следующие контакты:

  • «INT0» — пин  «D2»
  • «INT1» — пин «D3»

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

10. Arduino — разъем ICSP на UNO R3

ICSP (In-Circuit Serial Programming — внутрисхемное последовательное программирование) — 6-контактный разъем, позволяющий подключить внешний программатор USB-ASP. Это решение реализовано для пользователей, предпочитающих «традиционное» программирование на языках Си и Ассемблер и желающих сэкономить дополнительно 5кБ памяти микроконтроллера, которую занимает загрузчик Ардуино.

Arduino - разъем ICSP на UNO R3

Контакты ICSP выполняют следующие функции:

  • SCK (Serial Clock) — тактовый сигнал, синхронизирующий передачу данных между памятью микроконтроллера и компьютером
  • MISO (Master Input Slave Output) — линия, которая отправляет информацию от ведомых устройств на ведущее устройство (компьютер)
  • MOSI (Master Output Slave Input) — линия, которая отправляет информацию с ведущего устройства (компьютера) на ведомые устройства
  • VCC — линия вспомогательного питания 5В
  • GND — земля вспомогательного питания
  • RESET — сброс микроконтроллера





1 комментарий

  1. шаговый двигатель создаёт помехи на входы процессора, из-за этого показания датчиков не стабильны. что делать?

    Ответить

Добавить комментарий