|
В программе делается длинный свитч-казе для обработки нажатия клавиши конкретно для каждого типа окна. Ниже - пример для IAR for AVR, все менюхинаходятся во флэше
typedef struct{
char const __flash *name_menu; //заголовок меню
unsigned char type; //тип меню
void const __flash* high_menu; //указатель на меню верхнего уровня
char const __flash *help_menu; //указатель на окно помощи
void const __flash* run; //указатель на функцию
void const __flash* (*setting_menu); //указатель на массив указателей на меню нижнего уровня
unsigned char *chData; //указатель на пременную хранящую текуще выбранное значение меню
unsigned char cnt_setting; //количество подпунктов главного меню
char const __flash *bmp; //указатель на рисунок
}TMainMenu;
E-mail: info@telesys.ru