GCC AVR. Как разместить во Flash массив указателей на функции?
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
|
Отправлено
ДМ 08 июня 2003 г. 20:15
|
|
|
|
И как будет выглядеть в этом случае косвенный вызов?
В IAR это делается так:
Определение массива-
__flash void (*ptr_Proc[])(void) = { Proc1, Proc 2};
косвенный вызов-
(*ptr_Proc [a])();
А как сделать то же самое на GCC?
Спасибо!
Составить ответ
|||
Конференция
|||
Архив
Ответы
- Есть две проблемы: 1) Размещение во флеше 2) Вызов функции — viiv (09.06.2003 13:22, 126 байт)
- Извиняюсь, получилось - был другой свой косяк. Может быть еще подскажете, как попросить уважаемого компилятора не делить адреса по полам, чтобы мне их потом не умножать. Такой же прикол у IAR. Спасибо! — ДМ (09.06.2003 17:45, пустое)
- Если не трудно, то можно пожалуйста примерчик, а то что-то не пошло - компилятор ругается. Спасибо! — ДМ (09.06.2003 17:22, пустое)
- Вызов не грех сделать и на ассемблере. Switch не походит по тому, что время выполнения команды будет пропорционально количеству условий. — ДМ (09.06.2003 17:15, пустое)
- А почему switch () не подходит? — viiv (09.06.2003 13:52, пустое)
- Делал так, вроде работало. — Igor2 (09.06.2003 09:09, 670 байт)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru