Сообщение
genadijs2009 »
так выгледет програма, взятая со обучалке.
.include "m8def.inc"
.def Temp=R16
.def Temp1=R17
.def Temp2=R18
.def Temp3=R19
.def Temp4=R20
.cseg
.org 0
ldi Temp,RamEnd ;инициализация стека
out SPL,Temp
ldi Temp,0b11111111 ;настройка портов
out DDRB,Temp
Begin: ldi Temp,0b00000001 ;вывод на индикацию
rcall Delay ;вызов подпрограммы задержки
ldi Temp,0b00000010 ;вывод на индикацию
rcall Delay ;вызов подпрограммы задержки
ldi Temp,0b00000100 ;вывод на индикацию
rcall Delay ;вызов подпрограммы задержки
ldi Temp,0b00001000 ;вывод на индикацию
rcall Delay ;вызов подпрограммы задержки
ldi Temp,0b00010000 ;вывод на индикацию
rcall Delay ;вызов подпрограммы задержки
ldi Temp,0b00100000 ;вывод на индикацию
rcall Delay ;вызов подпрограммы задержки
ldi Temp,0b01000000 ;вывод на индикацию
rcall Delay ;вызов подпрограммы задержки
ldi Temp,0b10000000 ;вывод на индикацию
rcall Delay ;вызов подпрограммы задержки
rjmp Begin ;поехали по новой!
;****************************************************
;Задержка
Delay: out PortB,Temp
ldi Temp1,0
ldi Temp2,0
ldi Temp3,10
Loop: dec Temp1
brne Loop
dec Temp2
brne Loop
dec Temp3
brne Loop
ret