embassy-stm32

Crates

git

Versions

stm32h7s7a8

Flavors

embassy_stm32::interrupt::typelevel

Trait Interrupt

pub trait Interrupt: SealedInterrupt {
    const IRQ: Interrupt;

    // Provided methods
    unsafe fn enable() { ... }
    fn disable() { ... }
    fn is_enabled() -> bool { ... }
    fn is_pending() -> bool { ... }
    fn pend() { ... }
    fn unpend() { ... }
    fn get_priority() -> Priority { ... }
    fn set_priority(prio: Priority) { ... }
    fn set_priority_with_cs(cs: CriticalSection<'_>, prio: Priority) { ... }
}
Expand description

Type-level interrupt.

This trait is implemented for all typelevel interrupt types in this module.

Required Associated Constants§

source

const IRQ: Interrupt

Interrupt enum variant.

This allows going from typelevel interrupts (one type per interrupt) to non-typelevel interrupts (a single Interrupt enum type, with one variant per interrupt).

Provided Methods§

source

unsafe fn enable()

Enable the interrupt.

source

fn disable()

Disable the interrupt.

source

fn is_enabled() -> bool

Check if interrupt is enabled.

source

fn is_pending() -> bool

Check if interrupt is pending.

source

fn pend()

Set interrupt pending.

source

fn unpend()

Unset interrupt pending.

source

fn get_priority() -> Priority

Get the priority of the interrupt.

source

fn set_priority(prio: Priority)

Set the interrupt priority.

source

fn set_priority_with_cs(cs: CriticalSection<'_>, prio: Priority)

Set the interrupt priority with an already-acquired critical section

Object Safety§

This trait is not object safe.

Implementors§

source§

impl Interrupt for ADC1_2

source§

const IRQ: Interrupt = super::Interrupt::ADC1_2

source§

impl Interrupt for ADF1_FLT0

source§

const IRQ: Interrupt = super::Interrupt::ADF1_FLT0

source§

impl Interrupt for CEC

source§

const IRQ: Interrupt = super::Interrupt::CEC

source§

impl Interrupt for CORDIC

source§

const IRQ: Interrupt = super::Interrupt::CORDIC

source§

impl Interrupt for CRS

source§

const IRQ: Interrupt = super::Interrupt::CRS

source§

impl Interrupt for CRYP

source§

const IRQ: Interrupt = super::Interrupt::CRYP

source§

impl Interrupt for DCMIPP

source§

const IRQ: Interrupt = super::Interrupt::DCMIPP

source§

impl Interrupt for DMA2D

source§

const IRQ: Interrupt = super::Interrupt::DMA2D

source§

impl Interrupt for DTS

source§

const IRQ: Interrupt = super::Interrupt::DTS

source§

impl Interrupt for ETH

source§

const IRQ: Interrupt = super::Interrupt::ETH

source§

impl Interrupt for EXTI0

source§

const IRQ: Interrupt = super::Interrupt::EXTI0

source§

impl Interrupt for EXTI1

source§

const IRQ: Interrupt = super::Interrupt::EXTI1

source§

impl Interrupt for EXTI2

source§

const IRQ: Interrupt = super::Interrupt::EXTI2

source§

impl Interrupt for EXTI3

source§

const IRQ: Interrupt = super::Interrupt::EXTI3

source§

impl Interrupt for EXTI4

source§

const IRQ: Interrupt = super::Interrupt::EXTI4

source§

impl Interrupt for EXTI5

source§

const IRQ: Interrupt = super::Interrupt::EXTI5

source§

impl Interrupt for EXTI6

source§

const IRQ: Interrupt = super::Interrupt::EXTI6

source§

impl Interrupt for EXTI7

source§

const IRQ: Interrupt = super::Interrupt::EXTI7

source§

impl Interrupt for EXTI8

source§

const IRQ: Interrupt = super::Interrupt::EXTI8

source§

impl Interrupt for EXTI9

source§

const IRQ: Interrupt = super::Interrupt::EXTI9

source§

impl Interrupt for EXTI10

source§

const IRQ: Interrupt = super::Interrupt::EXTI10

source§

impl Interrupt for EXTI11

source§

const IRQ: Interrupt = super::Interrupt::EXTI11

source§

impl Interrupt for EXTI12

source§

const IRQ: Interrupt = super::Interrupt::EXTI12

source§

impl Interrupt for EXTI13

source§

const IRQ: Interrupt = super::Interrupt::EXTI13

source§

impl Interrupt for EXTI14

source§

const IRQ: Interrupt = super::Interrupt::EXTI14

source§

impl Interrupt for EXTI15

source§

const IRQ: Interrupt = super::Interrupt::EXTI15

source§

impl Interrupt for FDCAN1_IT0

source§

const IRQ: Interrupt = super::Interrupt::FDCAN1_IT0

source§

impl Interrupt for FDCAN1_IT1

source§

const IRQ: Interrupt = super::Interrupt::FDCAN1_IT1

source§

impl Interrupt for FDCAN2_IT0

source§

const IRQ: Interrupt = super::Interrupt::FDCAN2_IT0

source§

impl Interrupt for FDCAN2_IT1

source§

const IRQ: Interrupt = super::Interrupt::FDCAN2_IT1

source§

impl Interrupt for FLASH

source§

const IRQ: Interrupt = super::Interrupt::FLASH

source§

impl Interrupt for FMC

source§

const IRQ: Interrupt = super::Interrupt::FMC

source§

impl Interrupt for FPU

source§

const IRQ: Interrupt = super::Interrupt::FPU

source§

impl Interrupt for GFXMMU

source§

const IRQ: Interrupt = super::Interrupt::GFXMMU

source§

impl Interrupt for GFXTIM

source§

const IRQ: Interrupt = super::Interrupt::GFXTIM

source§

impl Interrupt for GPDMA1_CHANNEL0

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL0

source§

impl Interrupt for GPDMA1_CHANNEL1

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL1

source§

impl Interrupt for GPDMA1_CHANNEL2

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL2

source§

impl Interrupt for GPDMA1_CHANNEL3

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL3

source§

impl Interrupt for GPDMA1_CHANNEL4

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL4

source§

impl Interrupt for GPDMA1_CHANNEL5

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL5

source§

impl Interrupt for GPDMA1_CHANNEL6

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL6

source§

impl Interrupt for GPDMA1_CHANNEL7

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL7

source§

impl Interrupt for GPDMA1_CHANNEL8

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL8

source§

impl Interrupt for GPDMA1_CHANNEL9

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL9

source§

impl Interrupt for GPDMA1_CHANNEL10

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL10

source§

impl Interrupt for GPDMA1_CHANNEL11

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL11

source§

impl Interrupt for GPDMA1_CHANNEL12

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL12

source§

impl Interrupt for GPDMA1_CHANNEL13

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL13

source§

impl Interrupt for GPDMA1_CHANNEL14

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL14

source§

impl Interrupt for GPDMA1_CHANNEL15

source§

const IRQ: Interrupt = super::Interrupt::GPDMA1_CHANNEL15

source§

impl Interrupt for GPU2D

source§

const IRQ: Interrupt = super::Interrupt::GPU2D

source§

impl Interrupt for GPU2D_ER

source§

const IRQ: Interrupt = super::Interrupt::GPU2D_ER

source§

impl Interrupt for HASH

source§

const IRQ: Interrupt = super::Interrupt::HASH

source§

impl Interrupt for HPDMA1_CHANNEL0

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL0

source§

impl Interrupt for HPDMA1_CHANNEL1

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL1

source§

impl Interrupt for HPDMA1_CHANNEL2

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL2

source§

impl Interrupt for HPDMA1_CHANNEL3

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL3

source§

impl Interrupt for HPDMA1_CHANNEL4

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL4

source§

impl Interrupt for HPDMA1_CHANNEL5

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL5

source§

impl Interrupt for HPDMA1_CHANNEL6

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL6

source§

impl Interrupt for HPDMA1_CHANNEL7

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL7

source§

impl Interrupt for HPDMA1_CHANNEL8

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL8

source§

impl Interrupt for HPDMA1_CHANNEL9

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL9

source§

impl Interrupt for HPDMA1_CHANNEL10

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL10

source§

impl Interrupt for HPDMA1_CHANNEL11

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL11

source§

impl Interrupt for HPDMA1_CHANNEL12

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL12

source§

impl Interrupt for HPDMA1_CHANNEL13

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL13

source§

impl Interrupt for HPDMA1_CHANNEL14

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL14

source§

impl Interrupt for HPDMA1_CHANNEL15

source§

const IRQ: Interrupt = super::Interrupt::HPDMA1_CHANNEL15

source§

impl Interrupt for I2C1_ER

source§

const IRQ: Interrupt = super::Interrupt::I2C1_ER

source§

impl Interrupt for I2C1_EV

source§

const IRQ: Interrupt = super::Interrupt::I2C1_EV

source§

impl Interrupt for I2C2_ER

source§

const IRQ: Interrupt = super::Interrupt::I2C2_ER

source§

impl Interrupt for I2C2_EV

source§

const IRQ: Interrupt = super::Interrupt::I2C2_EV

source§

impl Interrupt for I2C3_ER

source§

const IRQ: Interrupt = super::Interrupt::I2C3_ER

source§

impl Interrupt for I2C3_EV

source§

const IRQ: Interrupt = super::Interrupt::I2C3_EV

source§

impl Interrupt for I3C1_ER

source§

const IRQ: Interrupt = super::Interrupt::I3C1_ER

source§

impl Interrupt for I3C1_EV

source§

const IRQ: Interrupt = super::Interrupt::I3C1_EV

source§

impl Interrupt for I3C1_WKUP

source§

const IRQ: Interrupt = super::Interrupt::I3C1_WKUP

source§

impl Interrupt for ICACHE

source§

const IRQ: Interrupt = super::Interrupt::ICACHE

source§

impl Interrupt for IWDG

source§

const IRQ: Interrupt = super::Interrupt::IWDG

source§

impl Interrupt for JPEG

source§

const IRQ: Interrupt = super::Interrupt::JPEG

source§

impl Interrupt for LPTIM1

source§

const IRQ: Interrupt = super::Interrupt::LPTIM1

source§

impl Interrupt for LPTIM2

source§

const IRQ: Interrupt = super::Interrupt::LPTIM2

source§

impl Interrupt for LPTIM3

source§

const IRQ: Interrupt = super::Interrupt::LPTIM3

source§

impl Interrupt for LPTIM4

source§

const IRQ: Interrupt = super::Interrupt::LPTIM4

source§

impl Interrupt for LPTIM5

source§

const IRQ: Interrupt = super::Interrupt::LPTIM5

source§

impl Interrupt for LPUART1

source§

const IRQ: Interrupt = super::Interrupt::LPUART1

source§

impl Interrupt for LTDC

source§

const IRQ: Interrupt = super::Interrupt::LTDC

source§

impl Interrupt for LTDC_ER

source§

const IRQ: Interrupt = super::Interrupt::LTDC_ER

source§

impl Interrupt for MCE1

source§

const IRQ: Interrupt = super::Interrupt::MCE1

source§

impl Interrupt for MCE2

source§

const IRQ: Interrupt = super::Interrupt::MCE2

source§

impl Interrupt for MCE3

source§

const IRQ: Interrupt = super::Interrupt::MCE3

source§

impl Interrupt for MDIOS

source§

const IRQ: Interrupt = super::Interrupt::MDIOS

source§

impl Interrupt for OTG_FS

source§

const IRQ: Interrupt = super::Interrupt::OTG_FS

source§

impl Interrupt for OTG_HS

source§

const IRQ: Interrupt = super::Interrupt::OTG_HS

source§

impl Interrupt for PKA

source§

const IRQ: Interrupt = super::Interrupt::PKA

source§

impl Interrupt for PSSI

source§

const IRQ: Interrupt = super::Interrupt::PSSI

source§

impl Interrupt for PVD_PVM

source§

const IRQ: Interrupt = super::Interrupt::PVD_PVM

source§

impl Interrupt for RAMECC

source§

const IRQ: Interrupt = super::Interrupt::RAMECC

source§

impl Interrupt for RCC

source§

const IRQ: Interrupt = super::Interrupt::RCC

source§

impl Interrupt for RNG

source§

const IRQ: Interrupt = super::Interrupt::RNG

source§

impl Interrupt for RTC

source§

const IRQ: Interrupt = super::Interrupt::RTC

source§

impl Interrupt for SAES

source§

const IRQ: Interrupt = super::Interrupt::SAES

source§

impl Interrupt for SAI1_A

source§

const IRQ: Interrupt = super::Interrupt::SAI1_A

source§

impl Interrupt for SAI1_B

source§

const IRQ: Interrupt = super::Interrupt::SAI1_B

source§

impl Interrupt for SAI2_A

source§

const IRQ: Interrupt = super::Interrupt::SAI2_A

source§

impl Interrupt for SAI2_B

source§

const IRQ: Interrupt = super::Interrupt::SAI2_B

source§

impl Interrupt for SDMMC1

source§

const IRQ: Interrupt = super::Interrupt::SDMMC1

source§

impl Interrupt for SDMMC2

source§

const IRQ: Interrupt = super::Interrupt::SDMMC2

source§

impl Interrupt for SPDIF_RX

source§

const IRQ: Interrupt = super::Interrupt::SPDIF_RX

source§

impl Interrupt for SPI1

source§

const IRQ: Interrupt = super::Interrupt::SPI1

source§

impl Interrupt for SPI2

source§

const IRQ: Interrupt = super::Interrupt::SPI2

source§

impl Interrupt for SPI3

source§

const IRQ: Interrupt = super::Interrupt::SPI3

source§

impl Interrupt for SPI4

source§

const IRQ: Interrupt = super::Interrupt::SPI4

source§

impl Interrupt for SPI5

source§

const IRQ: Interrupt = super::Interrupt::SPI5

source§

impl Interrupt for SPI6

source§

const IRQ: Interrupt = super::Interrupt::SPI6

source§

impl Interrupt for TAMP

source§

const IRQ: Interrupt = super::Interrupt::TAMP

source§

impl Interrupt for TIM1_BRK

source§

const IRQ: Interrupt = super::Interrupt::TIM1_BRK

source§

impl Interrupt for TIM1_CC

source§

const IRQ: Interrupt = super::Interrupt::TIM1_CC

source§

impl Interrupt for TIM1_TRG_COM

source§

const IRQ: Interrupt = super::Interrupt::TIM1_TRG_COM

source§

impl Interrupt for TIM1_UP

source§

const IRQ: Interrupt = super::Interrupt::TIM1_UP

source§

impl Interrupt for TIM2

source§

const IRQ: Interrupt = super::Interrupt::TIM2

source§

impl Interrupt for TIM3

source§

const IRQ: Interrupt = super::Interrupt::TIM3

source§

impl Interrupt for TIM4

source§

const IRQ: Interrupt = super::Interrupt::TIM4

source§

impl Interrupt for TIM5

source§

const IRQ: Interrupt = super::Interrupt::TIM5

source§

impl Interrupt for TIM6

source§

const IRQ: Interrupt = super::Interrupt::TIM6

source§

impl Interrupt for TIM7

source§

const IRQ: Interrupt = super::Interrupt::TIM7

source§

impl Interrupt for TIM9

source§

const IRQ: Interrupt = super::Interrupt::TIM9

source§

impl Interrupt for TIM12

source§

const IRQ: Interrupt = super::Interrupt::TIM12

source§

impl Interrupt for TIM13

source§

const IRQ: Interrupt = super::Interrupt::TIM13

source§

impl Interrupt for TIM14

source§

const IRQ: Interrupt = super::Interrupt::TIM14

source§

impl Interrupt for TIM15

source§

const IRQ: Interrupt = super::Interrupt::TIM15

source§

impl Interrupt for TIM16

source§

const IRQ: Interrupt = super::Interrupt::TIM16

source§

impl Interrupt for TIM17

source§

const IRQ: Interrupt = super::Interrupt::TIM17

source§

impl Interrupt for UART4

source§

const IRQ: Interrupt = super::Interrupt::UART4

source§

impl Interrupt for UART5

source§

const IRQ: Interrupt = super::Interrupt::UART5

source§

impl Interrupt for UART7

source§

const IRQ: Interrupt = super::Interrupt::UART7

source§

impl Interrupt for UART8

source§

const IRQ: Interrupt = super::Interrupt::UART8

source§

impl Interrupt for UCPD1

source§

const IRQ: Interrupt = super::Interrupt::UCPD1

source§

impl Interrupt for USART1

source§

const IRQ: Interrupt = super::Interrupt::USART1

source§

impl Interrupt for USART2

source§

const IRQ: Interrupt = super::Interrupt::USART2

source§

impl Interrupt for USART3

source§

const IRQ: Interrupt = super::Interrupt::USART3

source§

impl Interrupt for WAKEUP_PIN

source§

const IRQ: Interrupt = super::Interrupt::WAKEUP_PIN

source§

impl Interrupt for WWDG

source§

const IRQ: Interrupt = super::Interrupt::WWDG

source§

impl Interrupt for XSPI1

source§

const IRQ: Interrupt = super::Interrupt::XSPI1

source§

impl Interrupt for XSPI2

source§

const IRQ: Interrupt = super::Interrupt::XSPI2