Проблема с UART портом в mega128
(«Телесистемы»: «Конференция «Микроконтроллеры и их применение»»)

миниатюрный аудио-видеорекордер mAVR

Отправлено radmur 25 апреля 2003 г. 22:08

Подскажите пожалуйста, никак не хочет mega128 выставлять прерывание по окончании передачи TXC0. Прерывание по UDRE отрабатывает нормально.
Вектора адресов прерываний прописаны правильно.

Может дело в инициализации -
.equ uart0 = exp2(TXEN0)+exp2(RXEN0);+exp2(TXB80)
; РАЗРЕШЕНЫ: ПРИЕМ, ПЕРЕДАЧА

ldi temp, uart0 ; Инициализация UART0
out UCSR0B, temp

ldi temp, 0b00000110 ; Инициализация UART0
sts UCSR0C, temp ; асинхронный, 8 бит, 1 стоповый

; Скорость порта UART0
ldi r16, 0
sts UBRR0H, r16 ; устанавливаем скорость порта
ldi r16, 103
out UBRR0L, r16

sbi UCSR0B, RXCIE0 ; Разрешение прерывания по завершения приема
sbi UCSR0B, TXCIE0 ; Разрешение прерывания по завершении передачи

Заранее спасибо.


Составить ответ ||| Конференция ||| Архив

Ответы



Перейти к списку ответов ||| Конференция ||| Архив ||| Главная страница ||| Содержание

E-mail: info@telesys.ru