Skip to content

true noInterrupts() interrupts() support #192

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 3 commits into from
Closed

true noInterrupts() interrupts() support #192

wants to merge 3 commits into from

Conversation

Makuna
Copy link
Collaborator

@Makuna Makuna commented May 6, 2015

This will expose the inherent cpu instruction cycle count, which is handy for bit bang timing.
Further, this fixes the interrupts() and noInterrupts() routines to honor original intent.

Due to the priority interrupt system on the chip, it supports the ability to suppress interrupts at different levels. The levels are from 0 to 14, where most are on 0, but some of the WiFi is done on 14.

The current implementation of noInterrupts() doesn't block level 14 interrupts, causing routines that rely on not being interrupted to malfunction. This change will honor the original intent of noInterrupts().

Makuna added 2 commits May 6, 2015 08:42
@igrr
Copy link
Member

igrr commented May 7, 2015

Could it also be handy to suppress interrupts only up to certain level? (I.e. disable timers but keep WiFi running)

@Makuna
Copy link
Collaborator Author

Makuna commented May 7, 2015

yes, requires a refactor into a macro due to rsil requirement that the level be a constant.
I am closing this pull request and issuing a new one with that refactor.

due to the rsil requirement that the level be a constant, the method was
moved into a macro
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