1
0
mirror of https://github.com/arduino/Arduino.git synced 2024-12-02 13:24:12 +01:00
Arduino/hardware/arduino/avr/libraries/SPI
Cristian Maglie a9735bf91f Fix atomicity issues in SPI::beginTransaction and SPI::endTransaction (Andrew Kroll)
Previously, it could happen that SPI::beginTransaction was
interrupted by an ISR, while it is changing the SPI_AVR_EIMSK
register or interruptSave variable (it seems that there is
a small window after changing SPI_AVR_EIMSK where an interrupt
might still occur). If this happens, interruptSave is overwritten
with an invalid value, permanently disabling the pin interrupts.

To prevent this, disable interrupts globally while changing
these values.
2014-11-25 15:56:11 +01:00
..
examples Revert "SPI library to new format" 2013-11-21 15:05:36 +01:00
keywords.txt Revert "SPI library to new format" 2013-11-21 15:05:36 +01:00
library.properties missing paragraph field in library.properties 2014-07-18 20:08:01 +02:00
SPI.cpp [avr] Made SPI.usingInterrupt() synchronized (Andrew Kroll) 2014-11-25 15:56:11 +01:00
SPI.h Fix atomicity issues in SPI::beginTransaction and SPI::endTransaction (Andrew Kroll) 2014-11-25 15:56:11 +01:00