.include "d:\avr\avrasm\appnotes\tn2313def.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,0b00001101   ;вывод на индикацию
          rcall mig1            ;вызов подпрограммы задержки

          ldi Temp,0b00001100   ;вывод на индикацию
          rcall mig1            ;вызов подпрограммы задержки

          ldi Temp,0b00001101   ;вывод на индикацию
          rcall mig1           ;вызов подпрограммы задержки
          
	  ldi Temp,0b00001100   ;вывод на индикацию
          rcall mig2            ;вызов подпрограммы задержки

          ldi Temp,0b00001110   ;вывод на индикацию
          rcall mig1            ;вызов подпрограммы задержки

          ldi Temp,0b00001100   ;вывод на индикацию
          rcall mig1            ;вызов подпрограммы задержки

          ldi Temp,0b00001110   ;вывод на индикацию
          rcall mig1            ;вызов подпрограммы задержки


          ldi Temp,0b00001100   ;вывод на индикацию
          rcall mig2            ;вызов подпрограммы задержки

          rjmp Begin            ;поехали по новой!


;****************************************************
;Задержка

mig1:    out PortB,Temp

          ldi Temp1,0
          ldi Temp2,70
          ldi Temp3,1

Loop:     dec Temp1
          brne Loop

          dec Temp2
          brne Loop

          dec Temp3
          brne Loop

          ret

mig2:    out PortB,Temp

          ldi Temp1,0
          ldi Temp2,0
          ldi Temp3,5

Loop2:     dec Temp1
          brne Loop2

          dec Temp2
          brne Loop2

          dec Temp3
          brne Loop2

          ret