Ejemplo n.º 1
0
int main( void )
{
	//initMemoryPool();
	//setup hardware
	updateActiveLoggerConfig();
	int success = setupHardware();
	if (! success) fatalError(FATAL_ERROR_HARDWARE);
	init_logger_data();
	initMessaging();

	xTaskCreate( vUSBCDCTask,		( signed portCHAR * ) "USB", 				mainUSB_TASK_STACK, NULL, 	mainUSB_PRIORITY, 		NULL );
	xTaskCreate( onUSBCommTask,	( signed portCHAR * ) "OnUSBComm", 				mainUSB_COMM_STACK, NULL, 	USB_COMM_TASK_PRIORITY, NULL );

#ifdef LUA_ENABLED
	startLuaTask();
#endif
	createFileWriterTask();
	createLoggerTaskEx();
	createGPIOTasks();
	createConnectivityTask();
	startGPSTask();

	/* Start the scheduler.

   NOTE : Tasks run in system mode and the scheduler runs in Supervisor mode.
   The processor MUST be in supervisor mode when vTaskStartScheduler is
   called.  The demo applications included in the FreeRTOS.org download switch
   to supervisor mode prior to main being called.  If you are not using one of
   these demo application projects then ensure Supervisor mode is used here. */
   vTaskStartScheduler();
   fatalError(FATAL_ERROR_SCHEDULER);

   return 0;
}
void setupTask(void *delTask)
{
        initialize_tracks();
        initialize_logger_config();
        InitLoggerHardware();
        initMessaging();

        startUSBCommTask(RCP_INPUT_PRIORITY);
        startGPIOTasks(RCP_INPUT_PRIORITY);
        startGPSTask(RCP_INPUT_PRIORITY);
        startOBD2Task(RCP_INPUT_PRIORITY);
        startFileWriterTask(RCP_OUTPUT_PRIORITY);
        startConnectivityTask(RCP_OUTPUT_PRIORITY);
        startLoggerTaskEx(RCP_LOGGING_PRIORITY);
        startLuaTask(RCP_LUA_PRIORITY);

        /* Removes this setup task from the scheduler */
        if (delTask)
                vTaskDelete(NULL);
}
Ejemplo n.º 3
0
void setupTask(void *params)
{
    (void)params;

    initialize_tracks();
    initialize_logger_config();
    initialize_script();
    InitLoggerHardware();
    initMessaging();

    startGPIOTasks			( GPIO_TASK_PRIORITY );
    startUSBCommTask		( USB_COMM_TASK_PRIORITY );
    startLuaTask			( LUA_TASK_PRIORITY );
    startFileWriterTask		( FILE_WRITER_TASK_PRIORITY );
    startConnectivityTask	( CONNECTIVITY_TASK_PRIORITY );
    startGPSTask			( GPS_TASK_PRIORITY );
    startOBD2Task			( OBD2_TASK_PRIORITY);
    startLoggerTaskEx		( LOGGER_TASK_PRIORITY );

    /* Removes this setup task from the scheduler */
    vTaskDelete(NULL);
}
Ejemplo n.º 4
0
void setupTask(void *param)
{
        initialize_tracks();
        initialize_logger_config();

        InitLoggerHardware();
        initMessaging();

        startGPSTask(RCP_INPUT_PRIORITY);

#if USB_SERIAL_SUPPORT
        startUSBCommTask(RCP_INPUT_PRIORITY);
#endif

        start_CAN_task(RCP_INPUT_PRIORITY);
        startConnectivityTask(RCP_OUTPUT_PRIORITY);
        startLoggerTaskEx(RCP_LOGGING_PRIORITY);

#if GPIO_CHANNELS > 0
        startGPIOTasks(RCP_INPUT_PRIORITY);
#endif

#if SDCARD_SUPPORT
        startFileWriterTask(RCP_OUTPUT_PRIORITY);
#endif

#if LUA_SUPPORT
        lua_task_init(RCP_LUA_PRIORITY);
#endif

#if WIFI_SUPPORT
        wifi_init_task(RCP_OUTPUT_PRIORITY, RCP_INPUT_PRIORITY);
#endif

        /* Removes this setup task from the scheduler */
        pr_info("[main] Setup Task complete!\r\n");
        vTaskDelete(NULL);
}