Как подключить к Arduino преобразователь логического уровня сигнала
Если ваш микроконтроллер использует 5-вольтовую логику (как, например, Arduino), то нельзя просто взять и подключить к нему напрямую устройство, в котором применяется другой логический уровень. Для согласования уровней применяются специальные преобразователи напряжения.
Они бывают одноканальные, но чаще встречаются многоканальные. Например, 2-канальные, 4-канальные, 8-канальные и другие. Число каналов показывает, сколько разных логических сигналов можно подключить к данному преобразователю. Например, если вы применяете 4-проводный интерфейс SPI для связи с вашим датчиком, то необходимо применять 4-канальный преобразователь.
Кроме того, бывают преобразователи однонаправленные и двунаправленные. Однонаправленные преобразователи уровня могут преобразовывать сигналы, идущие только в одну сторону, как правило, от контроллера к управляемому устройству. Двунаправленные преобразователи, соответственно, преобразуют сигнал и от контроллера к устройству, и в обратную сторону.
Пример 4-канального двунаправленного преобразователя уровня показан на фотографии. Его основной элемент – четыре транзистора BSS138, которые обеспечивают быструю коммутацию сигналов.
4-канальный преобразователь логического уровня на транзисторах BSS138
Иногда каналы обозначаются не HV и LV, а по-другому. Например, A и B.
Как не сложно догадаться, сигналы необходимо подключать к соответствующим выводам. Например, если вы подключаете линию тактовой частоты контроллера к высоковольтному каналу HV3, то с другой стороны она будет выходить из канала LV3.
Ещё один пример преобразователя напряжения уровня – модуль HW-221 на основе микросхемы TXS0108E.
8-канальный преобразователь логического уровня на микросхеме TXS0108E

Arduino Uno входы
2 Пример подключения преобразователя логического уровня
Давайте посмотрим на практическом примере, как работает преобразователь уровня.
Для этого подключимся к какому-нибудь 3-вольтовому датчику, например, датчику температуры и влажности HTU21D. Этот датчик управляется по интерфейсу I2C, и ему необходим 3-вольтовый сигнал управления. В то же время Arduino генерирует 5-вольтовый сигнал. Тут нам и придёт на помощь преобразователь логического уровня. Соединим устройства по такой схеме:
Схема подключения датчика HTU21D к Arduino через преобразователь логического уровня
Работа с датчиком HTU21D посредством Arduino и преобразователя
Более подробно о работе с сенсором HTU21D рассказывается в следующей статье.
Ардуино Использование Аналоговых Входов Как Цифровых
Как можно увидеть на картинке, микроконтроллер это не вся плата как принято считать, а лишь ее часть. С помощью всех остальных элементов, таких как: порты ввода и вывода, конвертеры, индикаторы, стабилизаторы и кнопки, работать с микроконтроллером становится удобно и безопасно (в основном для устройств, с которыми вы хотите общаться).
Итак, приступим:
Не смотря на то, что на плате множество различных элементов, взаимодействовать мы можем только с тремя их группами: пины питания (GND, 5V, 3.3V, Vin, IOREF, RESET ), аналоговые пины (A0-А5) и цифровые пины (1-13).
- Пины А0-А5 имеют возможность считывать извне псевдо-аналоговый сигнал, а также передавать его на внешние устройства.
- Что такое псевдо-аналоговый сигнал? Аналоговым является непрерывный сигнал, например свет и звук. Для его представления в памяти микроконтроллера он переводится в цифровой путем измерения «высоты» сигнала через определенный промежуток времени. Для получения сигнала, максимально приближенного к аналоговому, необходимо увеличить частоту дискретизации сигнала, т.е. увеличить количество замеров «высоты» аналогового сигнала за секунду.
- Для того, чтобы иметь возможность обратиться к этим пинам, в программе необходимо использовать команды:
- Порты А4 и А5 поддерживают I2C
Чаще всего аналоговые пины используются для передачи и чтения сигнала извне, когда нам принципиально важна «высота» сигнала.
Блок пинов ANALOG IN на Arduino
- Цифровые пины, обозначаемые как digital, используются для чтения и передачи цифрового сигнала, т.е. «0» или «1» («есть сигнал», «нет сигнала»).
- Для обращения к этим пинам используются команды:
- Также у цифровых портов (3,5,6,9,10,11), имеющих обозначения «~» есть особенность, они поддерживают ШИМ (Широтно-импульсную модуляцию). ШИМ используется для управления, например, оборотами коллекторного мотора через драйвер (подробнее в следующей статье).
- И еще одна особенность цифрового блока это пины 0 и 1, они поддерживают последовательный интерфейс UART (1 — ТХ, 2 — RX).
- ICSP-разъём предназначен для внутрисхемного программирования микроконтроллера ATmega328P. С использованием библиотеки SPI данные выводы могут осуществлять связь с платами расширения по интерфейсу SPI. Линии SPI выведены на 6-контактный разъём, а также продублированы на цифровых пинах 10(SS), 11(MOSI), 12 (MISO), 13(SCK). Микроконтроллер ATmega328P.
- Сердцем платформы Arduino Uno является 8-битный микроконтроллер семейства AVR-ATmega 328

Как подключить к Arduino преобразователь логического уровня сигнала
- ICSP-разъём предназначен для внутрисхемного программирования микроконтроллера ATmega16U2.
- Микроконтроллер ATmega16U2 на версии Arduino Uno обеспечивает связь микроконтроллера ATmega328P с USB-портом компьютера. При подключении к ПК Arduino Uno определяется как виртуальный COM-порт. Прошивка микросхемы 16U2 использует стандартные драйвера USB-COM, поэтому установка внешних драйверов не требуется. Аналоги Arduino могут иметь «на борту» CH340 или FT232RL. для которых необходимо дополнительно устанавливать драйверы.
Микроконтроллеры платформа Arduino UNO АЦП, цифровая обработка сигналов
• Открытая (для всех), простая платформа для разработки «железяк».
• Включает микроконтроллер (ATmega328P
//www.atmel.com/Images/doc8161.pdf)
• Стандартный набор аппаратных средств (USB чип+интерфейс, порты
ввода-вывода, кварцевый резонатор, резисторы, конденсаторы и т.д.)
Порты (пины)
USB чип
Ввода-вывода
интерфейс
с USB
ATmega328P
Микроконтроллер
• Принцип действия.
• Соединяют выход цифрового
счетчика со входом цифроаналогового преобразователя
(ЦАП).
• Последовательно сравнивают (с
использованием компаратора)
аналоговый выход ЦАП с входным
аналоговым сигналом, который
необходимо оцифровать. Выходной
сигнал компаратора указывает на
то, когда необходимо завершить
расчет, сбросить счетчик и перейти
к следующему циклу оцифровки.
