Skip to content

Support configuration of the scheduler tick source by client #119

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

neboskreb
Copy link
Contributor

This PR offers better control over the scheduler tick sources while keeping full compatibility to the default setting of WDT 15ms. Those developers who use WDT tick source won't need to change anything.

Main point for externalizing the configuration and ISR function is that their implementation fully dependent on the nature of ticks source used. Giving full control over these functions to the app developer is better from the architectural standpoint, because he is the one who knows the concrete timing source used. Supporting all possible variations within Arduino_FreeRTOS would bloat the codebase and increase our burden of testing.

Long story short, Arduino_FreeRTOS expects the app developer to provide two functions:
A) the initialization of their tick source, and
B) the ISR handler for it.

Documentation how to do it and code example are provided.

PR tested on actual device Atmega2560 with Timer0 as tick source.

@neboskreb neboskreb force-pushed the feature/better-support-for-task-tick-sources branch from b1b8191 to fbdf084 Compare April 24, 2023 03:53
@feilipu
Copy link
Owner

feilipu commented Apr 24, 2023

Noted with thanks.

Finishing up something on Z80 currently, so will get to review this PR over the next weekend or so.

@feilipu feilipu merged commit 863f31b into feilipu:master May 1, 2023
@feilipu feilipu mentioned this pull request Aug 28, 2023
@neboskreb neboskreb deleted the feature/better-support-for-task-tick-sources branch September 29, 2024 13:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants