Привет, друзья!
Сейчас я как раз работаю над новым проектом на Arduino. И вот случилась проблема: пока он, мягко говоря, не очень-то работает. Честно говоря, я огорчен – столько времени, столько идей, но, видимо, придется повозиться с тестированием, а возможно, и заменить кое-какое оборудование. Но раз уж хочется поделиться чем-то полезным, пока проект на паузе, то я решил написать вот такую статью.
Сегодня мы пройдемся по разъемам Arduino Uno R3 (т.к. у меня как раз она и есть) и разберем, что и для чего здесь нужно. Надеюсь, вам будет интересно!
Разъемы и пины на Arduino Uno R3.
Основные разъемы и порты платы помогают подключать к ней датчики, экраны, светодиоды и другие устройства. Давайте посмотрим на каждый из них поближе.
Разъемы питания (Power).
Разъем питания (бочка): Это круглый разъем, через который можно подавать питание от внешних источников, таких как адаптеры, обеспечивающие напряжение от 7 до 12 В. Arduino автоматически выбирает между питанием от USB и внешнего источника, если оба подключены.
VIN: Этот разъем используется для подачи внешнего напряжения на плату. Вы можете подключить к VIN источник питания от 7 до 12 В, и плата будет использовать это напряжение для своей работы.
5V: Это разъем для подачи постоянных 5 В, которые Arduino получает от компьютера или внешнего источника через VIN или USB. Он питает все подключенные модули, нуждающиеся в 5 В.
3.3V: Выход для питания на 3.3 В, полезен для подключения модулей и датчиков, которые работают на более низком напряжении.
GND: Сюда подключается «земля». Arduino имеет несколько GND разъемов, к которым можно подключить минусовой провод питания от внешних компонентов, чтобы замкнуть цепь.
IOREF: Этот разъем служит для указания опорного напряжения (обычно 5 В) и предназначен для работы с расширительными платами (шилдами), которые могут работать на других уровнях напряжения. IOREF обеспечивает совместимость и помогает автоматически адаптировать шилды для работы с правильным уровнем питания на Arduino.
RESET: Пин, расположенный рядом с IOREF, позволяет программно перезагрузить плату Arduino. Короткое замыкание этого пина на GND приведет к перезапуску программы на Arduino Uno. Часто используется в шилдах, где требуется ручное управление перезагрузкой платы.
Цифровые пины (Digital Pins).
Arduino Uno имеет 14 цифровых пинов с обозначениями от 0 до 13. Эти пины можно использовать как входы или выходы, чтобы контролировать подключенные устройства, например, светодиоды, кнопки, реле и т.д.
PWM (ШИМ): Обозначаются со знаком ~. Пины 3, 5, 6, 9, 10, и 11 поддерживают ШИМ-управление (широтно-импульсную модуляцию), что позволяет плавно регулировать мощность на таких устройствах, как светодиоды и сервоприводы.
Стандартные цифровые пины: Пины 2, 4, 7, 8, 12 и 13 не поддерживают ШИМ, но могут использоваться для подачи и считывания цифровых сигналов (включить/выключить). Их можно применять для различных задач: подключение реле, светодиодов или кнопок.
RX и TX: Пины 0 (RX) и 1 (TX) используются для передачи данных через последовательный порт, что позволяет Arduino Uno обмениваться данными с компьютером или другими устройствами. Эти пины работают с логическими уровнями 5 В, поэтому для подключения модулей, работающих на 3.3 В, потребуется понижающий преобразователь уровня.
Важно помнить, что RX и TX также задействованы для обмена данными с компьютером через USB. Поэтому, если подключены внешние устройства, это может вызвать конфликт при загрузке кода.
Пины 18 (A4) и 19 (A5): Эти пины выполняют двойную функцию — они могут использоваться как аналоговые входы (A4 и A5) и как пины SDA и SCL для связи по интерфейсу I2C. Это делает их незаменимыми для подключения датчиков и модулей, поддерживающих I2C, таких как датчики температуры и влажности, экраны и многие другие устройства. Эти пины работают с логическими уровнями 5 В, поэтому для подключения модулей, работающих на 3.3 В, потребуется понижающий преобразователь уровня.
Аналоговые пины (Analog Pins).
На плате есть 6 аналоговых входов, обозначенных как A0 - A5. Эти пины позволяют измерять напряжение от аналоговых датчиков (например, датчиков температуры, освещенности и т.д.) и преобразовывать его в цифровое значение для обработки программой. Эти пины работают с логическими уровнями 5 В, поэтому для подключения модулей, работающих на 3.3 В, потребуется понижающий преобразователь уровня.
- Разрешение: Каждый аналоговый пин может считывать значения от 0 до 1023, что соответствует входному напряжению от 0 до 5 В.
- Особенность использования: Аналоговые пины могут также работать как цифровые, если указать их в коде как входы/выходы, хотя чаще всего используются именно для аналогового ввода.
Пин AREF (Analog Reference).
Этот пин нужен для задания опорного напряжения на аналоговых входах. Стандартное опорное напряжение составляет 5 В, но если вы хотите увеличить точность измерений, можете подключить к AREF напряжение до 5 В и использовать его как новый максимум для аналогового измерения.
ICSP разъем (In-Circuit Serial Programming)
Arduino Uno имеет два ICSP-разъема, которые позволяют программировать микроконтроллер напрямую, минуя загрузчик Arduino. Эти разъемы также полезны для перепрошивки микроконтроллера и обновления кода, а также для взаимодействия с некоторыми модулями и датчиками, использующими SPI.
Первый ICSP-разъем используется для прошивки главного микроконтроллера ATmega328P:
- MISO (Master In Slave Out)
- MOSI (Master Out Slave In)
- SCK (Serial Clock)
- RESET
- VCC и GND
Второй ICSP-разъем рядом с USB-портом отвечает за работу с интерфейсом USB и программирование микросхемы USB-контроллера (ATmega16U2) на плате. Обычно этот разъем используется для восстановления прошивки USB, если возникли проблемы с подключением к компьютеру.
6. USB-порт
Это основной порт для подключения платы к компьютеру. Через него происходит:
- Питание платы от компьютера, если не используется внешнее питание.
- Загрузка кода на Arduino.
- Передача данных с и на компьютер, что удобно для отладки кода и работы с последовательным монитором.