Электроника - это просто Теоретические и практические вопросы для начинающих электронщиков. |
30.05.2013, 12:08
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.12.2009
Сообщений: 4,561
Сказал спасибо: 619
Сказали Спасибо 1,813 раз(а) в 974 сообщении(ях)
|
Re: Управление модулями
Сообщение от кустомер
|
слушает коды, посылаемые по этой шине, и когда код совпадает с его собственным ("зашитым"), активизируется. Любым несовпадающим кодом сбрасывается.
|
Какие микросхемы работают подобным образом?
UPD:
Ну не обязательно зашитым в чип, возможно, установленным на штырьках, или иначе как-то; суть работы же ясна?
__________________
оставил форум, защищая свою честь и достоинство.
Последний раз редактировалось кустомер; 30.05.2013 в 12:29.
|
|
|
|
30.05.2013, 12:27
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,978
Сказал спасибо: 2,554
Сказали Спасибо 11,858 раз(а) в 5,942 сообщении(ях)
|
Re: Управление модулями
Лучше контроллера тут никто не справится. Ведь определив адрес как свой устройство должно чой-то сделать (скажем, данные ретранслировать)
Но, добавив пару проволочек в шину, можно обойтись и небольшим количеством россыпи.
Один провод идет на все модули, другой транслируется через модули.
Получив для трансляции первый импульс модуль отвечает по второму проводу и отрабатывает свою задачу.
Получив следующий не отвечает, а передает дальше.
Базовое устройство и каждый модуль если не получили после запроса подтверждения - сбрасываются в исходное состояние.
Наращивание такой системы элементарно.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
30.05.2013, 12:40
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.12.2009
Сообщений: 4,561
Сказал спасибо: 619
Сказали Спасибо 1,813 раз(а) в 974 сообщении(ях)
|
Re: Управление модулями
Сообщение от akegor
|
Ведь определив адрес как свой устройство должно чой-то сделать
|
От микросхемы мне нужно только одно: чтобы услышав свой адрес установила на ножке логический "0" до того времени, как появится какой-нибудь другой адрес. Тогда - установить "1" до того момента, пока опять не появится "свой".
Кто не понял - прочитывать выше приведенный абзац повторно до полного просветления)))))
__________________
оставил форум, защищая свою честь и достоинство.
|
|
|
|
30.05.2013, 12:42
|
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
|
Re: Управление модулями
|
|
|
Сказали "Спасибо" Easyrider83
|
|
|
30.05.2013, 12:52
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.12.2009
Сообщений: 4,561
Сказал спасибо: 619
Сказали Спасибо 1,813 раз(а) в 974 сообщении(ях)
|
Re: Управление модулями
Спасибо за поисковые слова!
Пошел изучать даташиты.
|
|
|
|
30.05.2013, 19:01
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.12.2009
Сообщений: 4,561
Сказал спасибо: 619
Сказали Спасибо 1,813 раз(а) в 974 сообщении(ях)
|
Re: Управление модулями
Покурил даташиты.
Если уважаемый Easyrider83 имел ввиду засылать в расширитель порта код, а потом снимать уровень с выбранной из его восьми линий, то такая задача решается 555ИР8 )))))
Хотя, для восьми модулей - пуркуа бы и не па?..
Короче, рассыпуха рулит ![Очень смешно](images/smilies/icon_veryhappy.gif) ну, или МК.
__________________
оставил форум, защищая свою честь и достоинство.
Последний раз редактировалось кустомер; 30.05.2013 в 19:05.
|
|
|
|
02.06.2013, 03:51
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.10.2006
Сообщений: 1,446
Сказал спасибо: 99
Сказали Спасибо 317 раз(а) в 233 сообщении(ях)
|
Re: Управление модулями
Ну всё у вас тут просто.
Основное кстройство шлёт данные. Шлёт данные кому? Ведомым устройствам. А они на базе чего? Если на базе МК, то никаких телодвижний предпринимать не надо. Всё решается программно. Если ведомые - какие-нить готовые датчики, тогда проблемс. Им надо вовремя выставить CS.
Теперь вернёмся к передаче байтов. Сначала идёт адрес, потом данные.
На уровне SPI это просто поток байтов. Ведомая микросхема должна принять адрес, сравнить с собственным и, если надо, выставить сигнал CS.
Вернёмся к датчикам. Им же тоже что-то передаётся. Команды для установления нужного режима, запроса данных... И наверняка какой-нибудь из этих байтов будет совпадать с адресом.
Для правильной работы дешифратора адреса нужно, чтобы он знал и понимал режимы всех подключаемых устройств, чтобы знать, какой байт пропустить, а какой принять за адрес.
Думаю, что с такой функцией справится только МК.
Тогда отсюда простой вывод: использовать для каждого слэйва МК.
Без МК можно обойтись только в примитивном случае, что все слэйвы одинаковые и их не надо конфигурировать (или их конфигурирование простое). Тогда да - шлём число 5. Это значит, что мы хотим получить данные с 5 слэйва. Другие числа 5-м слэйвом игнорируются.
|
|
|
|
02.06.2013, 09:48
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.12.2009
Сообщений: 4,561
Сказал спасибо: 619
Сказали Спасибо 1,813 раз(а) в 974 сообщении(ях)
|
Re: Управление модулями
Сообщение от Godzilla82
|
Если ведомые - какие-нить готовые датчики, тогда проблемс. Им надо вовремя выставить CS.
‹ . . . ›
Им же тоже что-то передаётся. Команды для установления нужного режима, запроса данных... И наверняка какой-нибудь из этих байтов будет совпадать с адресом.
|
Вот поэтому и представляет интерес: существуют ли специализированные микросхемы для решения такой задачи в общем случае.
Народ таки ужасно шаблонен. Привыкли, что обычно вопросы - "как решить...?" - и так и отвечают по инерции... Устал уже повторять: мне не нужены советы, как решать эту задачу. У меня уже на выбор несколько вариантов готовы.
Мне нужна подсказка по существующей элементной базе. И только
Вопрос темы был не "как решить задачу" - решить-то можно в любом случае, а существуют ли специализированные микросхемы распознавания адреса. Пока никто таких не назвал. Указали на расширители портов; их можно пристроить, но их настоящая функция все-таки другая.
Хорошо; а в I2C адрес приемника чем определяется? Он в чипе зашит, или - как?
__________________
оставил форум, защищая свою честь и достоинство.
|
|
|
|
02.06.2013, 10:02
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.10.2006
Сообщений: 1,446
Сказал спасибо: 99
Сказали Спасибо 317 раз(а) в 233 сообщении(ях)
|
Re: Управление модулями
Сообщение от кустомер
|
Вопрос темы был не "как решить задачу" - решить-то можно в любом случае, а существуют ли специализированные микросхемы распознавания адреса. Пока никто таких не назвал. Указали на расширители портов; их можно пристроить, но их настоящая функция все-таки другая.
|
Вам про фому, а вы про Ерёму.
Если у вас при инициализации слэйва 1 передаются байты a,b,c,d,e и ещё пять раз байт f, а при инициализации слэйва 2 передаются байты g,h. То вы сами представляете алгоритм выделения адреса? Могу сказать сразу. Специальных микросхем нет. МК - вот вам специальная микросхема.
А вы ведь даже не говорите ничего про слэйвы. Хотя бы примерный протокол обмена. Так что, каков вопрос - таков и ответ.
|
|
|
|
02.06.2013, 10:14
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,049
Сказал спасибо: 592
Сказали Спасибо 3,968 раз(а) в 1,826 сообщении(ях)
|
Re: Управление модулями
Последний раз редактировалось alvadep; 02.06.2013 в 10:25.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 01:14.
|
|