реклама на сайте
подробности

 
 
> Первые шаги с AVR, Есть идея и желание, но нет опыта
namelos
сообщение Jul 3 2007, 12:55
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 77
Регистрация: 4-08-06
Пользователь №: 19 324



Всем доброе время суток. Есть идея разработать девайс на базе контроллера AVR, который снимает данные 8 (и более) температурных датчиков. Программировать умею, но с контроллерами еще дело не имел. С чего начать? Стоит ли покупать Starter-Kit AVR STK 500 для лучшего понятия? Что надо покупать для начала?
С выбором контроллера еще не опредилился. Может что подскажете. 3aранее спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
GDI
сообщение Jul 6 2007, 13:57
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008



Цитата
RS232, I2C, SPI

Вот по скорости они так и располагаются, а по надежности, имхо зависит от условий, помех, разводки, мне кажется что тут они примерно равны, только не RS232, а UART с уровнями сигналов 5в.
UART в принципе не рассчитан на много точечное соединение
I2C - топология типа шина, с передачей адреса устройства
SPI - все включаются параллельно на шину, но выбор устройства производится сигналом CS и потом обмен идет как будто никого больше на шине нет.
Последний мне кажется наиболее прост в реализации, особенно с использованием аппаратных SPI.


--------------------
http://www.embedders.org Блоги разработчиков электроники.
Go to the top of the page
 
+Quote Post
defunct
сообщение Jul 18 2007, 11:44
Сообщение #3


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(GDI @ Jul 6 2007, 16:57) *
RS232, I2C, SPI
Вот по скорости они так и располагаются,


В контексте AVR насчет "по скорости они так и располагаются" требует поправки:

SPI в силу своей простоты и синхронности - самый скоростной (до 8Mbod/s на 16Mhz)
UART - ограничен цифрой 16, в скоростном режиме цифрой 8. (тобиш максимум можно выжать 2Mbod/s)
I2C - не более 400Kbod/s.

Но в силу того, что I2C аппаратно поддерживает адресацию устройств, и использует шину всего из 2-х проводков, эффективность системы построенная на этом интерфейсе будет наиболее высокая, по следующим критериям:
1. Гибкость масштабирования системы (легко можно добавить новый модуль(и)).
2. Простота разводки интерфейса на плате (всего два провода)
3. Минимальные затраты процессорного времени на обслуживание протокола связи.
Go to the top of the page
 
+Quote Post
=GM=
сообщение Jul 18 2007, 15:56
Сообщение #4


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(defunct @ Jul 18 2007, 10:44) *
1. Гибкость масштабирования системы (легко можно добавить новый модуль(и)).
2. Простота разводки интерфейса на плате (всего два провода)

Насчёт гибкости. И к SPI точно также можно подключить хоть 150 устройств. Да и 3 провода вместо двух не столь принципиально.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
defunct
сообщение Jul 18 2007, 16:03
Сообщение #5


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(=GM= @ Jul 18 2007, 18:56) *
Насчёт гибкости. И к SPI точно также можно подключить хоть 150 устройств.

Да? И можно полюбопытствовать как?
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Jul 18 2007, 17:43
Сообщение #6


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(defunct @ Jul 18 2007, 19:03) *
Да? И можно полюбопытствовать как?

Применив 150 линий chip select. cool.gif
Go to the top of the page
 
+Quote Post
defunct
сообщение Jul 18 2007, 22:07
Сообщение #7


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(IgorKossak @ Jul 18 2007, 20:43) *
Применив 150 линий chip select. cool.gif

Цитата
Если постараться , может хватить 8.

Ключевое слово "постараться" ;>
Вот вот.. И вся "гибкость" масштабирования летит в тар-тарары.

Может GM что-то другое имел в виду.. С интересом жду что он скажет.
Go to the top of the page
 
+Quote Post
=GM=
сообщение Jul 19 2007, 21:22
Сообщение #8


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(defunct @ Jul 18 2007, 22:07) *
Может GM что-то другое имел в виду.. С интересом жду что он скажет.

Ого, сколько понаписали, сегодня целый день в разъездах был, не было возможности ответить.

Well to the question. Для начала, например, можно соединить SPI выход первого слейва со входом второго, а его выход с входом третьего, ну и так далее...Очень просто, как говорит мой босс, но проблемо(:-).


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
defunct
сообщение Jul 19 2007, 22:20
Сообщение #9


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(=GM= @ Jul 20 2007, 00:22) *
Для начала, например, можно соединить SPI выход первого слейва со входом второго, а его выход с входом третьего, ну и так далее...Очень просто, как говорит мой босс, но проблемо(:-).

