; Автор:	shilow@ukr.net
; Дата:
; Название:
; Версия:
; Имя файла:
; Для AVR:	ATtiny24A
; Тактовая частота:
; Выполняемые функции:
;
; Шаблон для ATtiny24A
;

.listmac	; развернём макросы
;******************************
; инклуды
.nolist
.include "tn24Adef.inc"
.list

;******************************
; опредления
.def temp	= r16	; рабочая переменная

;******************************
; константы
.equ a		= 0	; sample

;******************************
; ячейки в СОЗУ
.DSEG
;.ORG	SRAM_START
Sample:		.byte	30

;******************************
; константы в EEPROM
.ESEG
smpl1:		.DW	0x0000	; sample 1
smpl2:		.DB	0x05	; sample 2

;******************************
; память программ
.CSEG
.ORG 0
;******************************
; Таблица векторов прерываний
	rjmp	RESET		; Reset Handler
	rjmp	INT0		; IRQ0 Handler
	rjmp	PCINT0		; PCINT0 Handler
	rjmp	PCINT1		; PCINT1 Handler
	rjmp	WDT		; Watchdog Interrupt Handler
	rjmp	TIM1_CAPT	; Timer1 Capture Handler
	rjmp	TIM1_COMPA	; Timer1 Compare A Handler
	rjmp	TIM1_COMPB	; Timer1 Compare B Handler
	rjmp	TIM1_OVF	; Timer1 Overflow Handler
	rjmp	TIM0_COMPA	; Timer0 Compare A Handler
	rjmp	TIM0_COMPB	; Timer0 Compare B Handler
	rjmp	TIM0_OVF	; Timer0 Overflow Handler
	rjmp	ANA_COMP	; Analog Comparator Handler
	rjmp	ADCC		; ADC Conversion Handler
	rjmp	EE_RDY		; EEPROM Ready Handler
	rjmp	USI_STR		; USI STart Handler
	rjmp	USI_OVF		; USI Overflow Handler

;******************************
;;;;; Первичная инициализация
RESET:	ldi	r16,high(RAMEND); Main program start
	out	SPH,r16		; Set Stack Pointer to top of RAM
	ldi	r16,low(RAMEND)
	out	SPL,r16
; выкл. аналог, компаратор
	ldi	temp,1<<ACD
	out	ACSR,temp
; Enable interrupts
	sei
;******************************
;;;;; Основная программа
BEGIN:
;;;;
	rjmp	BEGIN

;******************************
;;;;; Подпрограммы

;******************************
;;;;; Обработчики прерываний

INT0:		; IRQ0 Handler
	reti

PCINT0:		; PCINT0 Handler
	reti

PCINT1:		; PCINT1 Handler
	reti

WDT:		; Watchdog Interrupt Handler
	reti

TIM1_CAPT:	; Timer1 Capture Handler
	reti

TIM1_COMPA:	; Timer1 Compare A Handler
	reti

TIM1_COMPB:	; Timer1 Compare B Handler
	reti

TIM1_OVF:	; Timer1 Overflow Handler
	reti

TIM0_COMPA:	; Timer0 Compare A Handler
	reti

TIM0_COMPB:	; Timer0 Compare B Handler
	reti

TIM0_OVF:	; Timer0 Overflow Handler
	reti

ANA_COMP:	; Analog Comparator Handler
	reti

ADCC:		; ADC Conversion Handler
	reti

EE_RDY:		; EEPROM Ready Handler
	reti

USI_STR:	; USI STart Handler
	reti

USI_OVF:	; USI Overflow Handler
	reti

;
.exit
