Аналог DIP переключателя для аналогового входа

dangear
Offline
Зарегистрирован: 09.04.2014

Приветствую всех!
Возникла задача механическим способом сообщать ардуине статичное число "из вне". В данном вопросе это номер канала. Читал про DIP переключатели, но там на каждый переключатель идут 2-е ноги, т.е. блок из 8 переключателей имеет 16 ног.
Собственно вопрос: есть ли подобие DIP переключателя, которым можно будет выбрать например канал со значение "5", но для это использовать только 1-2 аналоговых пина? Думал про потенциометр, но его можно легко "сбить" с канала и не совсем понятно какое значение у него выбрано, а это прям очень важный фактор!
Приму к сведению любую информацию. Может вообще не в ту сторону смотрю...

msng
Offline
Зарегистрирован: 07.06.2012

к одному входу подключить реально, вот пример

 

KVadik
KVadik аватар
Offline
Зарегистрирован: 15.06.2014
dangear
Offline
Зарегистрирован: 09.04.2014

msng пишет:

к одному входу подключить реально, вот пример

Благодарю! Думаю подходящее решение! По сути можно 5-и канальный DIP перекдючатель подключить аналогичным способом к одному аналоговому входу! А по данной схеме есть ли возможность регистрировать нажатие нескольких клавиш?

msng
Offline
Зарегистрирован: 07.06.2012

по этой нет, но можно придумать как считать падение напряжений на пареллельном соединении нескольких сопротиления разного номинала...

inspiritus
Offline
Зарегистрирован: 17.12.2012

Можно сделать на сдаиговом регистре. Выхода подключить к "входам" дип-а, "выходы" дипа объединить и посадить на цивровой вход и подтянуть его к единице. В регистре двигать ноль и после каждого проталкивания читать вход. Замкнутый контакт дипа покажет ноль, разомкнутый останется единицей.

по ссылке подключения, пример 2.2  практически Ваш случай, только для двух регистров что легко поправить.

http://arduino.ru/Tutorial/registr_74HC595

KVadik
KVadik аватар
Offline
Зарегистрирован: 15.06.2014

inspiritus пишет:

Можно сделать на сдаиговом регистре.

Тогда уже на мультиплексоре 4051

inspiritus
Offline
Зарегистрирован: 17.12.2012

Для мультиплексора на одну управляющую линию больше потребуется.

dangear
Offline
Зарегистрирован: 09.04.2014

inspiritus пишет:

Можно сделать на сдаиговом регистре. Выхода подключить к "входам" дип-а, "выходы" дипа объединить и посадить на цивровой вход и подтянуть его к единице. В регистре двигать ноль и после каждого проталкивания читать вход. Замкнутый контакт дипа покажет ноль, разомкнутый останется единицей.

по ссылке подключения, пример 2.2  практически Ваш случай, только для двух регистров что легко поправить.

http://arduino.ru/Tutorial/registr_74HC595

да собственно проблема в отсутствии свободных пинов для подключения сдвигового регистра. Выходы с 13 по 9 используются под nrf24l01, с 6 по 2 - 5 кнопок, A1-A5 - светодиоды. Остались 7,8 и A0. На A0 планирую подключить переключатель каналов с использованием DIP-переключател по схеме выше. Думал использовать этот метод для 5 кнопок, которые занимают 5 цифровых каналов, но необходима возможность их одновременного нажатия. Так сто сдвиговый регистр отпадает. Даже на вывод светодиодов не вижу смысла его использовать. В целом вопрос по теме решен. Осталось наплести паутину для кнопок выбора каналов,т.к. не нашел устройства по типу многоканального dip-переключателя с двумя пинами, но думаю особых проблем быть не должно.

toc
Offline
Зарегистрирован: 09.02.2013

Можно и одной кнопкой обойтись.
Сколько раз нажал - такой и канал. Или нажатие это "+1".
Для контроля - светодиод, кажется, его можно на один пин с кнопкой посадить.

dangear
Offline
Зарегистрирован: 09.04.2014

toc пишет:
Можно и одной кнопкой обойтись. Сколько раз нажал - такой и канал. Или нажатие это "+1". Для контроля - светодиод, кажется, его можно на один пин с кнопкой посадить.

Думал насчет установки счетчика для канала, но необходима индикация, а дисплей цеплять некуда и нецелесообразно с точки зрения энергопотребления. Поэтому и был выбран формат DIP-переключателя, т.к. Сразу видно какой из каналов включен. Единственный неудобрый момент - громоздить массив из резисторов.

А вот насчет того, что можно и кнопу и лампочку посадить на один канал - очень интересно. Попробую найти.

kayot
kayot аватар
Offline
Зарегистрирован: 11.04.2014

а чем вам не нравятся расширители на шину I2C

типа PCF8574 8 портов или PCA9555 16 портов input output

передача данных по 2 проводам подключаются к ардуине на порты А4,А5 (SCL,SDA)

на вход выход можно попробовать подключить одновременно кнопку (разомкнутую) и светодиод

в вашем варианте все ноги ардуины можно освободить для других задач