Skip to content
New issue

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

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

Already on GitHub? # to your account

Use DIR register for pin direction checking #728

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

jacoblgit
Copy link

Replace DIRSET with DIR register when checking if a pin is configured as output in digitalWrite().

According to the SAMD21 datasheet, DIRSET is designed as a write-only register without guaranteed read behavior, while DIR explicitly represents the current direction state.

Fixes #727

Replace DIRSET with DIR register when checking if a pin is
configured as output in digitalWrite(). DIR is the designated
register for reading current pin direction state.

According to the SAMD21 datasheet, DIRSET is designed as a
write-only register without guaranteed read behavior, while
DIR explicitly represents the current direction state.

Fixes arduino#727
@CLAassistant
Copy link

CLAassistant commented Mar 2, 2025

CLA assistant check
All committers have signed the CLA.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Bug: digitalWrite() incorrectly uses DIRSET register instead of DIR register for pin direction checking
2 participants