diff --git a/radio/src/targets/simu/simpgmspace.cpp b/radio/src/targets/simu/simpgmspace.cpp index 282644bc2..44e249e15 100644 --- a/radio/src/targets/simu/simpgmspace.cpp +++ b/radio/src/targets/simu/simpgmspace.cpp @@ -95,6 +95,18 @@ uint16_t getTmr2MHz() #endif } +U64 CoGetOSTime(void) +{ + // one tick is 2ms +#if defined(_MSC_VER) + return GetTickCount()/2; +#else + struct timespec ts; + clock_gettime(CLOCK_MONOTONIC, &ts); + return ((U64)ts.tv_sec * 1000 + ts.tv_nsec / 1000000) /2; +#endif +} + void simuInit() { #if defined(STM32) diff --git a/radio/src/targets/simu/simpgmspace.h b/radio/src/targets/simu/simpgmspace.h index e2853d112..317505c93 100644 --- a/radio/src/targets/simu/simpgmspace.h +++ b/radio/src/targets/simu/simpgmspace.h @@ -429,7 +429,7 @@ OS_TID CoCreateTask(FUNCPtr task, void *argv, uint32_t parameter, void * stk, ui #define CoWaitForSingleFlag(...) 0 #define CoTickDelay(x) sleep(2*(x)) #define CoCreateFlag(...) 0 -#define CoGetOSTime(...) 0 +U64 CoGetOSTime(void); #define UART_Stop(...) #define UART3_Stop(...) #define USART_GetITStatus(...) 0