|
1. Команды работы с байтовыми константами (ldi, subi, sbci, ,cpi, andi[=/cbr], ori[=sbr]) применимы только к регистрам R16..R31, а с двухбайтовыми (adiw, sbiw) - только к R24..31. Аналогично, команды работы с SFR (регистрами ввода-вывода) - sbi, cbi, sbis, sbic - применимы только к SFR с адресами от 0 до 31 (только in и out - от 0 до 63). Внимательней читай детальное описание команд - там указаны допустимые операнды.
2. equ r0 = 0x00 - грубейшая ошибка, никогда так не делай. Ты имеешь право назначать регистрам символические имена, для этого в AVRASMx есть директива .def (.def myregister = r0), но численное значение ЗАРЕЗЕРВИРОВАННОМУ символу регистра ПРИСВАИВАТЬ нельзя, и точка!
3. Забудь словосочетание "регистровый файл", в компании АВРщиков это ругательство :)
4. AVR Studio - не компилятор, а редактор, отладчик-симулятор и запускалка компиляторов. Твой компилятор - AVR Assembler, вот о нем и говори в другой раз. УЧИ МАТЧАСТЬ!
E-mail: info@telesys.ru