You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a limitation in the timers LL library. The limitation is from the 16bit counters running with max prescalar.
Potentially could double available time by changing TIM peripherals clocksource to a slower divisions.
As we’re using the timers to run the ADC and USB drivers they need to be efficient when fast.
Could extend the library in software with an extra incrementer per timer. Add an extra callback function that will be called from the hardware timer callback. Then the nested callback executes when the counter finishes decrementing.
Algorithm should use the smallest incrementer count possible to reduce callbacks.
Each timer would need extra:
countresetvalue
countdown
fnptr (the real callback)
We need an extra fnptr as the original one must point at the decrementer function.
The text was updated successfully, but these errors were encountered:
Closing in preference for a move to #339 for this kind of thing. Allowing these longer intervals requires some kind of software timer mechanism which #339 already provides, so let's just lean on that. The metros are still useful for non-drifting metronomes (ie, even if the Lua env gets clogged up, the metro remains perfectly in time with the CPU).
This is a limitation in the timers LL library. The limitation is from the 16bit counters running with max prescalar.
Potentially could double available time by changing TIM peripherals clocksource to a slower divisions.
As we’re using the timers to run the ADC and USB drivers they need to be efficient when fast.
Could extend the library in software with an extra incrementer per timer. Add an extra callback function that will be called from the hardware timer callback. Then the nested callback executes when the counter finishes decrementing.
Algorithm should use the smallest incrementer count possible to reduce callbacks.
Each timer would need extra:
We need an extra fnptr as the original one must point at the decrementer function.
The text was updated successfully, but these errors were encountered: