Skip to content
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

Make rx tail/head atomic in HardwareSerial #16

Closed
wants to merge 10 commits into from

Conversation

AnHardt
Copy link
Owner

@AnHardt AnHardt commented Feb 4, 2016

Reading a bit in https://github.com/arduino/Arduino/pulls?utf8=%E2%9C%93&q=is%3Apr+is%3Aopen+HardwareSerial+ i got the idea we might have a similar problem - having a race condition when program and interrupt are updating tail and head.

Switching from int to 'volatile uint8_t' is save as long the buffers are small enough.

My tests tell about a recognizable reduced error rate at 250000bd.

@AnHardt AnHardt closed this Feb 9, 2016
@AnHardt AnHardt deleted the atominc_head-tail branch February 9, 2016 20:25
AnHardt pushed a commit that referenced this pull request Aug 25, 2019
# This is the 1st commit message:

Add Support for ADIMLab Granty

# The commit message #2 will be skipped:

# Update Configuration.h

# The commit message #3 will be skipped:

# Add files via upload
#
# Add Support for ADIMLab Granty

# The commit message #4 will be skipped:

# Create Configuration.h

# The commit message #5 will be skipped:

# Delete Configuration.h

# The commit message #6 will be skipped:

# Create Test.h

# The commit message #7 will be skipped:

# Add files via upload

# The commit message #8 will be skipped:

# Delete Test.h

# The commit message #9 will be skipped:

# Delete Configuration.h

# The commit message #10 will be skipped:

# Delete Configuration_adv.h

# The commit message #11 will be skipped:

# Add files via upload
#
# Add ADIMLab Pins

# The commit message #12 will be skipped:

# Add files via upload
#
# Add Bootscreen

# The commit message #13 will be skipped:

# Update Configuration.h
#
# Add Bootscreen

# The commit message #14 will be skipped:

# Update pins.h
#
# Add ADIMLab Board

# The commit message #15 will be skipped:

# Update boards.h
#
# Add ADIMLab Granty

# The commit message #16 will be skipped:

# Update Makefile
#
# Add ADIMLab Granty

# The commit message #17 will be skipped:

# Update boards.h

# The commit message #18 will be skipped:

# Update Makefile
AnHardt pushed a commit that referenced this pull request Aug 25, 2019
* # This is a combination of 18 commits.
# This is the 1st commit message:

Add Support for ADIMLab Granty

# The commit message #2 will be skipped:

# Update Configuration.h

# The commit message #3 will be skipped:

# Add files via upload
#
# Add Support for ADIMLab Granty

# The commit message #4 will be skipped:

# Create Configuration.h

# The commit message #5 will be skipped:

# Delete Configuration.h

# The commit message #6 will be skipped:

# Create Test.h

# The commit message #7 will be skipped:

# Add files via upload

# The commit message #8 will be skipped:

# Delete Test.h

# The commit message #9 will be skipped:

# Delete Configuration.h

# The commit message #10 will be skipped:

# Delete Configuration_adv.h

# The commit message #11 will be skipped:

# Add files via upload
#
# Add ADIMLab Pins

# The commit message #12 will be skipped:

# Add files via upload
#
# Add Bootscreen

# The commit message #13 will be skipped:

# Update Configuration.h
#
# Add Bootscreen

# The commit message #14 will be skipped:

# Update pins.h
#
# Add ADIMLab Board

# The commit message #15 will be skipped:

# Update boards.h
#
# Add ADIMLab Granty

# The commit message #16 will be skipped:

# Update Makefile
#
# Add ADIMLab Granty

# The commit message #17 will be skipped:

# Update boards.h

# The commit message #18 will be skipped:

# Update Makefile

* Add Support for ADIMLab Granty

* Optimize bootscreen

* Update Makefile

Updated Description

* Update boards.h

Updated Description

* Update pins_HJC2560C_REV2.h

Updated Description

* Update Configuration.h

Added Author + Custom_Machine_Name

* Create _Bootscreen.h

Add Bootscreen

* Add files via upload

Add ADIMLab Granty v1

* Update boards.h

Add ADIMLab Granty v1

* Update Makefile

Add ADIMLab Granty v1

* Update pins_HJC2560C_REV2.h

* Consolidate Granty configs

* config updates
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.

4 participants