CANoopEn 3.0.9
Build: https://github.com/xyntos-ch/CANoopEnTest/actions/runs/31400915025
Added
-
Optional tick count source as time base (CO-7). The new interface
ICoTickCountSource
lets the application hand the millisecond counter of its platform to the stack — SysTick on a
microcontroller, a monotonic clock under an operating system. Register it with
CoTimestamp::SetTickCountSource()before the firstProceed();ClearTickCountSource()
returns to the internal counter.Until now every timeout was derived from a counter that
Proceed()advanced by a fixed
CoSettings::CoCycleTimeper call, so jitter in the call interval shifted the SDO timeout,
heartbeat production and monitoring, the EMCY inhibit time and the SYNC period alike. On a real
clock those timings are independent of the caller.
Changed
CoTimestamp::IncrementTimestamp()has no effect while a tick count source is registered, so
the two time bases can never run side by side.
Compatibility
- Fully backwards compatible. Without a registered tick count source the behaviour is exactly as
before; no application change is required. WhereProceed()runs on a jittery cadence,
registering a source is a few lines — see
Time base.