Merge branch 'master' of https://github.com/cleanflight/cleanflight
This commit is contained in:
commit
1026dbde0b
|
@ -99,6 +99,12 @@ uint32_t micros(void)
|
||||||
do {
|
do {
|
||||||
ms = sysTickUptime;
|
ms = sysTickUptime;
|
||||||
cycle_cnt = SysTick->VAL;
|
cycle_cnt = SysTick->VAL;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If the SysTick timer expired during the previous instruction, we need to give it a little time for that
|
||||||
|
* interrupt to be delivered before we can recheck sysTickUptime:
|
||||||
|
*/
|
||||||
|
asm volatile("\tnop\n");
|
||||||
} while (ms != sysTickUptime);
|
} while (ms != sysTickUptime);
|
||||||
return (ms * 1000) + (usTicks * 1000 - cycle_cnt) / usTicks;
|
return (ms * 1000) + (usTicks * 1000 - cycle_cnt) / usTicks;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue