|
Написал пробный шар
// файл Boot.c void WorkApp(void); __C_task void main(void) //Файл App.c void WorkApp(void) IAR компилит вызов aaa[0]() как ICALL, а хочется чтобы Сразу поясню зачем хочу: LDI R30,0
E-mail:
info@telesys.ru
#include
#include
typedef void (*PWF)();
__flash const PWF aaa[1]@0x200={WorkApp};
{
for{;;} aaa[0]();
}
#include
#include
{
//чего-то делаем
}
был RCALL на фиксированный адрес где лежит RJMP на функцию.
1. Boot пишется в проц навечно и герметично закрывается навеки,
а Арр могу менять когда жизнь заставит.
2. Для скорости (нафига мне столько?)
LDI R31,2
LPM R16,Z+
LPM R17,Z
MOVW R31:R30,R17:R16
ICALL
Ответы