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

 
 
> Проблема с USART на м128, загвоздка с uart
Пришелец
сообщение Mar 20 2008, 11:53
Сообщение #1


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

Группа: Участник
Сообщений: 183
Регистрация: 28-01-05
Пользователь №: 2 272



Может кто сталкивался:

По уарту отправляется посылка по прерываниям UDRE
при завершении посылки прерывания UDRE запрещаются и разрешаются TXC прерывания
При окончании передачи последнего байта запрещаются все прерывания передатчика и
включается приёмник и его прерывания RXC. (во время работы передатчика он был выключен)

Всегда работала эта схема - но вот попалось устройство которое отвечает на посылку практически мгновенно. На осцилографе ответ устройства видится как продолжение посылки т.е. пауза не более длительности бита. В итоге не принимаются два первых байта ответа, третий байт принимается с ошибкой. Далее байты принимаются правильные.

Кто что думает по этому поводу? wacko.gif

и ещё сканирование компьютером показывает что ответ и запрос не накладываются т.е. правильны все байты запроса и ответа

Сообщение отредактировал Пришелец - Mar 20 2008, 11:54
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Dog Pawlowa
сообщение Mar 20 2008, 12:15
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(Пришелец @ Mar 20 2008, 15:53) *
Кто что думает по этому поводу? wacko.gif

Решение есть техническое и организационное.
1) Техническое обеспечивается постоянным приемом и флагом состояния.
2) Организационное обеспечивается созданием документа под громким названием "Спецификация протокола обмена с пришлыми мирами " и приведением всех устройств в соответствии со спецификацией.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
Пришелец
сообщение Mar 20 2008, 12:36
Сообщение #3


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

Группа: Участник
Сообщений: 183
Регистрация: 28-01-05
Пользователь №: 2 272



Цитата(Dog Pawlowa @ Mar 20 2008, 15:15) *
Решение есть техническое и организационное.
1) Техническое обеспечивается постоянным приемом и флагом состояния.
2) Организационное обеспечивается созданием документа под громким названием "Спецификация протокола обмена с пришлыми мирами " и приведением всех устройств в соответствии со спецификацией.




Спасибо. За ответ.

похоже проблема в небольшой задержки включения приёмника которая получается вследствии задержки обработки прервания конца передачи. Вследствие этого рассинхронизация приёмника
1 - думаю поможет
2 - не пойдёт smile.gif это мы должны придерживаться спецификаций.

и есть ещё
3 - убрать эту задержку.

А ещё может кто по памяти скажет приёмник начинает принимать байт
по фронту старт бита или по уровню (если при включении приёмника уже идёт старт бит)
Go to the top of the page
 
+Quote Post
galjoen
сообщение Mar 20 2008, 14:29
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(Пришелец @ Mar 20 2008, 15:36) *
похоже проблема в небольшой задержки включения приёмника которая получается вследствии задержки обработки прервания конца передачи. Вследствие этого рассинхронизация приёмника

Рекомендую вообще не выключать приёмник. Т.е. принимать все байты в т.ч. и самопереданные. А ещё эти самопринятые байты с самопереданными сравнивать и при равенстве просто отбрасывать. А при неравенстве - ошибка. Это кстати и проблему контроля линии в частности на замыкание решает. Сам всегда так делаю когда с RS485 и т.п. интерфейсами работаю (ну где полудуплекс).
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 5th August 2025 - 19:14
Рейтинг@Mail.ru


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