コード例 #1
0
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();
}
コード例 #2
0
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);
  }
}
コード例 #3
0
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);
  }
}
コード例 #4
0
ファイル: RTOS.c プロジェクト: miklpikl/My_ROBO
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);
	}
}