|
UART не запскается, Ошибка команды SBIS на Atmega 2561 |
|
|
|
Nov 3 2010, 12:08
|
Частый гость
 
Группа: Участник
Сообщений: 81
Регистрация: 25-10-10
Пользователь №: 60 395

|
Да, спасибо! Цитата(Палыч @ Nov 3 2010, 13:44)  А, Вы высчитали: какая при этом ошибка скорости передачи получается? Это может быть важным. При Ваших данных ошибка -3,5%. Чтобы скорость USART получалась без ошибок используют тактовую 14.7456МГц или 11.0592МГц. Как же я могу поменять частоту процессора микроконтроллера Atmega 2561 16Мгц ? Выбирая не 16 Мгц, а 14.7456МГц или 11.0592МГц не будет работать, т.к. тактовая часота процессора МК Atmega 2561 16 МГц.?
|
|
|
|
|
Nov 5 2010, 09:02
|
Частый гость
 
Группа: Участник
Сообщений: 81
Регистрация: 25-10-10
Пользователь №: 60 395

|
UART заработал!! Но теперь вместо одного символа контроллер Atmega 2561 выводит мне в терминал бесконечный цикл этих символов. Без главного цикла все равно выводит миллион повторений того, что я нажму. Вопрос - нужно ли здесь прерывания и какой их тогда будет смысл? Заранее, низкий поклон!!
Главная программа у меня вот:
;-------Посылка байта----------
uart_rcv: lds r19, UCSR0A SBRS r19,UDRE0 ; Пропуск если нет флага готовности, RJMP uart_rcv ; вращаясь в цикле lds R16,UDR0 ; байт пришел - забираем. RET ; Выходим. Результат в R16
;-------Процедура отправки байта-------
uart_snt: lds r17, UCSR0A SBRS r17,UDRE0 ; Пропуск если нет флага готовности, ; если 1 - то готов отправлять данные RJMP uart_snt ; ждем готовности - флага UDRE sts UDR0, R16 ; шлем байт 01010101 в UDR RET ; Возврат
;------ Главный цикл -------- Main: RCALL uart_rcv ; Ждем байта INC R16 ; Делаем с ним что-то RCALL uart_snt ; Отправляем обратно. out PORTB, r18 JMP Main
|
|
|
|
|
Nov 5 2010, 09:51
|
Частый гость
 
Группа: Участник
Сообщений: 81
Регистрация: 25-10-10
Пользователь №: 60 395

|
Цитата(=GM= @ Nov 5 2010, 12:41)  На приём надо проверять бит RXC0, а вы проверяете UDRE0 и на приём, и на передачу. АААА!!!! РАБОТАААААЕТТТТ!)!)!)!)!))!)! Урааааааа!)))))) Огромный респект =GM=!!!!
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|