| usec = 1000*smc + (ccdelta/(F_CPU_ACTUAL/1000000)); | usec = 1000*smc + (ccdelta/(F_CPU_ACTUAL/1000000)); | ||||
| return usec; | return usec; | ||||
| } | } | ||||
| uint32_t micros(void) | |||||
| { | |||||
| uint32_t ccdelta, usec, smc; | |||||
| do { | |||||
| smc = systick_millis_count; | |||||
| ccdelta = ARM_DWT_CYCCNT - systick_cycle_count; | |||||
| } while ( smc != systick_millis_count ); // repeat if systick_isr | |||||
| usec = 1000*smc + (ccdelta/(F_CPU_ACTUAL/1000000)); | |||||
| return usec; | |||||
| } | |||||
| #if 0 // kept to compare test to cycle count micro() | #if 0 // kept to compare test to cycle count micro() | ||||
| extern uint32_t otmicros(void); | extern uint32_t otmicros(void); |