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

 
 
> RS232 9-ти битный формат, RS232 9-ти битный формат
Microdevice
сообщение Apr 4 2007, 21:23
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 9-04-06
Пользователь №: 15 961



В микроконтроллерах в модуле UART есть 9-ти битный адресный режим. Кто-нибудь пробовал организовать связь, используя этот режим между ПК и контроллером? Непонятно как настроить такой режим последовательного порта компьютера. Между двумя контроллерами все ок, но нужно связать с ПК. Заранее благодарен за дельные советы.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
muravei
сообщение Apr 6 2007, 11:15
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591



Цитата(zltigo @ Apr 6 2007, 11:20) *
Set и Clear это уже управление Break-ом - посылкой длинного стартового бита с длительностью гарантированно превыщающей длительность всего фрейма (включая стоповые биты) на заданной скорости.

Причем превышаюшей навсегда- при посылке SETBREAK и CLRBREAK? вывод ТХ , задерживается в выбранном состоянии значительно дольше чем фрейм состоповыми битами, до момента пока не будет послан противоположный.
Кстати , про скорость и про дуплекс никто не намекал.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Apr 6 2007, 11:34
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(muravei @ Apr 6 2007, 10:15) *
...до момента пока не будет послан противоположный.

Естественно, поскольку, как я уже писал, НИКАКИХ средств для управления длительностью не предоставляется - все на уровне приложения. К чему это Ваша ремарка? К тому, что если махать Break раз, например, в минуту, (ну ладно с временными интервалами более-менее точно обеспечиваемыми Win и его RS232 драйвером) то оно "прокатит" для медленнооооой передачи?
Цитата
Кстати , про скорость и про дуплекс никто не намекал.

Да не намекал. Намеком это действительно назвать сложно:
Цитата
И так же 2 байта прием от контроллера.

Это прямое указание на необходимость дуплекса.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
muravei
сообщение Apr 6 2007, 13:31
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591



Цитата(zltigo @ Apr 6 2007, 12:34) *
Это прямое указание на необходимость дуплекса.

Или полудуплекса smile.gif , или Вы читаете между строк?
Кстати, а как читаются 1-wire через компорт?Там времена не длинные.
Упоминается дллька COMAPI32, но нигде не нашел ее и исходник.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Apr 9 2007, 23:39
Сообщение #5


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(muravei @ Apr 6 2007, 12:31) *
Кстати, а как читаются 1-wire через компорт?
Очень просто: посылается символ 0xFC и принимается эхо. Если получили 0xFC - слейв передавал единицу, если 0xF8, 0xF0, 0xE0, 0xC0, 0x80, 0x00 - слейв передавал ноль. С Presence pulse тоже самое, только на другой скорости (ну может передается не 0xFC а 0xF0). И никаких чудес. В 1-wire не нормируется время между битами.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
muravei
сообщение Apr 10 2007, 15:18
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591



Цитата(Сергей Борщ @ Apr 10 2007, 00:39) *
Очень просто: посылается символ 0xFC и принимается эхо

А как со стартовым битом?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Apr 10 2007, 15:51
Сообщение #7


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(muravei @ Apr 10 2007, 14:18) *
А как со стартовым битом?
Стартовый бит равен нулю, стоповый 1, в UART байт передается младшим битом вперед, получается 0xFC = 0001111111, что и требуется для 1-wire. Если в "эхе" больше трех нулей в начале, значит кто-то линию "придержал", т.е передавал ноль, если столько же - передавалась 1, т.е линию никто не тянул вниз.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Microdevice   RS232 9-ти битный формат   Apr 4 2007, 21:23
- - zltigo   Цитата(Microdevice @ Apr 4 2007, 20:23) Н...   Apr 4 2007, 21:33
|- - Microdevice   Цитата(zltigo @ Apr 4 2007, 22:33) Никак,...   Apr 4 2007, 22:09
||- - zltigo   Цитата(Microdevice @ Apr 4 2007, 21:09) П...   Apr 4 2007, 22:22
||- - Microdevice   Цитата(zltigo @ Apr 4 2007, 23:22) Про ка...   Apr 4 2007, 22:26
||- - zltigo   Цитата(Microdevice @ Apr 4 2007, 21:26) А...   Apr 4 2007, 22:40
|- - rezident   Цитата(zltigo @ Apr 5 2007, 00:33) Никак,...   Apr 4 2007, 22:09
|- - Microdevice   Цитата(rezident @ Apr 4 2007, 23:09) Анал...   Apr 4 2007, 22:19
- - Microdevice   И чем мне это поможет? Мне нужно как-то портом опе...   Apr 4 2007, 22:53
|- - zltigo   Цитата(Microdevice @ Apr 4 2007, 21:53) И...   Apr 4 2007, 23:13
- - Microdevice   Нужно передать 2 байта. В первом 9-й бит (понятно ...   Apr 4 2007, 23:27
|- - zltigo   Цитата(Microdevice @ Apr 4 2007, 22:24) В...   Apr 4 2007, 23:33
- - Microdevice   Можно поподробнее? Начало пакета знаем (2 по 9 бит...   Apr 4 2007, 23:52
|- - zltigo   Цитата(Microdevice @ Apr 4 2007, 22:46) П...   Apr 4 2007, 23:59
- - rezident   zltigo, да не запутывайте вы окончательно товарища...   Apr 5 2007, 00:24
- - Microdevice   Спасибо всем откликнувшимся. Будем изучать материа...   Apr 5 2007, 10:49
- - OgRom   Мы наступали на подобные грабли. (В качестве 9 бит...   Apr 5 2007, 12:55
|- - Microdevice   Цитата(OgRom @ Apr 5 2007, 13:55) Мы наст...   Apr 5 2007, 13:43
|- - OgRom   Цитата(Microdevice @ Apr 5 2007, 14:43) П...   Apr 5 2007, 14:03
- - oran-be   Идея использовать 9-й бит, конечно заманчива, но п...   Apr 5 2007, 18:12
- - muravei   Может, я чего не понимаю, но почему нельзя програм...   Apr 5 2007, 20:35
|- - zltigo   Цитата(muravei @ Apr 5 2007, 19:35) Тупо ...   Apr 5 2007, 20:39
|- - muravei   Цитата(zltigo @ Apr 5 2007, 21:39) Расска...   Apr 5 2007, 20:43
|- - zltigo   Цитата(muravei @ Apr 5 2007, 19:43) Escap...   Apr 5 2007, 20:55
|- - muravei   Цитата(zltigo @ Apr 5 2007, 21:55) А что ...   Apr 6 2007, 09:23
|- - xemul   Цитата(muravei @ Apr 6 2007, 09:23) Не Br...   Apr 6 2007, 09:39
|- - zltigo   Цитата(muravei @ Apr 6 2007, 08:23) Не Br...   Apr 6 2007, 10:20
- - oran-be   Вообще то для любителей тупо подергать за порт под...   Apr 6 2007, 10:42
- - zltigo   C передачей полагаю уже выяснили - если вдруг с ка...   Apr 6 2007, 13:42


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 16:53
Рейтинг@Mail.ru


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