Опрос 16 дискретных датчиков

Обсуждаем контроллеры компании Atmel.
Ответить
Leprecon
Родился
Сообщения: 3
Зарегистрирован: Чт мар 13, 2014 12:07:40

Опрос 16 дискретных датчиков

Сообщение Leprecon »

День добрый.
Нужна идея как организовать опрос 16-ти дискретных датчиков задымления (в протеусе вместо датчиков использую переключатели вкл\выкл).

При этом:
Опрос должен происходить на одной шине с выставлением адреса датчика (A0, A1 ... A15).
К этой же шине должен быть подключен семисегментный индикатор с номером опрашиваемого датчика.

Проблема заключается в том, что не получает на одной шине правильно реализовать отрисовку на индикаторе номера датчика и одновременно опрашивать нужный датчик.

Вернее идеи некоторые есть, но они достаточно громоздкие и неудобные.
Реклама
Alkul
Держит паяльник хвостом
Сообщения: 933
Зарегистрирован: Ср апр 13, 2011 11:09:20
Откуда: Екатеринбург

Re: Опрос 16 дискретных датчиков

Сообщение Alkul »

Leprecon писал(а):Опрос должен происходить на одной шине с выставлением адреса датчика (A0, A1 ... A15)
Тип шины? Вид протокола обмена?
Реклама
Leprecon
Родился
Сообщения: 3
Зарегистрирован: Чт мар 13, 2014 12:07:40

Re: Опрос 16 дискретных датчиков

Сообщение Leprecon »

Alkul писал(а): Тип шины? Вид протокола обмена?
Мне без разницы. Я в этом пока что даже не любитель.
Что-то посоветуете?
Alkul
Держит паяльник хвостом
Сообщения: 933
Зарегистрирован: Ср апр 13, 2011 11:09:20
Откуда: Екатеринбург

Re: Опрос 16 дискретных датчиков

Сообщение Alkul »

Leprecon писал(а):
Alkul писал(а): Тип шины? Вид протокола обмена?
Что-то посоветуете?
Чтоб советовать, надо знать, какие именно датчики задымления Вы используете. Самодельные или какие-то готовые? Или эти датчики нужно разработать?
Вы назвали датчики "дискретными" - что Вы под этим понимаете? Они выдают лог.0 или лог.1 в зависимости от того, есть или нет задымление?

У меня не совсем укладываются в голове понятия "дискретный датчик" и "адрес датчика на шине" применительно к одному и тому же датчику. Поясните подробнее.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
ИС-пытатель
Вымогатель припоя
Сообщения: 577
Зарегистрирован: Ср июн 19, 2013 08:10:48
Откуда: Москва, СПб, Липецк, Рязань

Re: Опрос 16 дискретных датчиков

Сообщение ИС-пытатель »

Протокол UART. Запускаешь по циклу. Передача - адрес датчика. Ответ - его состояние. И вперед! Желательно выбрать значения состояний такими, чтобы они не могли произвольно получится при отключении датчика.
Реклама
Leprecon
Родился
Сообщения: 3
Зарегистрирован: Чт мар 13, 2014 12:07:40

Re: Опрос 16 дискретных датчиков

Сообщение Leprecon »

Alkul писал(а): Вы назвали датчики "дискретными" - что Вы под этим понимаете? Они выдают лог.0 или лог.1 в зависимости от того, есть или нет задымление?
Да, именно такие. В протеусе для простоты заменил их на обычные переключатели.
Вопрос в том что можно ли как-то реализовать опрос 16 кнопок и одновременно отображать номер опрашиваемой кнопки на индикаторе используя для этого только 1 порт?

Использовать 16 ног мк только для кнопок слишком расточительно. Хотелось бы найти выход с наименьшим использования ног мк.
Реклама
Alkul
Держит паяльник хвостом
Сообщения: 933
Зарегистрирован: Ср апр 13, 2011 11:09:20
Откуда: Екатеринбург

Re: Опрос 16 дискретных датчиков

Сообщение Alkul »

Leprecon писал(а):Вопрос в том что можно ли как-то реализовать опрос 16 кнопок
Опрос 16-ти кнопок можно сделать, задействовав один порт - организовав клавиатурную матрицу 4х4.
Вывод информации через этот же порт сделать можно, но придется применять буферы с возможностью перевода выводов в Z-состояние (наподобие АП6 в ТТЛ-сериях). Вопрос лишь в том, что стоимость пары таких буферных микросхем сопоставима со стоимостью контроллера. Чем использовать простенький контроллер с малым количеством портов и лепить к нему обвязку в виде буферов и регистров гораздо проще (и дешевле) взять контроллер более старшей модели из того же семейства с бОльшим количеством портов.
У датчиков-то какой выход - "монтажное ИЛИ" или "сухой контакт"?
Leprecon писал(а):и одновременно отображать номер опрашиваемой кнопки на индикаторе используя для этого только 1 порт?
Наверное да, если взять один семисегментный индикатор, отображая в нем цифры от 0 до 9 и буквы от A до F, а для удержания на выводах сегментов нужных лог.уровней использовать регистр-защелку. Но для управления этим регистром-защелкой потребуется хотя бы одну линию второго порта задействовать.
XanderEVG
Родился
Сообщения: 4
Зарегистрирован: Сб фев 25, 2012 22:09:34

Re: Опрос 16 дискретных датчиков

Сообщение XanderEVG »

я конечно не специалист, но можно применить мультиплексор.
4 адресных + 1 на чтение = 16 входов.
"Микросхема К155КП1 имеет 16 прямых входов и один инверсный выход. За коммутацию входов на выход отвечает четырехразрядный адресный вход 1, 2, 4, 8. "


или 1 адресный + 4 на чтение = 8 входов(если поставить 2 микрухи то 1 адресный + 4 ножек на чтение + 1 на выбор микрухи даст 16 входов) //см. FST3257MTC - 20 рэ


городить матрицу как то не по феншую. имхо проще всего взять МК с большим числом ножек(может даже дешевле выйдет?). особенно если места на плате нужно сэкономить
Alkul
Держит паяльник хвостом
Сообщения: 933
Зарегистрирован: Ср апр 13, 2011 11:09:20
Откуда: Екатеринбург

Re: Опрос 16 дискретных датчиков

Сообщение Alkul »

XanderEVG писал(а):городить матрицу как то не по феншую
Клавиатурная матрица не стоит ни копейки - это не более, чем способ организации опроса контактов. Если у датчиков тип выхода именно "сухой контакт". Если же там "монтажное ИЛИ" - то бишь выход типа "открытый коллектор", то надо знать - встроен ли резистор подтяжки коллектора к питанию. Если нет, то все проще. Если да - посложнее.

Ваше предложение насчет мультиплексора тоже неплохое, я что-то про мультиплексор не вспомнил сходу :) .
Ответить

Вернуться в «AVR»