Как всегда очень оригинально ;> но действительно проблемно.. smile.gif
Клок как передавать? CS?
И проводов не три а хм.. 150 + 1 (это если клок "расшарить").
Go to the top of the page
 
+Quote Post
=GM=
сообщение Jul 20 2007, 09:45
Сообщение #10


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(defunct @ Jul 19 2007, 21:20) *
Как всегда очень оригинально ;> но действительно проблемно.. smile.gif Клок как передавать? CS? И проводов не три а хм.. 150 + 1 (это если клок "расшарить").

Ну, не очень это и оригинально, всё до меня уже сделали и все пользуются, в частности, вы, только не задумываетесь об этом. Грубо говоря, у многих коллег шоры на глазах, находятся в плену, так сказать, имбеддерских предрассудков(:-)...

Клок надо передавать всем одновременно, т.е. параллельное подключение. А CS вообще не нужен по большому счёту.

И, если только передавать, то нужно всего два провода.

Что касается "проблемно" - сможете подключить 150 иис устройств к одной шине? Получите ба-а-а-льшую проблему...


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
defunct
сообщение Jul 20 2007, 11:54
Сообщение #11


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(=GM= @ Jul 20 2007, 12:45) *
И, если только передавать, то нужно всего два провода.

Давайте не будем урезать функциональность, ок?
Вы ж решили оспорить простоту масштабирования I2C, а значит ваше решение должно быть не хуже по функциональности.

Для полноценного обмена вашим методом надо построить кольцо.
1->2->3->4 ..... ->N -> 1
Это накладно как с т.з. железа так и т.з. протокола.

Цитата
Что касается "проблемно" - сможете подключить 150 иис устройств к одной шине?

К I2C 150-нет, а 128 запросто, она для этого и создана.

Цитата
Получите ба-а-а-льшую проблему...

Если добавить еще одну шину и мост - 254 устройства к вашим услугам.
Проблем с обменом - никаких. Арбитраж выполняется аппаратно.
Go to the top of the page
 
+Quote Post
=GM=
сообщение Jul 22 2007, 21:41
Сообщение #12


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(defunct @ Jul 20 2007, 11:54) *
Для полноценного обмена вашим методом надо построить кольцо. 1->2->3->4 ..... ->N -> 1 Это накладно как с т.з. железа так и т.з. протокола

Не смешите меня, лишний провод это накладно? Не хотите кольцо, сделайте параллельное подсоединение или смешанное.

Цитата(defunct @ Jul 20 2007, 11:54) *
К I2C 150-нет, а 128 запросто, она для этого и создана.

Если точнее, то для 127, т.к. 0 адрес предназначен для широковещания.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
defunct
сообщение Jul 22 2007, 21:58
Сообщение #13


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(=GM= @ Jul 23 2007, 00:41) *
Не смешите меня, лишний провод это накладно? Не хотите кольцо, сделайте параллельное подсоединение или смешанное

Вы что не понимаете, SPI слейв генерит ответ всегда если нет CS. Какое параллельно?
Для случая кольца там не один лишний провод, а 150.

Я не хочу делать ни кольцо, ни параллельное, ни смешанное соединение по SPI для 150 устройств.
Потому что для такого числа устройств (и даже для меньшего пусть будет пара десятков с возможностью добавления еще пары десятков) я выберу шину.

А вот вы, сами можете делать то, что предлагаете - по SPI.
Цитата
Если точнее, то для 127, т.к. 0 адрес предназначен для широковещания.

Ок 127.
Go to the top of the page
 
+Quote Post
=GM=
сообщение Jul 22 2007, 22:24
Сообщение #14


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(defunct @ Jul 22 2007, 21:58) *
Вы что не понимаете, SPI слейв генерит ответ всегда если нет CS.

Во-первых, там аббревиатура SS (slave select), а не CS. Во-вторых, если SS=1, то слейв отключен от шины.

И главное, когда SS=0 (подключен к земле), то выход слейва определяется программистом (см. таблицу 69 на стр.165 документа DOC2464O), поэтому, естественно, если все выходы слейвов объединены, то их надо установить как инпут, чтобы не мешали друг другу. Учите матчасть.
Цитата(defunct @ Jul 22 2007, 21:58) *
Какое параллельно? Для случая кольца там не один лишний провод, а 150

