[an error occurred while processing this directive]
|
Готов выслушать любые замечания. Напоминаю - я только начал изучать С++.
Сильно не пинайте. Вот до чего додумался за выходные:
char __flash _str1_CRTC[] = " Калибр. термо- ";
char __flash _str2_CRTC[] = "преобразователя ";
char __flash _str1_Calibr[] = " Калибровка ";
char __flash _str2_Calibr[] = " канала %1d ";
char __flash _str_type[] = "Тип ТП канала %1d";
char __flash _str_TCM50[] = " ТСМ50 ";
char __flash _str_TCM100[] = " ТСМ100 ";
char __flash _str_TCP50[] = " ТСП50 ";
char __flash _str_TCP100[] = " ТСП100 ";
char __flash _CalibrChannel[]= "Калибр. канала %1d";
char __flash _CalibrTCM50[] = " ТСМ50 \x001=%3.1d\x004\x043";
char __flash _CalibrTCM100[] = "ТСМ100 \x001=%3.1d\x004\x043";
char __flash _CalibrTCP50[] = " ТСП50 \x001=%3.1d\x004\x043";
char __flash _CalibrTCP100[] = "ТСП100 \x001=%3.1d\x004\x043";
__no_init __eeprom int nCh;
__no_init __eeprom int TypeTC[3];
__no_init __eeprom int Tabl_TC[3][sizeof(Tabl_T_TCP)/sizeof(int)]; // таблицы напряжений для термосопротивлений
class TItemMenu;
class TItemMenu
{
public:
struct ItemMenu
{
char __flash *Text1;
char __flash *Text2;
int __eeprom *Arg1; // аргумент 1
int __eeprom *Arg2; // аргумент 2
int __eeprom *Arg3; // аргумент 3
int Param1; // параметр 1
int Param2; // параметр 2
int nMenu; // номер меню
};
TItemMenu *MenuPtr;
virtual void ShowMenu();
};
class MenuRTC : public TItemMenu
{
ItemMenu __flash *menuRTC;
public:
enum eRTC {channel1, channel2, channel3, tcm50, tcm100, tcp50, tcp100};
MenuRTC();
void ShowMenu();
};
MenuRTC::ItemMenu __flash menuRTC[] =
{
_str1_CRTC, _str2_CRTC, 0, 0, 0, 0, 0, 0,
_str1_Calibr, _str2_Calibr, &nCh, 0, 0, MenuRTC::channel1, MenuRTC::channel3, 1,
_str_type, 0, &nCh, &TypeTC[0], 0, MenuRTC::tcm50, MenuRTC::tcp100, 2,
_CalibrChannel, 0, &nCh, &TypeTC[0], &Tabl_TC[0][0], 0, 0, 3,
};
MenuRTC::MenuRTC()
{
}
void MenuRTC::ShowMenu(void)
{
;
}
int main(void)
{
MenuRTC Menu_RTC;
TItemMenu *MenuPtr;
MenuPtr = &Menu_RTC;
while (1)
{
MenuPtr->ShowMenu();
}
}
Но и попутно вопрос.
Как сделать инициализацию __flash menuRTC[] в конструкторе?
E-mail: info@telesys.ru