.include "m16def.inc"
.def Temp=R16
.def Temp1=r17
.def OutP8=R18
.def OutP4=R19
.def TMassiveEnd8=R20
.def TMassiveEnd4=R21
.def IncMassive8=r22
.def IncMassive4=r23
.def Speed255=r24
.def Speed64=r27

.dseg

.cseg
.org 0

              jmp RESET      
              rjmp EXT_INT0   
              rjmp EXT_INT1   
              jmp TIM2_COMP  
              rjmp TIM2_OVF   
              rjmp TIM1_CAPT  
              rjmp TIM1_COMPA 
              rjmp TIM1_COMPB
              rjmp TIM1_OVF   
              rjmp TIM0_OVF   
              rjmp SPI_STC   
              rjmp USART_RXC   
              rjmp USART_UDRE
              rjmp USART_TXC
              rjmp ANALOG
              rjmp EE_RDY
              rjmp ANA_COMP
              rjmp TWI
              rjmp SPM_RDY

;             RESET       :
              EXT_INT0    : RETI
              EXT_INT1    : RETI
;             TIM2_COMP   : RETI
              TIM2_OVF    : RETI
              TIM1_CAPT   : RETI
              TIM1_COMPA  : reti
              TIM1_COMPB  : RETI
              TIM1_OVF    : RETI
              TIM0_OVF    : RETI
              SPI_STC     : RETI
              USART_RXC   : RETI
              USART_UDRE  : RETI
              USART_TXC   : RETI
              ANALOG      : RETI
              EE_RDY      : RETI
              ANA_COMP    : RETI
              TWI         : RETI
              SPM_RDY     : RETI



reset:       
             ldi      Temp,HIGH(RAMEND) ;
             out      SPH,Temp            
             ldi      Temp,LOW(RAMEND)  ;
             out      SPL,Temp                                                 
             ldi      temp,0b10000000   ;
             out      TIMSK,temp        ;

             ldi      temp,0b00000010   ;Делитель /8       Timer2 
             out      TCCR2,temp        ;
             ldi      temp,01           ;
             out      OCR2,temp         ;
  
             ldi      Temp,0b11111111   ;Порт D на вывод
             out      ddrd,Temp         ;              
             ldi      Temp,0b11111111   ;Порт B на вывод    
             out      ddrb,Temp         ;
             ldi      Temp,0b11111111   ;Порт C на вывод  
             out      ddrc,Temp         ;
             out      portc,temp


sei
 

;----Бесконечный цикл(ожидание прерываний)----;
IndicCycle:  rjmp     IndicCycle              ;
;---------------------------------------------;






;------------Прерывание таймера 2------------;
TIM2_COMP:                                   ;
             ldi      temp,0                 ;       
             out      TCNT2,temp             ;
             ldi      temp,0b11111111
             out      portb,temp
reti
