/* * \brief Turns off the given interrupt. */ void detachInterrupt(uint32_t pin) { EExt_Interrupts in = digitalPinToInterrupt(pin); if (in == NOT_AN_INTERRUPT || in == EXTERNAL_INT_NMI) return; EIC->INTENCLR.reg = EIC_INTENCLR_EXTINT(1 << in); }
void SPIClass::beginTransaction(SPISettings settings) { if (interruptMode != SPI_IMODE_NONE) { if (interruptMode & SPI_IMODE_GLOBAL) { interruptSave = interruptsStatus(); noInterrupts(); } else if (interruptMode & SPI_IMODE_EXTINT) EIC->INTENCLR.reg = EIC_INTENCLR_EXTINT(interruptMask); } config(settings); }