Подключить аналоговый датчик к цифровому контакту

Если я возьму Arduino (samd21, если это имеет значение) и подключу аналоговый датчик/горшок к цифровому контакту, а затем установлю этот контакт в качестве входа, будет ли digitalRead(#) запускать ВЫСОКИЕ и НИЗКИЕ значения в какой-то пороговой точке? Или это вообще не работает?

, 👍0

Обсуждение

У меня нет нужных деталей, @rfii


2 ответа


Лучший ответ:

4

В соответствии с SAMD21 цифровой входной вывод обнаруживает ВЫСОКОЕ значение, если напряжение на выводе превышает 0,55 от напряжения питания. Таким образом, при 3,3 В это 1,8 В.

Входной вывод определяет НИЗКИЙ уровень, если напряжение ниже 0,3 от напряжения питания. Это 0,99 В при 3,3 В.

Для напряжений между этими значениями (от 1 В до 1,8 В) результат может быть ВЫСОКИМ или НИЗКИМ.

,

4

ДА. Если вы прочтете техническое описание, вы найдете набор спецификаций напряжения. Те, которые вас интересуют, - это ВИ и ВИЛ.

Большинство микроконтроллеров используют "Триггер Шмитта" для ввода. Это означает, что когда напряжение поднимается выше ВЫСОКОГО порога (VIH), вход переключается на ВЫСОКИЙ. Когда напряжение падает ниже НИЗКОГО порога (VIL), вход переключается на НИЗКИЙ. Этот "гистерезис" обеспечивает определенное подавление шума для получения чистого цифрового входного сигнала.

,