Аналог DIP переключателя для аналогового входа
- Войдите на сайт для отправки комментариев
Втр, 05/05/2015 - 06:21
Приветствую всех!
Возникла задача механическим способом сообщать ардуине статичное число "из вне". В данном вопросе это номер канала. Читал про DIP переключатели, но там на каждый переключатель идут 2-е ноги, т.е. блок из 8 переключателей имеет 16 ног.
Собственно вопрос: есть ли подобие DIP переключателя, которым можно будет выбрать например канал со значение "5", но для это использовать только 1-2 аналоговых пина? Думал про потенциометр, но его можно легко "сбить" с канала и не совсем понятно какое значение у него выбрано, а это прям очень важный фактор!
Приму к сведению любую информацию. Может вообще не в ту сторону смотрю...
к одному входу подключить реально, вот пример
жменю резисторов Вам в помощь :)
к одному входу подключить реально, вот пример
Благодарю! Думаю подходящее решение! По сути можно 5-и канальный DIP перекдючатель подключить аналогичным способом к одному аналоговому входу! А по данной схеме есть ли возможность регистрировать нажатие нескольких клавиш?
по этой нет, но можно придумать как считать падение напряжений на пареллельном соединении нескольких сопротиления разного номинала...
Можно сделать на сдаиговом регистре. Выхода подключить к "входам" дип-а, "выходы" дипа объединить и посадить на цивровой вход и подтянуть его к единице. В регистре двигать ноль и после каждого проталкивания читать вход. Замкнутый контакт дипа покажет ноль, разомкнутый останется единицей.
по ссылке подключения, пример 2.2 практически Ваш случай, только для двух регистров что легко поправить.
http://arduino.ru/Tutorial/registr_74HC595
Можно сделать на сдаиговом регистре.
Тогда уже на мультиплексоре 4051
Для мультиплексора на одну управляющую линию больше потребуется.
Можно сделать на сдаиговом регистре. Выхода подключить к "входам" дип-а, "выходы" дипа объединить и посадить на цивровой вход и подтянуть его к единице. В регистре двигать ноль и после каждого проталкивания читать вход. Замкнутый контакт дипа покажет ноль, разомкнутый останется единицей.
по ссылке подключения, пример 2.2 практически Ваш случай, только для двух регистров что легко поправить.
http://arduino.ru/Tutorial/registr_74HC595
да собственно проблема в отсутствии свободных пинов для подключения сдвигового регистра. Выходы с 13 по 9 используются под nrf24l01, с 6 по 2 - 5 кнопок, A1-A5 - светодиоды. Остались 7,8 и A0. На A0 планирую подключить переключатель каналов с использованием DIP-переключател по схеме выше. Думал использовать этот метод для 5 кнопок, которые занимают 5 цифровых каналов, но необходима возможность их одновременного нажатия. Так сто сдвиговый регистр отпадает. Даже на вывод светодиодов не вижу смысла его использовать. В целом вопрос по теме решен. Осталось наплести паутину для кнопок выбора каналов,т.к. не нашел устройства по типу многоканального dip-переключателя с двумя пинами, но думаю особых проблем быть не должно.
Можно и одной кнопкой обойтись.
Сколько раз нажал - такой и канал. Или нажатие это "+1".
Для контроля - светодиод, кажется, его можно на один пин с кнопкой посадить.
Думал насчет установки счетчика для канала, но необходима индикация, а дисплей цеплять некуда и нецелесообразно с точки зрения энергопотребления. Поэтому и был выбран формат DIP-переключателя, т.к. Сразу видно какой из каналов включен. Единственный неудобрый момент - громоздить массив из резисторов.
А вот насчет того, что можно и кнопу и лампочку посадить на один канал - очень интересно. Попробую найти.
а чем вам не нравятся расширители на шину I2C
типа PCF8574 8 портов или PCA9555 16 портов input output
передача данных по 2 проводам подключаются к ардуине на порты А4,А5 (SCL,SDA)
на вход выход можно попробовать подключить одновременно кнопку (разомкнутую) и светодиод
в вашем варианте все ноги ардуины можно освободить для других задач