Ну-ну, дерзайте.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
defunct
сообщение Jul 23 2007, 07:29
Сообщение #15


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(=GM= @ Jul 23 2007, 01:24) *
Во-первых, там аббревиатура SS (slave select), а не CS. Во-вторых, если SS=1, то слейв отключен от шины.

SS/CS сути не меняет. Я так и сказал - если не CS. что значит CS=0.
В параллельном включении вы предлагаете использовать общий CS.

Цитата
главное, когда SS=0 (подключен к земле), то выход слейва определяется программистом (см. таблицу 69 на стр.165 документа DOC2464O), поэтому, естественно, если все выходы слейвов объединены

ну-ну. особенно если слейв это какой-нибудь штатный eeprom, скажем AT25. Или MCU с неконтроллируемым SO выходом.

Цитата
Цитата
Для случая кольца там не один лишний провод, а 150

Ну-ну, дерзайте.

Тормозите что ли? Ну нельзя в разрыв
-> miso[chip0]mosi -> miso [chip1] mosi -> miso [chip2] mosi -> .... -> miso[chip150] ->mosi ->
включить тремя проводами, как не крути.
Зы, а ведь и включить то так нельзя lol.gif
На сигналы посмотрите smile.gif
Ну да ладно.

Я еще раз повторюсь - я бы не стал выбирать SPI для 150 устройств, я бы выбрал шину.
Так что "дерзать" придется вам.


Цитата
Допустим нам нужно обеспечить межпроцессорное взаимодействие между
AVR и каким-нить ARM. Как известно, накладные расходы на прерывания у ARM не очень
хороши

Сравните количество прерываний в случае с I2C и в случае с SPI для системы допустим из 20 устройств, взаимодействующих между собой (мульти-мастер режим).
- I2C будет отсеивать все лишние обращения автоматически, и будет разрешать конфликты шины (когда 2 мастера одновременно что-то захотят передать.
- SPI же будет генерить прерывания на "любой байт" предназначенный этому устройству или не предназначенный, плюс придется еще вручную обслуживать коллизии на линии и организовывать переповторы. Допустим имеем кольцевое включение о котором тут заикнулся GM. Тогда чтобы передать сообщение от 1-го процессора 10-му, это сообщение должно быть принято и ретранслированной процессорами 2, 3, ... 9, которые находятся между 1-м и 10-м.

В итоге в системе с большим числом элементов и где это число элементов может меняться как в большую так и в меньшую сторону в процессе работы (называется масштабирование) - выгоднее использовать I2C.

А для соединения точка-точка и систем с фиксированным небольшим числом элементов (немастабируемых систем) выгоднее применять SPI.

485 это конечно гут - та же шина, но со своими плюcами/минусами:
гибко +
дорого -
Очень сомневаюсь, что в рамках одного кропуса для межпроцессорного обмена кто-то пользует 485.
Go to the top of the page
 
+Quote Post
=GM=
сообщение Jul 23 2007, 09:21
Сообщение #16


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(defunct @ Jul 23 2007, 06:29) *
Тормозите что ли? Ну нельзя в разрыв -> miso[chip0]mosi -> miso [chip1] mosi -> miso [chip2] mosi -> .... -> miso[chip150] ->mosi -> включить тремя проводами, как не крути. Зы, а ведь и включить то так нельзя lol.gif На сигналы посмотрите smile.gif

Ну, defunct, вы меня озадачили. По-моему, у вас каша в голове(:-)

Объясните ВНЯТНО, ЧТО нельзя включить тремя проводами и ПОЧЕМУ? На КАКИЕ сигналы надо посмотреть? Что вы в них углядели такого особенного, недоступного простым смертным?


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
defunct
сообщение Jul 23 2007, 10:13
Сообщение #17


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(=GM= @ Jul 23 2007, 12:21) *
Объясните ВНЯТНО, ЧТО нельзя включить тремя проводами и ПОЧЕМУ? На КАКИЕ сигналы надо посмотреть? Что вы в них углядели такого особенного, недоступного простым смертным?


я насчет этого:
Цитата
например, можно соединить SPI выход первого слейва со входом второго, а его выход с входом третьего, ну и так далее...Очень просто, как говорит мой босс, но проблемо(:-).


Включаем ->???[Проц0]MOSI -> ??? [Проц1] MOSI -> ???[Проц2] MOSI -> .... -> ???[ПроцN] MOSI ->
каждая "->" - это провод. (их количество не считая клока, будет равно количеству процессоров)
каждый "???" - это вопрос, к какому сигналу подключать? объясните плз.
Поидее надо бы к SI, но ведь вот незадачка SI с MO совмещен, а ведь надо как-то со сл. устройством связываться...
Получается идея с последовательным соединением накрылась хоть сколько проводов не бери... Или я что-то не понял?
Go to the top of the page
 
+Quote Post
=GM=
сообщение Jul 23 2007, 11:56
Сообщение #18


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(defunct @ Jul 23 2007, 09:13) *
Включаем ->???[Проц0]MOSI -> ??? [Проц1] MOSI -> ???[Проц2] MOSI -> .... -> ???[ПроцN] MOSI ->
каждая "->" - это провод. (их количество не считая клока, будет равно количеству процессоров)
каждый "???" - это вопрос, к какому сигналу подключать? Получается идея с последовательным соединением накрылась хоть сколько проводов не бери... Или я что-то не понял?

Не поняли. Не обращайте внимания на название, смотрите на суть процесса. Представьте себе 8-битный сдвиговый регистр, выход этого регистра подключаете к входу второго сдвигового регистра, а его выход в свою очередь - ко входу третьего. Выход третьего подключаете к входу первого, получится кольцо. Клоки подключаете параллельно ко всем трём регистрам. Вот вы получили примитивную модель того, что находится внутри периферии SPI каждого МК. За сим, с богом, вперед!

Цитата(Сергей Борщ @ Jul 23 2007, 08:56) *
Мда... И как они будут разбираться какое прерывание "первое", какое "второе" и главное - когда сдвигаются данные а когда ответы слейвов. Вот уж точно от безысходности такое городить. "Альтернатива - утки!". Уж если соединяем много устройств, то мое решение было бы таким - если есть устройства которые умеют только I2C и все они находятся в пределах одной платы - I2C, если таких устройств нет или они разнесены - 485.

Ну поставьте в прерывании счётчик, когда счётчик=1, принимаете данные, обнуляете счетчик и выставляете ответ, какая тут безысходность? Какие утки:-)?

