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

 
 
> USART в асинхронном режиме ATmega 16L, Возникла проблема
alex2k3
сообщение May 28 2006, 15:06
Сообщение #1


Участник
*

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



Здравствуйте!
Возникла проблема. На ATmega16L нужно применять USART в асинхронном режиме. После прошивки получаю от компьютера либо 0xFF, либо 0xFE.
Пользуюсь мастером компилятора ICCAVR. Думал разные скорости, приема и передачи, но с помощью осциллографа на ноге RXD микроконтроллера вижу данные, с нужной скоростью (9600), со стороны компьютера использую HHD Serial Monitor. Проверил состояния регистров все в норме (выбран асинхронный режим и пр.) Помогите, если кто знает, в чем дело.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
alex2k3
сообщение May 28 2006, 16:14
Сообщение #2


Участник
*

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



На данном этапе мне важно принимать данные, а не передаватьих на компьютер.
Осциллограмма на пине RX соответсвуют тому что я передаю, т.е. к контроллеру поступают правильные данные.
После чего генерируется прерывание о завершении приема и вывод на дисплей значение регистра UDR, который о содержит те самые 0xFF или 0xFE. Причем нет никакой зависимости, абсолютно произвольно. Прочитал что в модулях USART есть буффер FIFO, который и содержит принятые данные. Возникает такое вопрос: как в асинхронном режиме работать с этим буффером? Как с регистром или как с буффером(FIFO).
Спасибо за ссылки буду смотреть и экспериментировать!
Go to the top of the page
 
+Quote Post



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

 


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


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