void APP_Start(void) { PL_Init(); /* platform initialization */ //TEST_Test(); EVNT_SetEvent(EVNT_INIT); /* set initial event */ #if PL_HAS_RTOS if (FRTOS1_xTaskCreate(AppTask, (signed portCHAR *)"App", configMINIMAL_STACK_SIZE, NULL, tskIDLE_PRIORITY, NULL) != pdPASS) { for(;;){} /* error */ } RTOS_Run(); #else APP_Loop(); #endif #if 0 for(;;) { #if PL_HAS_MEALY MEALY_Step(); #else LED1_On(); WAIT1_Waitms(300); LED1_Off(); LED2_On(); WAIT1_Waitms(300); LED2_Off(); LED3_On(); WAIT1_Waitms(300); LED3_Off(); #endif } #endif /* just in case we leave the main application loop */ PL_Deinit(); }
static void AppTask(void *pvParameters) { (void)pvParameters; /* not used */ #if PL_HAS_SHELL //CLS1_SendStr("Hello World!\r\n", CLS1_GetStdio()->stdOut); #endif for(;;) { #if PL_HAS_EVENTS EVNT_HandleEvent(APP_EventHandler); /* handle pending events */ #endif #if PL_HAS_KEYS && PL_NOF_KEYS>0 KEY_Scan(); /* scan keys */ #endif #if PL_HAS_MEALY MEALY_Step(); #endif FRTOS1_vTaskDelay(100/portTICK_RATE_MS); } }
static void APP_Loop(void) { int i; #if PL_HAS_SHELL CLS1_SendStr("Hello World!\r\n", CLS1_GetStdio()->stdOut); #endif for(;;) { #if PL_HAS_EVENTS EVNT_HandleEvent(APP_EventHandler); /* handle pending events */ #endif #if PL_HAS_KEYS && PL_NOF_KEYS>0 KEY_Scan(); /* scan keys */ #endif #if PL_HAS_MEALY MEALY_Step(); #endif WAIT1_Waitms(100); } }
static void AppTask(void* param) { //CLS1_SendStr("INFO: Application startup!\r\n", CLS1_GetStdio()->stdOut); EVENT_Set(EVENT_Start); ///*Sets the start up event while(1) { EVENT_HandleEvent(APP_HandleEvents); #if PL_HAS_KEYS && PL_NUM_KEYS > 0 KEY_Scan(); ///*Scans the Joystick shield for input #endif #if PL_HAS_MEALY MEALY_Step(); #endif LED1_TOGGLE; FRTOS1_vTaskDelay(10 / portTICK_RATE_MS); } }