Не нравится так, дёргайте общей для всех слейвов ногой SS, вот вам и начало "первого" прерывания будет.

Вообще вы меня удивили. Этак можно договориться до того, а как usart понимает, что передаётся 5-й бит, а не 6-й?

Расскажу про пример I2C-подобной реализации, который лежит у меня на столе. Работает на скорости 5 мбод программно, на передачу посылается 37 бит, на приём передается 5 бит, затем принимается 16 бит. За 50 мкс я считаю преобразование Фурье на 1024 точки, в то же время на обмен(!) с устройством трачу 25 мкс. А мог бы гонять данные на скорости 25 мбод по аппаратной SPI с затратами 1 мкс. Сам виноват, не проконтролировал 4 года назад, теперь расхлёбываю.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
defunct
сообщение Jul 23 2007, 12:25
Сообщение #19


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(=GM= @ Jul 23 2007, 14:56) *
Расскажу про пример I2C-подобной реализации, который лежит у меня на столе. Работает на скорости 5 мбод программно, на передачу посылается 37 бит, на приём передается 5 бит, затем принимается 16 бит. За 50 мкс я считаю преобразование Фурье на 1024 точки, в то же время на обмен(!) с устройством трачу 25 мкс.

2 устройства соединено? smile.gif
и причем явно не AVR
Цитата
Не поняли. Не обращайте внимания на название, смотрите на суть процесса. Представьте себе 8-битный сдвиговый регистр, выход этого регистра подключаете к входу второго сдвигового регистра, а его выход в свою очередь - ко входу третьего. Выход третьего подключаете к входу первого, получится кольцо. Клоки подключаете параллельно ко всем трём регистрам. Вот вы получили примитивную модель того, что находится внутри периферии SPI каждого МК.

А теперь понял. Т.е. вместо использования встроенного аппаратного SPI вы предлагаете замутить программный либо внешний на доп. сдвиговых регистрах. И соединить все 150 узлов 150-ю проводами. Тем самым вы планируете получить гибкость масштабирования и простоту реализации lol.gif
Наши пути тут расходятся. Я не считаю ваш способ хоть сколько-нибудь гибким.
Go to the top of the page
 
