Автор: kodak_service
« : 12 Апреля 2016, 10:30:17 »Думаю, что это полуавтоматический бот (типа первых машин для игры в шахматы с человеком внутри)
Перечитав некоторую инфу по С я так понял что нужно прописывать что-то вроде
wc.lpszMenuName=НАЗВАНИЕ_ФУНКЦИИ_С_МЕНЮ;
Где можно найти инфу о том как прописывать эту функцию?
_______________
Белоснежка И Охотник 2
Поэтому "всего-то" надо как то впихнуть массив вместо строки.Ну тогда инициализировать пустыми, а потом в коде присваивать.
MENU_ITEM(Menu_1, Menu_2, Menu_3, NULL_MENU, NULL_MENU, NULL, NULL, "PL.10^");
MENU_ITEM(Menu_2, Menu_3, Menu_1, NULL_MENU, NULL_MENU, NULL, NULL, "0BG-^");
MENU_ITEM(Menu_3, Menu_1, Menu_2, NULL_MENU, NULL_MENU, NULL, NULL, "CT0-^");
void PrintLED_F(BYTE *mass ){
char* table = "\\x00\\x35\\x77\\x55\\xff\\x00............. ";
SPI_Init();
STB_LOW;
OutLED(DispAdressSet);
while (pgm_read_byte(mass)!=\'^\'){
if (pgm_read_byte(mass)==\'.\'){
pgm_read_byte(mass++);
OutLED(table[pgm_read_byte(mass++)]|0x80); //Выводим символ с точкой
}
OutLED(table[pgm_read_byte(mass++)]);
}
STB_HI;
}
Жалко всю таблицу в код тащить, там нужен то десяток символов, а в твоем приемере она вообще будет в озу висеть. И раскиданы они по всему полю...Ну это-то да, если бы не русская П, то в 85 уложилось бы. Можно попробовать оптимизировать.
BYTE table[256] = {0x00,0x35,0x77,0x55,0xff,0x00, ............. };
switch (GetButtonPress())
{
case UP:
Menu_Navigate(MENU_PREVIOUS);
break;
case DOWN:
Menu_Navigate(MENU_NEXT);
break;
case ENTER:
Menu_EnterCurrentItem();
Menu_Navigate(Menu_GetCurrentMenu());
break;
default:
break;
}