roboforum.ru

Технический форум по робототехнике.

UART vs I2C

В разделе рассматриваются вопросы информационного обмена в робототехнике.
Аппаратный уровень, протоколы.

UART vs I2C

Сообщение neiro » 03 фев 2009, 01:24

Народ,
Почему для объединения нескольких серв используется зачастую I2C? Есть у когонить мнения на эту тему?
Я вот хочу использовать обычные rx и tx от uarta. Взять схематику опенсерво, но сервами рулить не по и2с, а через уарт..
Где грабли? поделитесь опытом..
Аватара пользователя
neiro
 
Сообщения: 23
Зарегистрирован: 02 фев 2009, 02:14
Откуда: мск
прог. языки: фортран,кобол,бейсик

Re: UART vs I2C

Сообщение Сергей » 03 фев 2009, 01:36

так, хорошо, давай с начала начнем - ты знаешь вообще что такое UART и I2C, и чем они различаюца?
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Re: UART vs I2C

Сообщение neiro » 03 фев 2009, 01:44

Сергей писал(а):так, хорошо, давай с начала начнем - ты знаешь вообще что такое UART и I2C, и чем они различаюца?

Конеш :) .и там и там два провода и земля. Мне так лично кажется что уарт удобнее как то..

Ну единственный минус это то что будет один мастер и куча подчиненных..Ну эт вроде как раз и надо когда делаешь робота. Т.е. один проц за отвечающий мозги, рулит всеми остальными.
Аватара пользователя
neiro
 
Сообщения: 23
Зарегистрирован: 02 фев 2009, 02:14
Откуда: мск
прог. языки: фортран,кобол,бейсик

Re: UART vs I2C

Сообщение =DeaD= » 03 фев 2009, 08:12

neiro писал(а):и там и там два провода и земля. Мне так лично кажется что уарт удобнее как то..

Идти вот сюда - [[Протоколы взаимодействия модулей]] и там читать много буков! 8)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: UART vs I2C

Сообщение Duhas » 03 фев 2009, 10:51

не, ну для серв мона и уарт использовать, ибо отвечать им на команды мастера не нужно ...
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: UART vs I2C

Сообщение =DeaD= » 03 фев 2009, 10:58

Duhas писал(а):не, ну для серв мона и уарт использовать, ибо отвечать им на команды мастера не нужно ...

Уж если переделывать на UART, тогда надо делать чтобы еще и отвечали, хотя-бы положение вала и сигнал "заклинило" :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: UART vs I2C

Сообщение Duhas » 03 фев 2009, 11:24

а оно нада? можно конечно приделать РС триггер на кучу входов и разруливать им работу серв.. но гемор все это ....
я вообще собираюсь на СПИ вешать свои "сервы"...
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: UART vs I2C

Сообщение neiro » 03 фев 2009, 11:50

=DeaD= писал(а):
Duhas писал(а):не, ну для серв мона и уарт использовать, ибо отвечать им на команды мастера не нужно ...

Уж если переделывать на UART, тогда надо делать чтобы еще и отвечали, хотя-бы положение вала и сигнал "заклинило" :)


Так а в чем проблема?? Я чет не догнал. Уарт это же не односторонний интерфейс :)
про ПС триггер ваще не понял к чему он. Я грю о простейшем уарте с RX/TX.

Мастер шлет команду по линии TX все слэйвы принимают эту команду. И тот кому эта команда адресована отвечает мастеру по линии RX. Вроде так.
Где затыка?? чет я не вижу :) поэтому и спрашиваю.

Spi в принципе не катит для этого. Эт получается для каждого слэйва надо тащить отдельный чип селект. Следовательно на 10 серв вам понадобиться 13 проводов :shock:
Аватара пользователя
neiro
 
Сообщения: 23
Зарегистрирован: 02 фев 2009, 02:14
Откуда: мск
прог. языки: фортран,кобол,бейсик

Re: UART vs I2C

Сообщение =DeaD= » 03 фев 2009, 12:11

