Skip to content

Add mechanism to set SoftwareSerial interrupt priority #753

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

Closed
wants to merge 1 commit into from

Conversation

sjasonsmith
Copy link
Contributor

Summary

Add a mechanism to set timer interrupt priority for the timer used By SoftwareSerial.

This PR fixes/implements the following bugs/features

Validation

I have reworked an in-development version of Marlin to use this to configure the SoftwareSerial interrupt priority during HAL initialization. Using digital outputs added to the interrupt handlers, I was able to confirm the nesting of multiple preempted timer interrupts, as desired.

In the image below it can be seen that the serial interrupt is the highest of the three priorities, allowing it to preempt both of the other timer interrupts.

Triple_Preemption

Fixes #751

@fpistm
Copy link
Member

fpistm commented Nov 4, 2019

Hi @sjasonsmith
Thanks for this PR, during the review, I've though this will be more generic to add a mechanism to set timer interrupt priority for the timer used By HardwareTimer then it is possible to do it for SoftwareSerial.
Could you check #755 and give us your feedback.

@fpistm fpistm added the abandoned No more work on this label Nov 5, 2019
@fpistm
Copy link
Member

fpistm commented Nov 5, 2019

Replaced by #755

@fpistm fpistm closed this Nov 5, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
abandoned No more work on this
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Allow override for SoftwareSerial timer ISR priority
2 participants