[an error occurred while processing this directive]
прога которая на 2313 7,3728МГц работает 100%
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

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

Отправлено NAUT 01 марта 2006 г. 00:57
В ответ на: ну что, никто не сталкивался что- ли с такой проблемой UART в AT90S2313? Я просто теряюсь в догадках (+) отправлено <font color=gray>Метценгерштейн</font> 28 февраля 2006 г. 22:09

.NOLIST
.INCLUDE "2313def.inc"
.LIST

.DEF TEMP_L =R16
.DEF TEMP_H =R17

.CSEG
Reset:
;*********************************************************************
cli
ldi TEMP_L, low(RAMEND) ;Stack pointer setup
out SPL, TEMP_L
; ldi TEMP_L, high(RAMEND)
; out SPH, TEMP_L
sbi ACSR, ACD ;Analog comparator is disabled
;*********************************************************************
INIT:
;UART_INIT:
ldi TEMP_L,47
out UBRR,TEMP_L
ldi TEMP_L,0b00011000
out UCR,TEMP_L
;PORTB:
;PORTD:


MAIN:
rcall UartGetByte
cpi TEMP_L,'1'
breq CommandOK ;else:
CommandError:
ldi TEMP_L,'?'
rcall UartSendByte
ldi TEMP_L,10
rcall UartSendByte
ldi TEMP_L,13
rcall UartSendByte
rjmp MAIN
CommandOk:
ldi TEMP_L,'O'
rcall UartSendByte
ldi TEMP_L,'K'
rcall UartSendByte
ldi TEMP_L,10
rcall UartSendByte
ldi TEMP_L,13
rcall UartSendByte
rjmp MAIN

UartSendByte:
sbis USR,UDRE ;UDRE: UART Data Register Empty
rjmp UartSendByte
out UDR,TEMP_L
ret
UartGetByte:
sbis USR,RXC ;RXC: UART Receive Complete
rjmp UartGetByte
in TEMP_L,UDR
ret


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

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание

E-mail: info@telesys.ru