Настройка порога для цифровых контактов

Я работаю над проектом с использованием датчиков силы для создания клавиатуры для пациентов с МД. Я подключил датчики (каждый с 4 входными контактами) к цифровым контактам Arduino Due. Я хочу настроить порог цифровых контактов, чтобы компенсировать начальный вес руки пользователя при использовании клавиатуры. Я читал, что цифровые контакты имеют встроенный порог ("низкий" <0,3 Vcc и "высокий"> 0,6 Vcc). Я не могу подключить свои датчики к аналоговым контактам (из-за необходимости 20 входных контактов), и мне было интересно, возможна ли регулировка порога? Я исследовал и нашел один проект, в котором использовались аналоговые контакты и корректировался порог, который я пытаюсь имитировать: https://www.instructables.com/Arduino-Programmable-Button-Panel-As-Keyboard / P.S: Я новичок в Arduino и был бы признателен за помощь

, 👍0

Обсуждение

Не могли бы вы рассмотреть возможность использования аналогового мультиплексора?, @Edgar Bonet

Мне нравится идея Эдгара Бонета. Отступаем еще немного назад. Было бы проще для пациента с рассеянным склерозом управлять [аккордной клавиатурой] (https://en.wikipedia.org/wiki/Chorded_keyboard )?, @st2000


1 ответ


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

1

Нет, вы не можете изменить этот порог. Они устанавливаются аппаратным обеспечением цифрового ввода (технически триггер Шмитта) внутри микроконтроллера. Они не предназначены для регулировки, поскольку являются цифровыми входами, а не аналоговыми входами.

Таким образом, вам либо нужно создать свою собственную настраиваемую логику (с использованием операционных усилителей и переменных резисторов), подавая ее на Arduino, либо вам нужно использовать аналоговые входы.

Я бы предложил использовать второй метод. Вы можете увеличить количество аналоговых входов в основном на 2 способа:

  • Вы можете купить аналоговые мультиплексоры. Это микросхемы, которые могут подключать один аналоговый вход Arduino с одной стороны к выводам X с другой стороны. Большинство из них управляются с помощью цифровых контактов. Затем вы циклически повторяете каждую настройку мультиплексора, чтобы подключать по одному датчику за раз и проводить измерения на каждом из них. Каждый аналоговый вывод может быть подключен к одному аналоговому мультиплексору

  • Вы можете купить внешнюю плату АЦП. Они часто подключаются через интерфейсы, такие как I2C или SPI (например, этот от Adafruit с 4 каналами в каждом). Вы можете использовать несколько из них.

,