void audioMenuItem(int input) { audioMenu(input); if (input == KEY_ESC && exitReady() == 1) { stateMenu = settingsMenu; stateMenu(KEY_RIGHT); } }
int main(void) { tm gmt; WatchDogDisable(); NutDelay(100); SysInitIO(); SPIinit(); LedInit(); LcdLowLevelInit(); Uart0DriverInit(); Uart0DriverStart(); LogInit(); LogMsg_P(LOG_INFO, PSTR("-----------------------------------------------------------------------------------------------")); CardInit(); X12Init(); if (X12RtcGetClock(&gmt) == 0) { LogMsg_P(LOG_INFO, PSTR("RTC time [%02d:%02d:%02d]\n"), gmt.tm_hour, gmt.tm_min, gmt.tm_sec ); } if (At45dbInit() == AT45DB041B) { } RcInit(); KbInit(); SysControlMainBeat(ON); // enable 4.4 msecs hartbeat interrupt initMenu(); sei(); NutTimerInit(); NutThreadSetPriority(1); int keyvalue = KbGetKey(); int old; LcdBackLight(LCD_BACKLIGHT_ON); if(NutRegisterDevice(&DEV_ETHER, 0x8300, 5))printf("Error: No LAN device\n"); else printf("Lan device initialized\n"); for (;;) { keyvalue = KbGetKey(); if(old != keyvalue){ stateMenu(keyvalue); old = keyvalue; } NutSleep(100); WatchDogRestart(); } return(0); // never reached, but 'main()' returns a non-void, so..... }
void buttonHandler(int keyvalue) { if(old != keyvalue){ //printf("%d",keyvalue); stateMenu(keyvalue); old = keyvalue; switch (keyvalue) { case KEY_01: NutThreadCreate("Bs", SleepMode, NULL, 512); break; case KEY_02: break; case KEY_03: alarmOn = 1; printf("DEBUG: Beep on\n"); NutThreadCreate("Bq", AlarmBeep,NULL,512); break; case KEY_04: break; case KEY_05: break; case KEY_ALT: printf("Stop alarm"); alarmOn=0; stopStream(); break; case KEY_ESC: break; case KEY_UP: break; case KEY_OK: break; case KEY_LEFT: break; case KEY_DOWN: break; case KEY_RIGHT: break; case KEY_RESET: // powerbutton +alt key printf("reset"); resetEEPROM(); reset(); break; default: break; } } }