Help!!! Не получается настроить UART на Atmega16 для выдачи на COM порт значений.
Вроде использую стандартную инициализацию, но на выходе Меги ничего нет ((
Может что-то не так делаю?(.
help!?
ATMega16 - инициализация UART
ATMega16 - инициализация UART
- Вложения
-
- UART.asm
- (1.54 КБ) 414 скачиваний
- Реклама
Re: ATMega16 - инициализация UART
В начале программы д.быть векторы прерываний. Если они не используются, все равно должны быть забиты RETI. Дальше не стал смотреть.
Даташиты нужно читать с начала, а не только главу, относящуюся к проверяемой функции.
Правильно написать программу и для начала прогнать в симуляторе Студии. Минимум 50% вопросов отсеются.
Даташиты нужно читать с начала, а не только главу, относящуюся к проверяемой функции.
Правильно написать программу и для начала прогнать в симуляторе Студии. Минимум 50% вопросов отсеются.
- Rimsky
- Грызет канифоль
- Сообщения: 299
- Зарегистрирован: Вт июн 15, 2010 07:16:42
- Откуда: Иркутск
- Контактная информация:
Re: ATMega16 - инициализация UART
Код: Выделить всё
USART_Init:
; инициализации аппаратного UART, Baud rate 9600 F_CPU 16МГц
ldi r17, 0
ldi r16, 103
; Set baud rate
out UBRRH, r17
out UBRRL, r16
; Enable receiver and transmitter
ldi r16, (1<<RXEN)|(1<<TXEN)
out UCSRB, r16
; Set frame format: 8data, 1stop bit
ldi r16, (1<<URSEL)|(3<<UCSZ0)
out UCSRC, r16
ret
;--------------------------------------------------------------
USART_Transmit:
; Wait for empty transmit buffer
sbis UCSRA, UDRE
rjmp USART_Transmit
; Put data (r16) into buffer, sends the data
out UDR, r16
ret
;--------------------------------------------------------------
USART_Receive:
; Wait for data to be received
sbis UCSRA, RXC
rjmp USART_Receive
; Get and return received data from buffer
in r16, UDR
ret
;-------------------------------------------------------------
USART_Flush:
sbis UCSRA, RXC
ret
in r16, UDR
rjmp USART_Flush
- s_black
- Мучитель микросхем
- Сообщения: 411
- Зарегистрирован: Вс авг 10, 2008 19:35:49
- Откуда: Евпатория
- Контактная информация:
Re: ATMega16 - инициализация UART
В даташите есть уже ГОТОВЫЙ код - и на асме и на Си. Внимательней читайте.

