Проба
.include "m16def.inc" ; Используем ATMega16 8000000МГц
; RAM
LDI R16,High(RAMEND)
OUT SPH,R16
;Hardware Init ======================================
;Настраиваем работу АЦП
;(1<<refs0) опорное напряжение +5В
;(1<<adlar) выравнивание по левому краю
;(1<<mux4) вход pa0/adc0 без усиления
;(1<<aden) разрешаем АЦП
;(1<<adsc) запускаем
;(1<<adate) непрерывное преобразование
;(1<<adie) разрешаем прерывание после завершения преобразования
;(1<<adps2)|(1<<adps1)|(1<<adps0) коэф. деления 1:128 (на железе 8000000Гц)
;
ldi r16,(1<<refs0)|(1<<adlar)|(1<<mux4)
out admux,r16
ldi r16,(1<<aden)|(1<<adsc)|(1<<adate)|(1<<adie)|(1<<adps2)|(1<<adps1)|(1<<adps0)
out adcsra,r16
;;Настраиваем работу Т1 режим Быстрый ШИМ
;(1<<com1a1) 1 при совпадении
;(0<<wgm13)|(1<<wgm12)|(0<<wgm1)|(1<<wgm10) fast pwm 8 разрядов
;(0<<cs12)|(0<<cs11)|(1<<cs10) деление 1:1
;
sbi DDRd, 5 ;Установка 5-го бита в регистре DDRd в "1" (Рd5 - выход)
ldi r16,(1<<com1a1)|(0<<wgm12)|(1<<wgm10)
out tccr1a,r16 ; задействуем вывод pd5
ldi r16,(0<<cs12)|(0<<cs11)|(1<<cs10)|(0<<wgm13)|(1<<wgm12)
out tccr1b,r16 ; задаем частоту и режим
ldi r16,0
out ocr1al,r16 ;начальное значение регистра сравнения
SEI
; End Hardware Init ===================================
; Main =========================================================
Main:
RJMP Main
; EEPROM =====================================================
.ESEG ; Сегмент EEPROM