Yriom
|
|
1 | |
I2C Master/Slave и микроконтроллеры20.05.2012, 16:29. Показов 10807. Ответов 22
Метки нет (Все метки)
Возможна ли следующая реализация системы:
Микропроцессор задает шину y2s, к шине подключаются микроконтроллеры, которые для МП являются Slave-устройствами. Микроконтроллер далее задает еще одну шину y2s, к которой подключены ЦАП и АЦП, работающие на этой шине. Относительно ЦАП и АЦП микроконтроллер должен быть Master-устройством. Т.е. цепочка такая. МП->микроконтроллер (на шине, исходящей от процессора)->Остальные устройства (на шине, исходящей от микроконтроллера). Еще раз повторюсь, что микроконтроллер должен являться слэйвом для процессора (а желательно, иногда и мастером в некоторых случаях), но быть мастером для остальных устройств системы, подключенных к шине, идущей от него. Общий вопрос: Способны ли микроконтроллеры к подобным манипуляциям, если да, то ка.кие (как можно меньшей сложности и количества выводов)? Работоспособны ли микроконтроллеры серии ATtiny25/V, ATtiny45/V, ATtiny85/V в данных условиях? Ответы желательны с пояснениями, т.к. я навичек. Заранее спасибо за ответы. |
20.05.2012, 16:29 | |
Ответы с готовыми решениями:
22
AVR I2C Slave attiny2313 i2c slave Неадкватное поведение I2C Slave Реализация Master/Slave SPI |
0 / 0 / 0
Регистрация: 01.04.2011
Сообщений: 177
|
|
20.05.2012, 16:45 | 2 |
Смотря для каких задач. Трансляцию шины (нахуа?) на тиньках можно еще извратиться (еще раз нахуа?????). А вот что либо более умное. ну там промежуточная обработка данных и т.д. - тут уже ченить типа меги треба. Кста из того с чем работал из AVR имело лишь 1 аппаратный I2C модуль. второй софтовым делать.
0
|
Yriom
|
|
20.05.2012, 16:57 | 3 |
Не важно, будут ли они софтовыми или аппаратными. Требуется примерно так, как описал (две шины). Промежуточная обработка не исключена. Конкретнее, пожалуйста. Вопрос звучал о возможности реализации, а не о том, насколько сложно это будет.
|
0 / 0 / 0
Регистрация: 23.01.2010
Сообщений: 1,142
|
|
20.05.2012, 16:58 | 4 |
Сообщение от Yriom
Сообщение от Yriom
А остальные - смотря что именно делать, на какой скорости и поддерживает ли МП clock stritshing, хватит ли памяти у данных тинек и ещё много-много всего. Среди AVR есть и с более чем одним аппаратным I2C - ATxmega.
0
|
Yriom
|
|
20.05.2012, 17:14 | 5 |
Программируемых ног 6 у этой серии. Тогда вопрос, сколько потребуется памяти?
Я не программист, а занимаюсь железом (с недавнего времени). |
Yriom
|
|
20.05.2012, 17:23 | 6 |
Прилагаю примерное схематичное представление того, о чем я говорил.
|
0 / 0 / 0
Регистрация: 23.01.2010
Сообщений: 1,142
|
|
20.05.2012, 17:26 | 7 |
Сообщение от Yriom
0
|
Yriom
|
|
20.05.2012, 17:30 | 8 |
Про объем памяти я интересовался с той точки зрения, сколько памяти потребуется для программной реализации интерфейса.
Никаких 3D и прочего. Лишь хранение информации с нескольких АЦП и отдача их по первому требованию центральному процессору. |
1 / 1 / 0
Регистрация: 01.02.2010
Сообщений: 2,010
|
|
20.05.2012, 17:31 | 9 |
Если контроллеры не должны на промежуточные вычисления тратить мощность (просто опросить по 1-й линии, ответить по 2-й), да скорость не большая, то и аппаратной программной реализации хватит, даже, например на тиньке 13-й.
Я вот тут http://asis-kbr.ru/forum/viewtopys.php?f=9&t=117 тоже аппаратно программно IIC замутил, на 26-й тиньке - элементарно. Правда там только мастер, но я думаю что и слейв не проблема.
0
|
Yriom
|
|
20.05.2012, 17:42 | 10 |
ShodS, спасибо за полезный ответ.
|
0 / 0 / 0
Регистрация: 23.01.2010
Сообщений: 1,142
|
|
20.05.2012, 17:44 | 11 |
Слейв намного проблематичней мастера - нужно старт ловить. Для этого я б использовал USI, а вот мастеру можно и ногами помахать.
Проблему вижу в другом (выделено мной):
Сообщение от Yriom
То есть, если уже идёт опрос АЦПоЦАПов и пришла "весточка" от мастера.... ЗЫ. Вероятность нахождения нужного кода стремиться к нулю. ЗЗЫ. Я бы, в 25 тиньку смог бы запихнуть (на асм). Но я таким не занимаюсь.
0
|
1 / 1 / 0
Регистрация: 01.02.2010
Сообщений: 2,010
|
|
20.05.2012, 17:59 | 12 |
Сообщение от THI BIOST
Если в требуемых АЦП, реализован такой механизм, то все ОК. В таком случае, работу со слэйв устройствами можно организовать в основном цикле, а работу с главным контроллером, можно повесить на внешние прерывания. При запросе от главного, работа со слэйвами просто притормозится.
0
|
0 / 0 / 0
Регистрация: 23.01.2010
Сообщений: 1,142
|
|
20.05.2012, 18:07 | 13 |
Сообщение от ShodS
0
|
1 / 1 / 0
Регистрация: 01.02.2010
Сообщений: 2,010
|
|
20.05.2012, 18:11 | 14 |
Сообщение от THI BIOST
0
|
Yriom
|
|
20.05.2012, 18:16 | 15 |
Угу. Т.к. цапы и ацп сидят на шине, то тактируются ею же.
|
0 / 0 / 0
Регистрация: 23.01.2010
Сообщений: 1,142
|
|
20.05.2012, 18:20 | 16 |
Сообщение от Yriom
0
|
1 / 1 / 0
Регистрация: 01.02.2010
Сообщений: 2,010
|
|
20.05.2012, 18:21 | 17 |
Ну еще как вариант, на время чтения данных со слэйв, можно прижимать шину STROBE в сторону главного процессора, чтобы он в это время не отвлекал.....
0
|
0 / 0 / 0
Регистрация: 23.01.2010
Сообщений: 1,142
|
|
20.05.2012, 18:23 | 18 |
Сообщение от ShodS
0
|
1 / 1 / 0
Регистрация: 01.02.2010
Сообщений: 2,010
|
|
20.05.2012, 18:32 | 19 |
Сообщение от THI BIOST
0
|
0 / 0 / 0
Регистрация: 23.01.2010
Сообщений: 1,142
|
|
20.05.2012, 18:36 | 20 |
Сообщение от ShodS
0
|
20.05.2012, 18:36 | |
20.05.2012, 18:36 | |
Помогаю со студенческими работами здесь
20
ATttiny45 I2C(TWI) slave CodeVisionAVR Не корректно работает передача Slave-to-Master по SPI Аппаратный I2C master Не работает I2C (TWI) Master на Atmega644p Master/Slave I2C для ARM на LUFA I2C slave stm32 и I2C Slave Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |