PaulStoffregen
041bfbe9ed
Optimize micros()
5 years ago
PaulStoffregen
bd4a9e2cfb
Make sure micros() is monotonic
5 years ago
Defragster
aa3b459699
Removed volatile tag on dummy var systick_safe_read
6 years ago
Defragster
b60d6774ac
Use ARM Synchronization
for micros() Use: ARM Synchronization Primitives, include of arm_math.h
Get systick_isr data safely without disable interrupts, uses systick_safe_read as indicator variable
6 years ago
Defragster
8cb4de3469
expose ccmicros for testing
micros() unchanged - minor systick_isr() diversion - one line added to systick_isr.
6 years ago
Defragster
c4c5a0170f
opps - left in compared code
6 years ago
Defragster
edbf0b4c0c
Confirm no systick_isr() interruption
This saves a cycle - and checks both values to avoid _isr change of either value based on code/execution
6 years ago
Defragster
6ba4fe8e3d
Replace micros for one using CycCnt
Alternate micros() extends millis() using ARM_DWT_CYCCNT
> Also makes unused_interrupt_vector() weak to allow user override like Teensy3
6 years ago
PaulStoffregen
c4ab57c003
EventResponder, MillisTimer, yield
6 years ago
PaulStoffregen
e687673ddf
First commit, Teensy4 work-in-progress
6 years ago