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

 
 
> UART не запскается, Ошибка команды SBIS на Atmega 2561
Slavast
сообщение Nov 2 2010, 11:08
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 25-10-10
Пользователь №: 60 395



Доброе время суток.
Прописываю работу USART на Atmega2561 и не работает команда SBIS во вседавно известном цикле отправке байта.

; Процедура отправки байта
uart_snt: SBIS UCSRA,UDRE ; Пропуск если нет флага готовности
RJMP uart_snt ; ждем готовности - флага UDRE

OUT UDR, R16 ; шлем байт
RET ; Возврат



Выдает ошибку:
D:\Slava\Atmel\Projects\UART1\UART1.asm(67): error: Operand 1 out of range: 0xc0

Подскажите что делать?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Slavast
сообщение Nov 3 2010, 08:42
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 81
Регистрация: 25-10-10
Пользователь №: 60 395



Подскажите: в UBRR0H и UBRR0H надозаписать Baudrate для UARTa. А в какой из них записывать конкретно не написано. Что делать?

• Bit 11:0 – UBRR11:0: USART Baud Rate Register
This is a 12-bit register which contains the USART baud rate. The UBRRH contains the four
most significant bits, and the UBRRL contains the eight least significant bits of the USART baud
rate. Ongoing transmissions by the Transmitter and Receiver will be corrupted if the baud rate is
changed. Writing UBRRL will trigger an immediate update of the baud rate prescaler.
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Nov 3 2010, 09:01
Сообщение #3


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(Slavast @ Nov 3 2010, 11:42) *
Подскажите: в UBRR0H и UBRR0H надозаписать Baudrate для UARTa. А в какой из них записывать конкретно не написано. Что делать?

Там же все черным по белому сказано - 12-разрядный, в UBRR0H старшие четыре (остальные незначащие, нули), в UBRR0L - младшие восемь. Первым должен записываться старший, после записи младшего будут обновлены оба регистра.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Slavast   UART не запскается   Nov 2 2010, 11:08
- - rx3apf   Цитата(Slavast @ Nov 2 2010, 14:08) Выдае...   Nov 2 2010, 11:11
- - ILYAUL   Цитата(Slavast @ Nov 2 2010, 14:08) Добро...   Nov 2 2010, 11:15
- - Slavast   Аа! Век учись - на свои же грабли наступай...   Nov 2 2010, 11:18
|- - ILYAUL   Цитата(Slavast @ Nov 2 2010, 14:18) Аа...   Nov 2 2010, 11:27
|- - Slavast   Цитата(ILYAUL @ Nov 2 2010, 15:27) И учит...   Nov 2 2010, 11:30
|- - ILYAUL   Цитата(Slavast @ Nov 2 2010, 14:30) В смы...   Nov 2 2010, 12:08
|- - Палыч   Цитата(Slavast @ Nov 3 2010, 11:42) Что д...   Nov 3 2010, 09:46
- - Slavast   Т.е чтоб настроить UART на Baudrate = 115200 мне н...   Nov 3 2010, 09:43
|- - rx3apf   Цитата(Slavast @ Nov 3 2010, 12:43) Т.е. ...   Nov 3 2010, 09:48
- - Slavast   Я работаю на ATmega 2561 с 16 Мгц частотой и U2X=0...   Nov 3 2010, 10:01
|- - Палыч   Цитата(Slavast @ Nov 3 2010, 13:01) Я раб...   Nov 3 2010, 10:44
- - Сергей Борщ   Цитата(Slavast @ Nov 3 2010, 13:01) А что...   Nov 3 2010, 10:12
|- - demiurg_spb   Чукча не читатель, Чукча - писатель:-)   Nov 3 2010, 10:37
- - Slavast   Да, спасибо! Цитата(Палыч @ Nov 3 2010, ...   Nov 3 2010, 12:08
|- - Палыч   Цитата(Slavast @ Nov 3 2010, 15:08) Выбир...   Nov 3 2010, 13:40
- - Slavast   UART заработал!! Но теперь вместо одного с...   Nov 5 2010, 09:02
|- - =GM=   На приём надо проверять бит RXC0, а вы проверяете ...   Nov 5 2010, 09:41
|- - Slavast   Цитата(=GM= @ Nov 5 2010, 12:41) На приём...   Nov 5 2010, 09:51
|- - =GM=   На здоровье. Ну и r18 у вас в main не определён. ...   Nov 5 2010, 10:53
- - Slavast   А кто-нибудь знает, как в Ассемблере через UART вы...   Nov 5 2010, 11:54
- - ae_   Код ldi xl, low (2*message1) ldi xh, high...   Nov 5 2010, 13:46


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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 17:27
Рейтинг@Mail.ru


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