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

 
 
> UART
Enot555
сообщение Apr 25 2008, 23:53
Сообщение #1





Группа: Новичок
Сообщений: 5
Регистрация: 25-04-08
Пользователь №: 37 100



Доброго времени суток!
Подскажите, пожалуйста, как вывести контроллер (ATmega8) из режима передачи?
При организации прерываний по USART_DR_Empty и USART_Transmit_Complete после окончания передачи устанавливаются флаги UDRE и TXE и, поскольку UDRE имеет приоритет по прерываниям, то до TXE дело никогда не доходит. Как сбросить UDRE без записи в него новых данных (которые он воспринимает как данные для передачи следующего бита и так далее...)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ae_
сообщение Apr 26 2008, 00:22
Сообщение #2


Участник
***

Группа: Свой
Сообщений: 462
Регистрация: 2-04-07
Из: Иркутск
Пользователь №: 26 695



UDRE не нужно сбрасывать, UDRE=1 сразу после сброса и означает, что UART готов передавать данные. Надо просто запрещать прерывания UDRIE=0, когда больше нечего передавать.
Go to the top of the page
 
+Quote Post



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

 


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


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