Increment epoch time from vTickISR

savindra wrote on Wednesday, March 01, 2017:

Hi ,

I am following below method to sync my external RTC with internal timer.
Incrementing epoch millliseconds from vTickISR.

But i want to sync my epoch milliseconds with external RTC just after my system startsup.
But vTickISR is called when FreeRTOS scheduler is started so i have to wait till scheduler is started.
Is there any function in FreeRTOS that can tell me that scheduler is started so that once scheduler is started
i can sync my epcohms with RTC and it keep on incrementing just after syncing.


#pragma interrupt ( vTickISR( vect = VECT( configTICKVECTOR ), enable ) )
void vTickISR( void )
/ Increment the tick, and perform any processing the new tick value
necessitates. /
///increment epoch seconds

	if( xTaskIncrementTick() != pdFALSE )



rtel wrote on Wednesday, March 01, 2017:

Look at line 552 (at the time of writing) in the following file.

If you set configUSE_DAEMON_TASK_STARTUP_HOOK to 1 you must provide an
implementation of:

void vApplicationDaemonTaskStartupHook( void );

Assuming the timer task is the highest priority task in the system -
which is normally the case - then vApplicationDaemonTaskStartupHook()
will get called once when the first task starts executing.

Does that meet your needs?