Павел В. (03.02.2006 21:38, просмотров: 1) ответил Павел В. на Опять IAR AVR 4.12... Теперь (char __farflash*)
Продолжение (отгрыз, редиска... ) OUT 0x3B, R19 -- ПОЧЕМУ ОБНУЛЕНИЕ RAMPZ В ЦИКЛЕ???????????
ELPM R17, Z+
OUT 0x1B, R17
DEC R16
BRNE ??main_0
----------
В момент перехода 0x0FFFF -> 0x10000 команда "ELPM R17, Z+" отрабатывает
согласно даташиту (и судя по АВРстудии), пара R31,R30 обнуляется, RAMPZ
становится равным 1. А потом в цикле его затирают нулем. И следующий байт
из флеша считывается с адреса 0х00000 вместо 0х10000... :-((
Грустно, если честно... Массив данных более 32К мы не можем, статические
адреса функций мы коверкаем, теперь еще и флеш-память мы умеем только 64К
Опять курить ассемблер?
Вопрос - у всех так? Утереться и постараться получить удовольствие?
А может это только версия 4.12 искривилась?