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

 
 
> Странности Usart0 в at91rm9200, Usart0 в at91rm9200
sergeeff
сообщение Jun 13 2008, 17:20
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Коллеги!

Столкнулся со странным явлением. Порт Usart0 работает в асинхронном режиме без hardware контроля (только RxD/TxD). К нему подключено некое устройство. При выключении устройстваб Usart0 принимает код 0x00, причем воспринимает это именно как байт данных, а не как RxBreak (бит взведен, но прерывания не возникает). Теперь внешнее устройство вновь включается. Мы посылаем в него n-байтную посылку. И тут выясняется, что первый байт из этой посылки передатчик шлет в линию два раза. Это совершенно четко показывает анализатор RS232, включенный между устройствами. Вопрос в том, почему первый байт посылается дважды? Дальнейшие обмены данными происходят без подобного явления.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
sergeeff
сообщение Jun 15 2008, 08:52
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Как-то не верится, что проблемы в неправильной работе USART на прием. Проблема то возникает при передаче. А передача организована без PDC и прерываний. Просто анализируется бит занятости передатчика и если он свободен в регистр TDH пишется очередной байт.
Go to the top of the page
 
+Quote Post
Terrabyte
сообщение Jun 16 2008, 06:39
Сообщение #3


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

Группа: Свой
Сообщений: 124
Регистрация: 2-01-07
Из: Russia
Пользователь №: 24 042



всё таки нужно точно знать что происходит при включении этого устройства, посмотреть осцилом.., если бит RXBRK устанавливается, значит условие ...when all data, parity and stop bits are low выполняется, а прерывание - ? если разрешено, то должно возникать!
вы говорите:
"если бы потом мой передатчик не дублировал первый байт в посылке информации этому другому устройству"
если был принят байт до этого, нужно же этот момент подтвердить- прочитать принятое и потом сбросить RXBRK установкой RSTSTA
Go to the top of the page
 
+Quote Post



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

 


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


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