|
RS-485 в USB с помощью UCON-485 |
|
|
|
 |
Ответов
|
May 22 2008, 08:00
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(MrYuran @ May 22 2008, 13:29)  RS-485 не подразумевает вообще никакой адресации. Это протокол физического уровня Не нужно вносить еще большей путаницы. RS485 это никакой не протокол, а стандартный интерфейс. В стандарте TIA/EIA-485-A описаны только физические и электрические параметры интерфейса, но никаких упоминаний о протоколе нету. Цитата(Oleg_IT @ May 22 2008, 13:42)  Правильно. А адрес от данных отличается именно этим девятым битом, если он установлен в 1, то это адрес, если 0, то данные. Это так называемый Address-Bit Format в отличие от Idle-Line Format. Такой формат использовался, например, в протоколе PiNET. Реализация адрес-битного формата передачи в Windows "слегка" затруднена. Т.к. во-первых, "мешается" FIFO UARTа, а во-вторых, нужно обрабатывать ошибки приема на уровне регистров UART, а не функций Windows работы с COM-портом. Потому что в Windows поток из COM-порта принимается, несмотря на ошибки паритета, которые нужно отслеживать и обрабатывать при адрес-битном протоколе. Могу при случае уточнить у коллеги, как это лучше делать. Он когда-то занимался реализацией протокола PiNET на PC. И я согласен с MrYuran, что для вашего случая проще всего сделать конвертор протоколов на любом подходящем микроконтроллере. Причем, если вы совместите его с мостом USB-UART и драйвером RS485, то заодно замените этот дурацкий конвертор UCON-485.
|
|
|
|
|
May 22 2008, 08:04
|

Беспросветный оптимист
     
Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646

|
Цитата(rezident @ May 22 2008, 10:54)  В cтандарт TIA/EIA-485-A описаны только физические и электрические параметры интерфейса, но никаких упоминаний о протоколе нету. Ну да, а стандарт де факто 485 = 232+преобразователь уровней (мы говорим Партия, подразумеваем - Ленин...) Цитата Правильно. А адрес от данных отличается именно этим девятым битом, если он установлен в 1, то это адрес, если 0, то данные. Правильно будет всё-таки уточнить протокол обмена с датчиком (с точностью до бита), поддерживает ли он вообще адресацию, каким образом и т.д. А потом решать проблему (если она есть)
--------------------
Программирование делится на системное и бессистемное. ©Моё :) — а для кого-то БГ — это Bill Gilbert =)
|
|
|
|
|
May 22 2008, 12:16
|
Знающий
   
Группа: Свой
Сообщений: 922
Регистрация: 3-06-05
Из: Москва
Пользователь №: 5 709

|
Цитата(rezident @ May 22 2008, 14:24)  Потому что все широкораспространенные м/с мостов USB-COM поддерживают адрес-битные форматы и у них реализованы режимы odd, even, mark, space, no parity для 9 бита. Под широкораспространенными я имею в виду мосты типа FT232/FT232R от FTDIChips и CP2102/CP2103 от Silicon Lab. Так этот конвертер именно на FTDI и построен. Мне кажется, что я не всё по нему знаю, документации нет. Цитата(rezident @ May 22 2008, 16:03)  Конвертор автора топика вообще не поддерживает 9-й бит. Вы в этом уверены??? У Вас есть документация на этот конвертер?
|
|
|
|
Сообщений в этой теме
Oleg_IT RS-485 в USB с помощью UCON-485 May 21 2008, 17:09 rezident Цитата(Oleg_IT @ May 21 2008, 23:09) А ка... May 21 2008, 18:13 Oleg_IT Ни какой другой интерфейс использовать не могу, он... May 21 2008, 18:22 VDG Цитата(Oleg_IT @ May 21 2008, 22:22) Ни к... May 21 2008, 20:46  Oleg_IT Цитата(rezident @ May 21 2008, 22:37) ... May 22 2008, 03:14   MrYuran Цитата(Oleg_IT @ May 22 2008, 06:14) К со... May 22 2008, 04:44    Oleg_IT Цитата(MrYuran @ May 22 2008, 08:44) Кста... May 22 2008, 05:17     MrYuran Цитата(Oleg_IT @ May 22 2008, 08:17) Чест... May 22 2008, 05:45      Oleg_IT Цитата(MrYuran @ May 22 2008, 09:45) 9 би... May 22 2008, 06:50   VDG Цитата(Oleg_IT @ May 22 2008, 07:14) А мо... May 22 2008, 13:00 rezident "с этим датчиком" - с каким "этим... May 21 2008, 18:37 Oleg_IT Правильно. А адрес от данных отличается именно эти... May 22 2008, 07:42    MrYuran Цитата(rezident @ May 22 2008, 13:24) htt... May 22 2008, 11:09    galjoen Цитата(rezident @ May 22 2008, 14:24) Пот... May 22 2008, 11:35     rezident Цитата(galjoen @ May 22 2008, 17:35) Да р... May 22 2008, 12:03     rezident Цитата(Oleg_IT @ May 22 2008, 18:16) Так ... May 22 2008, 12:54      Oleg_IT Цитата(rezident @ May 22 2008, 16:54) Точ... May 22 2008, 13:13       rezident Цитата(Oleg_IT @ May 22 2008, 19:13) А ми... May 22 2008, 13:37        Oleg_IT Цитата(rezident @ May 22 2008, 17:37) Я н... May 22 2008, 18:27         rezident Цитата(Oleg_IT @ May 23 2008, 00:27) Може... May 22 2008, 20:14  Oleg_IT Цитата(rezident @ May 22 2008, 12:00) При... May 22 2008, 09:17 Oleg_IT Спасибо May 23 2008, 03:01 Oleg_IT Взял файлы ftd2xx.dll, ftd2xx.lib, ftd2xx.h из арх... May 23 2008, 09:47 rezident Ну тут уже не интерфейсные, а программные заморочк... May 23 2008, 12:13 Oleg_IT Понимаю И за то что рассказали большое спасибо.
Ну... May 23 2008, 12:24 rezident Цитата(Oleg_IT @ May 23 2008, 18:24) Ту б... May 23 2008, 13:12
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|