+Quote Post
=GM=
сообщение Jul 23 2007, 12:47
Сообщение #20


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(defunct @ Jul 23 2007, 11:25) *
А теперь понял. Т.е. вместо использования встроенного аппаратного SPI вы предлагаете замутить программный либо внешний на доп. сдвиговых регистрах. И соединить все 150 узлов 150-ю проводами. Тем самым вы планируете получить гибкость масштабирования и простоту реализации lol.gif
Наши пути тут расходятся. Я не считаю ваш способ хоть сколько-нибудь гибким

Ничего вы не поняли (или вы ваньку валяете(:-)?). Пытался вам на пальцах рассказать, что находится внутри модуля спи и как соединить несколько модулей спи, да видимо, вам не надо(:-).


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
µµC
сообщение Jul 23 2007, 13:19
Сообщение #21


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 2-05-06
Пользователь №: 16 710



Цитата(=GM= @ Jul 23 2007, 16:47) *
Ничего вы не поняли (или вы ваньку валяете(:-)?). Пытался вам на пальцах рассказать, что находится внутри модуля спи и как соединить несколько модулей спи, да видимо, вам не надо(:-).


То, что вы предложили (кольцо из многих устройств с SPI интерфейсом) уже не будет SPI. И именно по причине внутреннего устройства SPI (16-и битовый закольцованный регистр поделенный между мастером и слейвом). Расскажите-ка лучше как мастер uC в вашем 1200-и битовом кольце (150 устройств), используя аппаратный SPI, обратится к стандартной SPI флешке стоящей, скажем, 75-ой в этом кольце.
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Jul 23 2007, 14:18
Сообщение #22


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(µµC @ Jul 23 2007, 16:19) *
То, что вы предложили (кольцо из многих устройств с SPI интерфейсом) уже не будет SPI. И именно по причине внутреннего устройства SPI (16-и битовый закольцованный регистр поделенный между мастером и слейвом). Расскажите-ка лучше как мастер uC в вашем 1200-и битовом кольце (150 устройств), используя аппаратный SPI, обратится к стандартной SPI флешке стоящей, скажем, 75-ой в этом кольце.


Я уже давал аналогичный ответ. Расскажите как вы подключите 5-ую at24c512 к Вашей I2C шине. Речь идёт о подключении нескольких СВОИХ устройств на сколько я понимаю. Насчёт что это не будет SPI это спорно. Например есть 8-ми битный SPI и 16-ти битный. В самом SPI возможно менять фазы, полярность и прочее - и это всё равно SPI.

Никто не спорит. I2C хороший, проверенный временем, простой, очень гибкий, хорошо расширяемый интерфейс. С точки зрения подключения дополнительных устройств, возможно более гибкий. В плане стандарта. Но всётаки нельзя рассматривать оторвано от жизни. О чём мы говорим? Что допустим есть выходной разъём и на него выведена шина и мы ещё точно не знаем что там будет подключено но это "что-то" будет стандартным? Скажем в таком случае с I2C будет проще. Меньше контактов, отсутствие доп. корпусов. Но медленней. Можно запросто сделать также с SPI. Но проводов будет больше, возможно использование внешних элементов, зато будет выше скорость. Как правило, плата и программа изначально спроектирована и будущие возможности должны быть заложены изначально. С этой точки зрения оба протокола равноценны.

То есть я бы ответил так. Возможно всё! А вопрос о ЦЕЛЕСООБРАЗНОСТИ необходимо решать в каждом конкретном случае.

Приведу пример применения 50 микросхем EEPROM скажем. И вот вам очевидный для вас ответ только I2C становится неочевидным. Применение I2C будет аппаратно выглядеть хуже чем применение такого же числа SPI памяти. Кроме того дешифрацию данных устройств можно осуществлять в рамках того же SPI. Таким образом для разъёма достаточно 3 провода SPI + две выборки. Плюс максимум 1 доп. корпус на 8 микрух. Для I2C навеса будет не меньше, а скорость явно меньше.
Go to the top of the page
 
+Quote Post
µµC
сообщение Jul 23 2007, 15:47
Сообщение #23


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 2-05-06
Пользователь №: 16 710



Цитата(SasaVitebsk @ Jul 23 2007, 18:18) *
Я уже давал аналогичный ответ. Расскажите как вы подключите 5-ую at24c512 к Вашей I2C шине.


