Не работает USART на ATmega162
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

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

Отправлено human 25 августа 2005 г. 14:47

На ATmega162 не получается сделать асинхронный обмен.
вот кусок программы - инициализация USART и отправка байта.

;Инициализация USART
ldi tmp,0x00
out UCSR1A,tmp
ldi tmp,(1< out UCSR1B,tmp ;разрешение приема, передачи
ldi tmp,(1< out UCSR1C,tmp ;8 бит данных, 1 стоп-бит, нет бита четности
ldi tmp,0x00
out UBRR1H,tmp
ldi tmp,0x67 ;установка скорости связи 0x67 => 9600 baud
out UBRR1L,tmp

TRANSMIT:
sbis UCSR1A,UDRE1
rjmp TRANSMIT
ldi tmp,0x73
out UDR1,tmp

Приемник определяет принятый байт 00h с
ошибками Break Detected и Frame Error.

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

Ответы



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

E-mail: info@telesys.ru