|
Первые шаги с AVR, Есть идея и желание, но нет опыта |
|
|
|
 |
Ответов
|
Jul 6 2007, 13:57
|
Профессионал
    
Группа: Свой
Сообщений: 1 235
Регистрация: 14-05-05
Из: Санкт-Петербург
Пользователь №: 5 008

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

кекс
     
Группа: Свой
Сообщений: 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. Минимальные затраты процессорного времени на обслуживание протокола связи.
|
|
|
|
|
Jul 18 2007, 22:07
|

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

|
Цитата(IgorKossak @ Jul 18 2007, 20:43)  Применив 150 линий chip select.  Цитата Если постараться , может хватить 8. Ключевое слово "постараться" ;> Вот вот.. И вся "гибкость" масштабирования летит в тар-тарары. Может GM что-то другое имел в виду.. С интересом жду что он скажет.
|
|
|
|
|
Jul 19 2007, 21:22
|

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

|
Цитата(defunct @ Jul 18 2007, 22:07)  Может GM что-то другое имел в виду.. С интересом жду что он скажет. Ого, сколько понаписали, сегодня целый день в разъездах был, не было возможности ответить. Well to the question. Для начала, например, можно соединить SPI выход первого слейва со входом второго, а его выход с входом третьего, ну и так далее...Очень просто, как говорит мой босс, но проблемо(:-).
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Jul 20 2007, 09:45
|

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

|
Цитата(defunct @ Jul 19 2007, 21:20)  Как всегда очень оригинально ;> но действительно проблемно..  Клок как передавать? CS? И проводов не три а хм.. 150 + 1 (это если клок "расшарить"). Ну, не очень это и оригинально, всё до меня уже сделали и все пользуются, в частности, вы, только не задумываетесь об этом. Грубо говоря, у многих коллег шоры на глазах, находятся в плену, так сказать, имбеддерских предрассудков(:-)... Клок надо передавать всем одновременно, т.е. параллельное подключение. А CS вообще не нужен по большому счёту. И, если только передавать, то нужно всего два провода. Что касается "проблемно" - сможете подключить 150 иис устройств к одной шине? Получите ба-а-а-льшую проблему...
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Jul 20 2007, 11:54
|

кекс
     
Группа: Свой
Сообщений: 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 устройства к вашим услугам. Проблем с обменом - никаких. Арбитраж выполняется аппаратно.
|
|
|
|
|
Jul 22 2007, 21:41
|

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 адрес предназначен для широковещания.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Jul 22 2007, 21:58
|

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

|
Цитата(=GM= @ Jul 23 2007, 00:41)  Не смешите меня, лишний провод это накладно? Не хотите кольцо, сделайте параллельное подсоединение или смешанное Вы что не понимаете, SPI слейв генерит ответ всегда если нет CS. Какое параллельно? Для случая кольца там не один лишний провод, а 150. Я не хочу делать ни кольцо, ни параллельное, ни смешанное соединение по SPI для 150 устройств. Потому что для такого числа устройств (и даже для меньшего пусть будет пара десятков с возможностью добавления еще пары десятков) я выберу шину. А вот вы, сами можете делать то, что предлагаете - по SPI. Цитата Если точнее, то для 127, т.к. 0 адрес предназначен для широковещания. Ок 127.
|
|
|
|
|
Jul 22 2007, 22:24
|

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 Ну-ну, дерзайте.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
Сообщений в этой теме
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             defunct Цитата(=GM= @ Jul 23 2007, 01:24) Во-перв... Jul 23 2007, 07:29              =GM= Цитата(defunct @ Jul 23 2007, 06:29) Торм... Jul 23 2007, 09:21               defunct Цитата(=GM= @ Jul 23 2007, 12:21) Объясни... Jul 23 2007, 10:13                =GM= Цитата(defunct @ Jul 23 2007, 09:13) Вклю... Jul 23 2007, 11:56                 defunct Цитата(=GM= @ Jul 23 2007, 14:56) Расскаж... Jul 23 2007, 12:25                  =GM= Цитата(defunct @ Jul 23 2007, 11:25) А те... Jul 23 2007, 12:47                   µµC Цитата(=GM= @ Jul 23 2007, 16:47) Ничего ... Jul 23 2007, 13:19                    SasaVitebsk Цитата(µµC @ Jul 23 2007, 16:19) То, что ... Jul 23 2007, 14:18                     µµC Цитата(SasaVitebsk @ Jul 23 2007, 18:18) ... Jul 23 2007, 15:47                    =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
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|