Форум РадиоКот https://radiokot.ru/forum/ |
|
возможно ли разорвать и соединить двунаправленную шину? как? https://radiokot.ru/forum/viewtopic.php?f=21&t=16168 |
Страница 1 из 1 |
Автор: | miko [ Чт май 14, 2009 08:20:21 ] |
Заголовок сообщения: | возможно ли разорвать и соединить двунаправленную шину? как? |
всем привет! пытаюсь немного усовершенствовать готовое устройство где DSP процессор "общается" с микроконтроллером по некоей 4-х разрядной шине. идея в перенастройке процессора DSP. идея усугубляется отсутствием описания протокола обмена, в сети есть только общее описание процессора. TOSHIBA разглашать протокол отказывается. повезло, нашёл другое устройство где точно такая же микросхема работает в требуемом режиме. посмотрел анализатором: оказывается, разница всего лишь в десятке бит в начальной стадии загрузки. далее дело осложняется моей безграмотностью в области микропроцессоров. возможно ли средствами дополнительного микроконтроллера разорвать двунаправленную шину, "обмануть" оба устройства на время конфигурации ведомого а затем воссоединить шину для дальнейшей работы устройства в штатном режиме? задача контроллера будет после подачи питания разорвать шину на первые 200 тактов а затем соединить шину, отключившись до следующей подачи питания. будет ли после этого шина работать корректно? и как такое сделать? может это задача не для контроллера вовсе? в шине по каждому из 4-х проводов данные передаются "и туда и обратно" (а не раздельно как в MOSI/MISO). плюс ещё есть 2 провода CE и CLK, которые идут только от процессора к DSP. итого 6 проводов. |
Автор: | nik-as [ Чт май 14, 2009 16:29:45 ] |
Заголовок сообщения: | |
Разорвать возможно, причём для этого достаточно разорвать линию СЕ, после чего ведомое устройство установит входа в высокоимпедансное состояние. А вот будет оно работать корректно или нет это вопрос скорее программного обеспечения. |
Автор: | miko [ Пт май 15, 2009 01:23:38 ] |
Заголовок сообщения: | |
спасибо. но вот высокоимпедансного состояния то как раз и не требуется. более того, шины CE и CLK подразумеваю оставить цельными. а разорвать информационные линии. при этом дополнительный контроллер по сигналам шин CE и CLK будет принимать одни данные (и "рапортовать" правильной контрольной суммой) а далее отправлять несколько иные (из своей памяти), принимая ответы о получении. а вот после окончания процесса конфигурации микропроцессор должен накоротко замкнуть свои "вход" с "выходом" и "уснуть" до следующей подачи питания. вопрос: могут ли контроллеры "перемыкать" свои выводы? (сами при этом, естественно, переходя в высокоимпедансное состояние). потому что далее в процессе работы по этим шинам начинается "серьёзный" обмен данными в который вмешиваться нет необходимости, главное - не помешать. потому что, если контроллеры не имеют таких свойств перемыкать выводы, то придётся применять внешние ключи, что-то наподобие микросхемы 74HC4066. такими свойствами, наверное, обладает ПЛИС, но там нет памяти. "грузить" весь блок видоизменённой информации целиком представляется более рациональным нежели "пытаться" вставить в поток "другие" значения а потом пытаться "налету" подсчитывать и изменять контрольную сумму. извините, я возможно спрашиваю вообще детские вещи. я в этом действительно ничего не понимаю. и выполнить работу буду просить человека понимающего в программировании. но мне предварительно нужно знать, что вообще возможно а что нет. чего можно ожидать а что в принципе невозможно. спасибо |
Автор: | nik-as [ Пт май 15, 2009 06:24:33 ] |
Заголовок сообщения: | |
miko писал(а): могут ли контроллеры "перемыкать" свои выводы? (сами при этом, естественно, переходя в высокоимпедансное состояние)
Такого не могут не только контроллеры но и другие микросхемы. Если вводить контроллер в "анабиоз" то придётся замучивать обходные пути, а можно по окончании процедуры, просто превращать контроллер в промежуточный приёмопередатчик. Если конечно это не скажется на работе устройства. |
Автор: | miko [ Пт май 15, 2009 13:39:17 ] |
Заголовок сообщения: | |
так анабиоз то как таковой и не требуется особенно. по окончании процедуры контроллер лишь выдаётся сигнал на замыкание внешних ключей и "на всё оставшееся время". ключевая микросхема 74HC4066 как раз 4-канальная и с задачей справляется отлично. именно ею рвал/замыкал линии при исследовании/анализе протокола, что откуда, куда и когда идёт. про превращение контроллера в "репитер" тоже думал, но умозрительно как-то спокойнее без него. как то уверенности в надёжности больше. всё-таки замкнуть линию и "отойти" в сторону - самый надёжный, безошибочный вариант. однако, если всё же "транслировать" сигнал то да, соглашусь с вами, тут всё упирается в вопрос программного обеспечения. и, в принципе, если всё сделано правильно то и в режиме приёмопередатчика будет работать без сбоев. тут скорее всего да, надо пробовать. спасибо за помощь мяу! |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |