Цитата(tazik @ May 1 2008, 17:39)

Конструкцию вида:
ldi r16,0xAA
sts ADCSRA,r16
применять нельзя
вместо sts нужна команда out
sts адресует всю SRAM, включая 32 регистра r0-r31, out - только I/O область SRAM. Адреса регистров, перечисленные в файле ...def.inc рассчитаны на применение команд in/out, а не sts/lds
если все-таки хочется использовать команду sts, то к адресу регистра необходимо прибавлять смещение 0x20h (адреса регистров r0-r31)
регистр ADCSRA и ADMUX не относятся к I/O области. Так что sts тут к месту. Хотя я на всякий случай попробовал с out. С ним вообще программа не компилируется. AVR Studio пишет M:\2008.04\....\Proga.asm(109): error: Operand 1 out of range: 0x7c
Так что проблема не в sts. Но всё равно спасибо.