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

 
 
> И снова RS485, и снова проблемы, программное управление потоком
Axxel
сообщение Feb 16 2007, 06:25
Сообщение #1


Частый гость
**

Группа: Новичок
Сообщений: 140
Регистрация: 31-01-07
Из: Челябинск
Пользователь №: 24 896



Всем доброго времени суток.

Я уже в принципе писал о своей проблеме в форуме
по микроконтроллерам, но проблема тогда возникала
из-за моих же неправильных действий unsure.gif

Сейчас проблема изменила свой "окрас", суть:

Собрал переходник RS232/RS485 по такой схеме (pdf внизу темы)
Программа в МК примерно следующая:"слушаем" линию-принимаем 20 символов-переходим в режим
передачи-передаем эти самые 20 символов обратно-"слушаем" линию.

На компе (пользуюсь компонентой COM library by Dejan Crnila):
все просто, взводим RTS-передаем-убираем RTS.
смысл кода таков:

RTS=1;
WriteStr(Str);
RTS=0;

происходят в данном случае глюки со следующими
симптомами:пакет передается то ли урезанный, то ли
с жуткими ошибками, но факт в том, что ожидаемый пакет
не отображается в окне терминала приема.После второй посылки
пакет приходит (т.е МК получает свои долгожданные 20 символов)
но естественно коряво.

Прикол также состоит в том что когда делаешь так:

RTS=1;
sleep(N msec);
WriteStr(Str);
sleep(N msec);
RTS=0;

то в зависимости от выбираемых задержек(методом научного тыка smile.gif )
пакет передается/принимается нормально.

Кто-нибудь имел дело с подобными проблемами?
Косяк безусловно мой, скорее железный.
Но в данный момент я окончательно запутался, и даже не знаю в какую
сторону идти. sad.gif

Кстати: скорость 9600, длина 10м, помех нет, терминаторы не ставлю
из-за короткой линии (да и когда ставил проблемы были такие же)
т.е возможность проблемы с линией можно сразу отбросить.
Прикрепленные файлы
Прикрепленный файл  rs485_rs232.pdf ( 15.4 килобайт ) Кол-во скачиваний: 143
 


--------------------
Если боишься - не говори. если сказал - не бойся. ©
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Axxel
сообщение Feb 16 2007, 08:26
Сообщение #2


Частый гость
**

Группа: Новичок
Сообщений: 140
Регистрация: 31-01-07
Из: Челябинск
Пользователь №: 24 896



Да, я сам думаю про такое, но я видел примеры
программ, с тем же компонентом. Никаких задержек там не
ставится. Подразумевается что возврат из функции WriteStr
происходит после передачи всего пакета из UART, т.е
по логике никакие задержки нам не нужны IMHO, никто не мешает
нам убирать RTS сразу после отправки пакета, IMHO опять же.
Хотя практика показывает совсем другое.
Такое я сам думаю может быть, хотя совсем нехотелось бы ругать
Винды, Гилла Бейтса и прочих уважаемых личностей из-за собственного
недопонимания.Осциллогорафом проверю.

То есть если я правильно понял, подобная проблема действительно имеет
(имела) место, или нет?


--------------------
Если боишься - не говори. если сказал - не бойся. ©
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Axxel   И снова RS485, и снова проблемы   Feb 16 2007, 06:25
- - Andy Mozzhevilov   Идти надо в сторону осциллографа и посмотреть на п...   Feb 16 2007, 06:52
|- - Andy Mozzhevilov   Цитата(Axxel @ Feb 16 2007, 10:26) Да, я ...   Feb 16 2007, 08:35
- - upc2   Вы не показали как МК подключается к линии.Может в...   Feb 16 2007, 09:01
|- - Axxel   Цитата(upc2 @ Feb 16 2007, 11:01) Вы не п...   Feb 16 2007, 10:20
- - upc2   С интерфейсом все нормально. Думаю, что дело не в ...   Feb 16 2007, 11:12
|- - Axxel   Когда ПК работает только на передачу(RTS всегда 1)...   Feb 16 2007, 12:02
- - Axxel   Да, и еще делал такой опыт: соединял пины TxD и Rx...   Feb 16 2007, 12:14
- - upc2   Похоже глючит МАХ202.Я использовал ADM232. 9600 - ...   Feb 16 2007, 12:23
- - Andy Mozzhevilov   Какие страсти. Вы осциллограф то взяли в руки? Там...   Feb 16 2007, 12:55
|- - upc2   Цитата(Andy Mozzhevilov @ Feb 16 2007, 12...   Feb 16 2007, 13:11
- - Axxel   Извините пожалуйста за долгие паузы, работа дерган...   Feb 16 2007, 15:00
- - rezident   Типовых проблем при использовании RS-485 несколько...   Feb 16 2007, 19:39
- - Axxel   Всем доброго времени суток, и доброго понедельника...   Feb 19 2007, 08:21
- - Andy Mozzhevilov   Винда не предназначена для таких выкрутасов. Это в...   Feb 19 2007, 08:45
|- - Axxel   >Если это не серийное изделие, покрутите эти за...   Feb 19 2007, 08:59
- - upc2   1.Попробуйте заменить драйвер СОМ-порта. Если при ...   Feb 19 2007, 11:02
|- - Axxel   > Вместо RTS стандарт допускает использование о...   Feb 19 2007, 11:10
- - upc2   О появлении сигнала RTS сигнализирует CTS. Дождите...   Feb 19 2007, 11:36
|- - Axxel   Цитата(upc2 @ Feb 19 2007, 13:36) О появл...   Feb 19 2007, 11:41
- - upc2   Появление сигнала RTS занимает много времени . Дан...   Feb 19 2007, 11:51
|- - Axxel   Цитата(upc2 @ Feb 19 2007, 13:51) Появлен...   Feb 19 2007, 11:57
- - upc2   Разные программы бывают. Если не влезать в регистр...   Feb 19 2007, 12:02
|- - Axxel   Цитата(upc2 @ Feb 19 2007, 14:02) Разные ...   Feb 19 2007, 12:08
- - cioma   Как уже говорил Andy Mozzhevilov, Винда для такого...   Mar 8 2007, 13:37
|- - muravei   Цитата(cioma @ Mar 8 2007, 13:37) Выход и...   Mar 8 2007, 14:06
- - wangan   Мне кажется кривизна в самой программе, как насчет...   Mar 8 2007, 14:20
- - Axxel   Сделал преобразователь с автоматическим управление...   Mar 19 2007, 11:27


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

 


RSS Текстовая версия Сейчас: 30th July 2025 - 08:02
Рейтинг@Mail.ru


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