К моей I2Cшине? Дико извиняюсь, но нигде не упоминал I2C, даже и в мыслях не держал. Так что, имхо, почти весь ваш пост лишь по ошибке адресован ко мне.

Цитата(SasaVitebsk @ Jul 23 2007, 18:18) *
Речь идёт о подключении нескольких СВОИХ устройств на сколько я понимаю.


Дык, если исключительно СВОИ устройства, со строго определенным количеством и порядком в цепи, то такую цепочку можно заставить работать. Душераздирающее, конечно, зрелище: масштабы оверхеда для каждой транзакции при 150 устройствах поистине впечатляют.

Цитата(SasaVitebsk @ Jul 23 2007, 18:18) *
Насчёт что это не будет SPI это спорно. Например есть 8-ми битный SPI и 16-ти битный. В самом SPI возможно менять фазы, полярность и прочее - и это всё равно SPI.


Ох, не уверен, что все упирается в перевод или толкование слов "Serial Peripheral Interface". ИМХО, было бы разумно иметь возможность, чисто формально, проверить себя. Например:
Берем _любое_ стандартное устройство, заявленное разработчиками, как имеющее SPI. Подключаем в кольцо к другим 149 устройствам. Все 150 устройств работают правильно? В случае предложенного кольца ответ однозначный - нет. Ну значит это был не стандартный SPI, а что-то другое .

Сообщение отредактировал µµC - Jul 23 2007, 15:50
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- namelos   Первые шаги с AVR   Jul 3 2007, 12:55
- - Tcom   Всё зависит от того, насколько интенсивно хочешь з...   Jul 3 2007, 13:07
|- - muravei   Я бы посоветовал обратиь внимание на h__p://algrom...   Jul 3 2007, 13:15
- - namelos   Спасибо. Посмотрел AVR ISP. Я в принципе могу и че...   Jul 3 2007, 13:37
|- - Tcom   Цитата(namelos @ Jul 3 2007, 16:37) JTAGI...   Jul 3 2007, 13:43
|- - defunct   Цитата(namelos @ Jul 3 2007, 16:37) Я в п...   Jul 3 2007, 15:38
- - GDI   Порекомендую в который раз КИТ AVR Butterfly, деше...   Jul 3 2007, 14:51
- - mdmitry   Посмотрите акцию Atmel на www.efo.ru. Там два вар...   Jul 3 2007, 18:36
|- - VAHOO   Цитата(mdmitry @ Jul 3 2007, 21:36) Посмо...   Jul 5 2007, 05:40
- - ZoonMan   Я бы вам посоветовал Altera Byte Blaster. Это недо...   Jul 4 2007, 10:28
|- - pokos   Ну, я начинал с "пяти проводочков" и avr...   Jul 4 2007, 11:01
|- - олесь   Цитата(pokos @ Jul 4 2007, 14:01) Ну, я н...   Jul 18 2007, 18:23
- - day177   согласен с pokos - CodeVision сильно жизнь облегча...   Jul 4 2007, 12:45
- - namelos   Цитата(day177 @ Jul 4 2007, 16:45) А вот ...   Jul 4 2007, 14:13
- - vesago   По 1 варе на одном проводе можно посадить сенсоров...   Jul 4 2007, 14:17
- - namelos   Цитата(vesago @ Jul 4 2007, 18:17) По 1 в...   Jul 4 2007, 14:27
|- - Сергей Борщ   Цитата(namelos @ Jul 4 2007, 17:27) sorry...   Jul 4 2007, 15:41
|- - gm1957   Цитата(Сергей Борщ @ Jul 5 2007, 00:41) К...   Jul 10 2007, 03:47
- - AndryG   Ну добавлю и я сюда свои мысли. Если стоит одна з...   Jul 4 2007, 16:29
- - namelos   Сергей Борщ , спасибо за подробное разъяснение. Де...   Jul 4 2007, 21:12
|- - Сергей Борщ   Цитата(namelos @ Jul 5 2007, 00:12) Девай...   Jul 5 2007, 00:16
- - Igor26   Цитатаоб отдельном контроллере у каждого датчика ....   Jul 5 2007, 05:13
- - Igor26   http://www.efo.ru/doc/Atmel/Atmel.pl?212 Объявлени...   Jul 5 2007, 05:51
- - GDI   DS18B20 дает точность 0,5 градуса безо всякой кали...   Jul 5 2007, 07:42
- - namelos   Цитата(Сергей Борщ @ Jul 5 2007, 04:16) Н...   Jul 5 2007, 08:53
- - AndryG   Цитата0.7с, при 12 сенсорах это почти 8 секунд Есл...   Jul 5 2007, 10:10
- - GDI   Время преобразования зависит от разрядности преобр...   Jul 5 2007, 10:38
- - namelos   GDI , еще спасибо за информацию. Если не секрет, н...   Jul 5 2007, 15:15
- - GDI   Я делал на мега16, 8 каналов. Ну а контроллер для ...   Jul 5 2007, 15:33
|- - Igor26   Цитата(GDI @ Jul 5 2007, 19:33) Я делал н...   Jul 5 2007, 17:19
- - GDI   Igor26 вы про что? про мега16 и 8 каналов? Вот моя...   Jul 6 2007, 07:18
- - Igor26   Извиняюсь. Наверное пропустил выделенные цитаты. ...   Jul 6 2007, 09:26
- - GDI   Меня то не пугает, просто хотелось оградить заказч...   Jul 6 2007, 10:32
- - Igor26   Теперь ясно.   Jul 6 2007, 12:16
- - namelos   ЦитатаGDI...и связь по SPI на какой то центральный...   Jul 6 2007, 12:27
|- - AndreyKeil   [quote name='namelos' date='Jul 6 2007...   Jul 22 2007, 21:38
|- - IgorKossak   Цитата(GDI @ Jul 6 2007, 16:57) UART в пр...   Jul 8 2007, 21:12
||- - muravei   Цитата(IgorKossak @ Jul 18 2007, 21:43) П...   Jul 18 2007, 18:34
||- - =GM=   Цитата(defunct @ Jul 20 2007, 10:54) Дава...   Jul 20 2007, 16:14
|||- - Сергей Борщ   Цитата(=GM= @ Jul 20 2007, 19:14) Да ну л...   Jul 20 2007, 17:40
||||- - =GM=   Цитата(Сергей Борщ @ Jul 20 2007, 17:40) ...   Jul 20 2007, 21:53
||||- - defunct   Цитата(=GM= @ Jul 21 2007, 00:53) 1) Посл...   Jul 21 2007, 00:09
||||- - Сергей Борщ   Цитата(=GM= @ Jul 21 2007, 00:53) 1) Посл...   Jul 23 2007, 09:56
|||- - defunct   Цитата(=GM= @ Jul 20 2007, 19:14) Не то, ...   Jul 20 2007, 18:50
||- - =GM=   Цитата(µµC @ Jul 23 2007, 12:19) То, что ...   Jul 24 2007, 13:43
||- - defunct   Цитата(=GM= @ Jul 24 2007, 16:43) А тепер...   Jul 24 2007, 20:05
||- - =GM=   Цитата(defunct @ Jul 24 2007, 20:05) Вооб...   Jul 24 2007, 20:10
|- - singlskv   2 defunct А я вот, как раз бы поспорил с вот этим ...   Jul 22 2007, 23:31
- - namelos   GDI, спасибо и хороших выходных.   Jul 6 2007, 14:45
- - alexander tom   Привет! А возможно ли склонировать чип mega16...   Jul 17 2007, 13:25
- - SpyBot   А если сначало передавать адрес нужного устройства...   Jul 18 2007, 17:57
|- - IgorKossak   Цитата(SpyBot @ Jul 18 2007, 20:57) А есл...   Jul 18 2007, 19:02
|- - WHALE   Цитата(IgorKossak @ Jul 18 2007, 23:02) В...   Jul 18 2007, 19:55
- - SasaVitebsk   В Вашем споре поддержу GM. Причины просты. Если ра...   Jul 21 2007, 00:38
- - SpyBot   А если использовать мультиплексоры/демультиплексор...   Jul 23 2007, 09:13
- - SasaVitebsk   Ребята давайте не вводить в заблуждение друг друга...   Jul 23 2007, 12:37
- - defunct   ЦитатаРебята давайте не вводить в заблуждение друг...   Jul 23 2007, 12:58
- - SpyBot   Не, ну с I2C проще - берем ещё 2 провода и получае...   Jul 24 2007, 13:50
- - =GM=   Цитата(SpyBot @ Jul 24 2007, 12:50) Не, н...   Jul 24 2007, 14:29


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th June 2025 - 18:20
Рейтинг@Mail.ru


Страница сгенерированна за 0.01787 секунд с 7
ELECTRONIX ©2004-2016