[an error occurred while processing this directive]
|
.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: info@telesys.ru