neiro писал(а):Так а в чем проблема?? Я чет не догнал. Уарт это же не односторонний интерфейс :)

Да ну?

neiro писал(а):Мастер шлет команду по линии TX все слэйвы принимают эту команду. И тот кому эта команда адресована отвечает мастеру по линии RX. Вроде так.
Где затыка?? чет я не вижу :)

Угу, все значит держат 0 на линии RX и один туда пытается ответить, угадаете сами какой там уровень будет? Это надо подтяжки и замыкание на землю делать и синхронность получим автоматом, как в I2C - а какой смысл тогда всё это городить, да еще и UART'ом называть?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: UART vs I2C

Сообщение EdGull » 03 фев 2009, 12:34

ну не всё так грустно... ;)
я сам это i2c не долюбливаю, мне uart намного роднее... :D
поэтому в миниботе-2 и организовал 1-проводный uart интерфейс на три устройсва + разъем
поэтому расширять устройства можно будет до безобразия
и всё прекрасно работает в обе стороны на скорости 115200... :P

Добавлено спустя 40 секунд:
при этом все всё всем могут передавать... :P
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: UART vs I2C

Сообщение Duhas » 03 фев 2009, 12:41

neiro писал(а):Spi в принципе не катит для этого. Эт получается для каждого слэйва надо тащить отдельный чип селект. Следовательно на 10 серв вам понадобиться 13 проводов :shock:

мне понадобится 18 чип селектов )) ибо "серв" будет 18... при этом планируется еще и ресет общий и программирование любой сервы на шине ))
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: UART vs I2CF

Сообщение yak-40 » 03 фев 2009, 12:50

А ещё можно преобразователь интерфейса поставить, например max485 (DIP8). Закрывать передатчик и использовать многоточку. 256 устройств можно подключить.
Я так делел...
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: UART vs I2C

Сообщение neiro » 03 фев 2009, 14:03

Не, давай те мухи отдельно котлеты отдельно :) ...

Че всё в одну кучу мешать...
C onewire на уарте согласен. Вполне рабочая шина. И возможно что и её вполне достаточно.
Но раз уж спросил об полноценном уарте то всё таки давайте закончим эту тему.

Я предложил сеть состоящую из одного мастера и кучи слэйвов. Мастер поочередно опрашивает все слэйвы и получает от их вразумительные ответы. Всё вроде красиво. Организация такой сети возможна если ток на шине будет только один активный передатчик - эт прально заметил =DeaD=.

Терь берем какуюнить аврку. Смотрим настройки уарта. Бит TransmitEnable. Всё что нужно это включать этот бит на момент передачи и отключать после передачи. Это вроде стандартное правило для многопроцессорных сетей...
Поэтому опять же встает вопрос..где затыка?
Аватара пользователя
neiro
 
Сообщения: 23
Зарегистрирован: 02 фев 2009, 02:14
Откуда: мск
прог. языки: фортран,кобол,бейсик

Re: UART vs I2C

Сообщение Сергей » 03 фев 2009, 14:11

затыка - это твои познания. Почитай лучше что такое UART и I2C и ЧЕМ ОНИ отличаюца. Ты ведь так и не ответил.
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Re: UART vs I2C

Сообщение neiro » 03 фев 2009, 14:16

Сергей писал(а):затыка - это твои познания. Почитай лучше что такое UART и I2C и ЧЕМ ОНИ отличаюца. Ты ведь так и не ответил.

Так поэтому и спросил здесь. Почитал - подумал - расписал как планирую реализовать. Спросил на форуме. Вроде так :) ..

Причем тут отличие уарт от и2с ваще не догоняю. Мне же нужны не отличия, а понять почему нельзя реализовать на уарте управление сервами.
Аватара пользователя
neiro
 
Сообщения: 23
Зарегистрирован: 02 фев 2009, 02:14
Откуда: мск
прог. языки: фортран,кобол,бейсик

След.

Вернуться в Коммуникации

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 15