analog.c: use atomic macros.

This commit is contained in:
Markus Hitter 2013-10-19 21:59:32 +02:00
parent ccec75d9f8
commit 59599a3552
1 changed files with 4 additions and 11 deletions

View File

@ -118,17 +118,10 @@ uint16_t analog_read(uint8_t index) {
if (analog_mask > 0) {
uint16_t r;
uint8_t sreg;
// save interrupt flag
sreg = SREG;
// disable interrupts
cli();
// atomic 16-bit copy
r = adc_result[index];
// restore interrupt flag
SREG = sreg;
ATOMIC_START
// atomic 16-bit copy
r = adc_result[index];
ATOMIC_END
return r;
} else {