Компилятор не ругается, но массив во Flash не создается и в вызове отсутствутет команда LPM
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено ДМ 09 июня 2003 г. 11:34
В ответ на: Делал так, вроде работало. отправлено Igor2 09 июня 2003 г. 09:09

Такое впечатление, что массив создается в SRAM. Делал так:
char Func1 (void);
char Func2 (void);
prog_char(*F_ptr_Func[])(void) = {Func1, Func2};

вызов:
F_ptr_Func[a]();

А на счет качества компиляции - при ближнем рассмотрении GCC делает код компактнее, чем IAR за счет того, что GCC не производит новую загрузку переменной в регистры, когда производится подряд несколько обращений к одной и той же переменной.

Спасибо!

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru