Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
04.02.2008, 01:05
|
|
Прохожий
Регистрация: 04.08.2007
Сообщений: 7
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Выбор интерфейса RS232 или USB
Что выбрать интерфейс RS232 или USB?
Задача: Нужно передавать данные от ПК к микроконтроллеру. Нужно чтобы передача данных занимала минимальное время. Объем данных мал (например 2...4 байта). Режим передачи циклический:
- передача от ПК на контроллер;
- контроллер выполняет конкретные действия;
повтор передачи.
Вопрос: какой интерфей выбрать? Понятно, что USB обеспечивает потенциально большую скорость. Реально не будет ли потерь времени на начало передачи (синхронизацию)?
Спасибо всем за обсуждение!
УТОЧНЕНИЯ:
Момент 1.
- Период времени на передачу данных+обслуживание устройства 1,5...2 мс;
- объем данных 12 байт;
- длина кабеля от ПК к контроллеру невелика (например 1,5 м);
- нужно, чтобы передача данных от ПК к контроллеру была минимальна по времени.
Если использовать RS232 на скорости 128 кб/с, то получаем, что для передачи 12 байт=96 бит нужно 0,75 мс. Это многовато. Желательно получить меньше. Возможно ли это?
Повторяюсь - USB дает выше скорость, но для данного случая, когда передача небольшими порциями наверняка возникают потери на начало передачи (синхронизацию). Не будут ли эти потери соизмеримы с желаемым временем передачи?
Момент 2.
И еще. Есть три варианта организации интерфейса:
1) контроллер и RS232;
2) контроллер и внешний контроллер преобразователь USB;
3) контроллер со встроеннм USB.
Мне кажется, что 1 и 2 дадут примерно одно и тоже по времени. И в данном случае правильнее выбирать 1 или 3 вариант.
Или я не прав
|
|
|
|
04.02.2008, 01:17
|
|
Временная регистрация
Регистрация: 12.01.2008
Сообщений: 96
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Выбор интерфейса RS232 или USB
Сообщение от tytey
|
Нужно чтобы передача данных занимала минимальное время. Объем данных мал (например 2...4 байта). Режим передачи циклический:
- передача от ПК на контроллер;
- контроллер выполняет конкретные действия;
повтор передачи.
|
Это не инженерная оценка. Порядок хоть скажите.
Я так понимаю вам важна задержка между отправкой данных с ПК, и получением на МК?
Я думаю что по RS232 задержку в 1мс вы сможете получить. Этого достаточно?
Кстати, с USB сложнее ИМХО
|
|
|
|
04.02.2008, 01:45
|
|
Прописка
Регистрация: 21.06.2003
Сообщений: 118
Сказал спасибо: 0
Сказали Спасибо 19 раз(а) в 19 сообщении(ях)
|
USB гораздо более сложный интерфейс, нежели RS232. Советую вам начать с 232. Проработайте скоростные возможности и переходите на USB только если 232 не вытягивает.
|
|
|
|
04.02.2008, 01:50
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.06.2005
Сообщений: 1,389
Сказал спасибо: 19
Сказали Спасибо 210 раз(а) в 156 сообщении(ях)
|
С USB не сложнее в случае применения специализированных интерфейсных микросхем (FT232 и т.п). Да и если самому писать - ничего сложного, для стандартных контроллеров уже давно написаны стеки USB, поддерживающие последовательный порт. И в большинстве случаев они бесплатные.
Скорость передачи при условии применения Full Speed USB контроллеров может быть до 512 Кбит/с. Не знаю, поддерживают ли стандартные драйвера High Speed. Если да - то скорость может быть выше на порядок.
Но - при работе через USB время передачи данных может увеличиться до 1 мс.
|
|
|
|
04.02.2008, 01:51
|
|
Прописка
Регистрация: 22.09.2006
Адрес: Днепропетровск
Сообщений: 114
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Приглядитесь к решениям от FTDI, т.к. COM - порты потихоньку отмирают.
А длина связного кабеля какая?
|
|
|
|
04.02.2008, 12:42
|
|
Временная регистрация
Регистрация: 12.01.2008
Сообщений: 96
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Сообщение от TEHb
|
Скорость передачи при условии применения Full Speed USB контроллеров может быть до 512 Кбит/с. Не знаю, поддерживают ли стандартные драйвера High Speed. Если да - то скорость может быть выше на порядок.
Но - при работе через USB время передачи данных может увеличиться до 1 мс.
|
Шутите?
Full Speed до 12МБит/с
High Speed до 480МБит - относительно редкая вещь
Совтовые реализации я встречал толькл Low Speed - до 1,5МБит
Пожалуй да, если захреначить FT232 то один хрен, что COM, что USB. Правда FT232 до 3МБит вроде, а по RS232 и то менее: до 1МБит/с.
PS Пусть автора темы не сбивает с толку высокая скорость USB. В bulk режиме там довольно большие задержки могут быть! (точно не помню) Так что RS232 может даже и лучше будет... Скорость ведь там не особо важна (данных мало)
|
|
|
|
04.02.2008, 13:00
|
|
Почётный гражданин KAZUS.RU
Регистрация: 30.06.2005
Сообщений: 3,399
Сказал спасибо: 5
Сказали Спасибо 431 раз(а) в 306 сообщении(ях)
|
Разведите на плате место и под DB9+max232 и под USB+FTDI,а потом решайте что лучше будет.
|
|
|
|
04.02.2008, 16:12
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: Выбор интерфейса RS232 или USB
Сообщение от tytey
|
Нужно чтобы передача данных занимала минимальное время.
|
Насколько я помню, USB-протокол не обещает какого-либо конкретного времени реакции - когда шина освободится (она ж в режиме разделяемгого доступа) " тогда и передадим", так что, если процитированное условие - результат осознанной необходимости, то USB придется признать попсой. А заботиться о скорости передачи, имея 2..4 байта данных на один пакет, может статься, и ни к чему...
|
|
|
|
04.02.2008, 22:20
|
|
Временная регистрация
Регистрация: 12.01.2008
Сообщений: 96
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Выбор интерфейса RS232 или USB
Сообщение от tempora
|
Сообщение от tytey
|
Нужно чтобы передача данных занимала минимальное время.
|
Насколько я помню, USB-протокол не обещает какого-либо конкретного времени реакции - когда шина освободится (она ж в режиме разделяемгого доступа) "тогда и передадим", так что, если процитированное условие - результат осознанной необходимости, то USB придется признать попсой. А заботиться о скорости передачи, имея 2..4 байта данных на один пакет, может статься, и ни к чему...
|
О чем и разговор!
|
|
|
|
04.02.2008, 22:40
|
|
Гражданин KAZUS.RU
Регистрация: 24.11.2006
Адрес: ДНР
Сообщений: 612
Сказал спасибо: 553
Сказали Спасибо 314 раз(а) в 142 сообщении(ях)
|
Re: Выбор интерфейса RS232 или USB
Сообщение от tempora
|
Сообщение от tytey
|
Нужно чтобы передача данных занимала минимальное время.
|
Насколько я помню, USB-протокол не обещает какого-либо конкретного времени реакции - когда шина освободится (она ж в режиме разделяемгого доступа) "тогда и передадим", так что, если процитированное условие - результат осознанной необходимости, то USB придется признать попсой. А заботиться о скорости передачи, имея 2..4 байта данных на один пакет, может статься, и ни к чему...
|
Ну, скорость передачи информации не в байтах измеряется... "минимальное" - енто скоко? можно уточнить?
Конечно сльно упрощаю,но USB расчитан на передачу как асинхронных пакетов(некритичны ко времени и передаются с проверкой CRC c повторной пересылкой при ошибке: принтеры,сканеры и т.п), так и синхронных пакетов(гарантированная по времени доставка, но без проверки CRC: USB-колонки, к примеру ).Тут уж палка о двух концах.все от проекта зависит.. И насчет 1мс тоже верно: на физическом уровне передача идет так называемыми "фреймами" с частотой 1мс: (1фрейм/1мс) - но это совсем немного!
Однозначно USB!
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 12:46.
|
|