Хотелки:
Спойлер
Аналоговый осциллограф С1-112, С1-118, другиене/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
остаетсяпомогите замяукать 8-разрдный АЦП на attiny13. большая просьба выложить текст (от .include до .exit) с коментариями замяукования уровня АЦП в регистр, например R20.
Код: Выделить всё
ldi tmp,0b00000100 ;0b00000100 ;0.25мкс*128=64мкс
out tccr0b,tmpИнициализация:xkp писал(а):вопрос [...]остается
Код: Выделить всё
OUTI ADCSRA,(1<<ADEN)|(1<<ADIE)|(1<<ADPS2)|(1<<ADPS0) ;Включаем АЦП, его прерывание, настраиваем предделитель тактовой частоты
OUTI ADCSRB,0 ;источник автосрабатывания отключен
OUTI ADMUX,(1<<ADLAR)|(1<<MUX1) ;выравнивание влево (ADCH - 8 старших бит), 1-й канал
Код: Выделить всё
.macro OUTI
LDI R16,@1
OUT @0,R16
.endm
Код: Выделить всё
ADC_INT: ;сюда попадаем по JMP\RJMP из таблицы векторов прерываний
IN R24,ADCH ;читаем АЦП в R24
RETI ;выход из прерывания
Код: Выделить всё
;там где надо прочитать АЦП пишем:
SBI ADCSRA,ADSC ;выставить бит начала преобразования
;после чего, по прошествии нескольких тактов (зависит от предделителя) произойдет прерывание АЦП
Код: Выделить всё
.macro OUTI
LDI R16,@1
.if @0>63
STS @0,R16
.else
OUT @0,R16
.endif
.endm