Skip to content

CANoopEn 3.0.9

Choose a tag to compare

@markusforrer markusforrer released this 10 Aug 14:58
· 8 commits to master since this release

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 first Proceed(); ClearTickCountSource()
    returns to the internal counter.

    Until now every timeout was derived from a counter that Proceed() advanced by a fixed
    CoSettings::CoCycleTime per 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. Where Proceed() runs on a jittery cadence,
    registering a source is a few lines — see
    Time base.
Commits
  • Set version to 3.0.9 (8e70727)
  • Set changelog release version to 3.0.9 (8181d6f)
  • Add CHANGELOG.md and describe the release model in the readme (760f609)
  • CO-7: add optional tick count source as time base (0c431ec)
  • CANoopEn 3.0 - CANopen stack C++/OOP, initial public release (3344155)