[an error occurred while processing this directive]
|
Честно говоря я уже передачу по уарт оформил отдельной программой, проблемма не решилась, задержка перед отправкой корявит отправляемые данные, вот только каким образом, понять не могу...
< pre >
; Êâàðö 16 MHz, atmega8
;Òàéìåðû CK/8
.include "d:\my code\m8def.inc"
.def tmp =r16
.def tmpL =r17
.def tmpH =r18
.def lc =r19
.def cikl =r20
.cseg
.org $0000
rjmp reset
reset:
ldi tmp,0x5f ;$035f
out spl,tmp ;Îïðåäåëåíèå âåðøèíû ñòåêà
ldi tmp,0x03 ;$035f
out sph,tmp ;Îïðåäåëåíèå âåðøèíû ñòåêà
;---------------Îïðåäåëÿåì íàïðàëåíèå ðàáîòû ïîðòîâ -----------------------------------------------------
;Íàïðàâëåíèå ðàáîòû ïîðòîâ
;PORTB
ser tmp
out DDRB,tmp ;Âûõîä
clr tmp
out PORTB,tmp ;Íèçêèé óðîâåíü íà âûõîäå ïîðòà
out PINB,tmp ;Íèçêèé óðîâåíü íà âûõîäå ïîðòà
;PORTD
ser tmp ;tmp=0xFF
out DDRD,tmp ;
clr tmp
out PORTD,tmp ;Íèçêèé óðîâåíü íà âûõîäå ïîðòà
out PIND,tmp ;íèçêèé óðîâåíü íà âûõîäå ïîðòà
;PORTC sbi UCSRB,txen sbis ucsra,udre sbis ucsra,udre nop
ser tmp ;tmp=0xFF
cbr tmp,(1<
clr tmp
out PORTC,tmp ;Íèçêèé óðîâåíü íà âûõîäå ïîðòà
out PINC,tmp ;Íèçêèé óðîâåíü íà âûõîäå ïîðòà
;---------------Ðàçðåøàåì ðàáîòó ñòîðîæåâîãî òàéìåðà , ñáðîñ ÷åðåç 2 ñåê---------------------------------
; wdr
; ldi tmp,0b00011000 ;WDP=110(1ñåê),WDE=1,
; out WDTCR,tmp
; ldi tmp,0b00001111
; out WDTCR,tmp ;Óñòàíîâêà ñòîðîæåâîãî òàéìåðà
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;---------------Âûêëþ÷àåì àíàëîãîâûé êîìïîðàòîð----------------------------------------------------------
ldi tmp,0b10000000
out acsr,tmp ;âûêëþ÷åíèå àíàëîãîâî êîìïàðàòîðà
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;:::::::::::;;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
main:
ldi zL,low(65535) ;Çàãðóçêà â YH:YL êîíñòàíòû 65535
ldi zH,high(65535)
sbiw zL,1 ;âû÷èòàíèå èç YH:YL åäåíèöû
brne pc-1 ;Åñëè ðåçóëüòàò âû÷èòàíèÿ íå ðàâåí 0 ïåðåéòè íà pc-1
;************test USaRT
ldi tmp,0x67
out UBRRL,tmp ;UBRR = c = 9600
sbis ucsra,udre
rjmp pc-1
ldi tmp,0x01
out udr,tmp
sbis ucsra,udre
rjmp pc-1
ldi tmp,0x02
out udr,tmp
rjmp pc-1
ldi tmp,0x03
out udr,tmp
sbis ucsra,udre
rjmp pc-1
ldi tmp,0x04
out udr,tmp
rjmp pc-1
ldi tmp,0x05
out udr,tmp
sbis ucsra,udre
rjmp pc-1
ldi tmp,0x06
out udr,tmp
Rjmp pc-1
;*************
< / pre >
Ответы
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание