собственно, программа чайника такая: void main(void) { IO0DIR |= 0x000000F0; // ножки на выход IO0SET = 0x000000F0; // установить 1 в порт while (1); } зашиваю с помощью J-link, запускаю - работает("1" на ножки выдаёт). выключаю питание, отключаю J-link, включаю питание - не работает ("1" на ножки не выдаёт).
замыкаю-отпускаю ресет на землю - не работает.
По факту: ресет в 1 стоит (супервизор ADM803SAKS + подтяжка 27 кОм + конденсатор на землю 0,01 мкФ), частота кварца 14,7 МГц есть.
Кроме сказанного rezidentом надо еще проверить выполнение всех условий запуска приложения встроенным загрузчиком, таких как: контрольная сумма векторов, правильная подтяжка на ноге P0.14.
--------------------
На любой вопрос даю любой ответ "Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Спасибо за ответы. 1) Где в Iar Embedded workbench 5.4 это настраивать? копаю в Project -> Options, не нахожу. в окне "Watch" MEMMAP=1, т.е. 01: User Flash Mode. Interrupt vectors are not re-mapped and reside in Flash. 2) P 0.14 теперь подтянул через 1 кОм на +3,3В (питание). (запускаться от этого не стал) 3) контрольная сумма векторов (Сигнатура программы?) - её надо в памяти по адресу 0х14 смотреть? View -> memory?
Должна быть в норме вроде...(AN10404) 6.2 IAR Systems IAR provides their startup code so that the end-user gets a jump-start into their application by starting to code to C itself. The startup code usually named as ”lpc2xxx_cstartup.s79” can be found with the example projects that accompany the software.
Заработало....при подтяжке P0.14 на питание. Спасибо за ответы.