Trait embassy_stm32::interrupt::typelevel::Interrupt

source ·
pub trait Interrupt: Interrupt {
    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 CAN1_RX1

source§

const IRQ: Interrupt = super::Interrupt::CAN1_RX1

source§

impl Interrupt for CAN1_SCE

source§

const IRQ: Interrupt = super::Interrupt::CAN1_SCE

source§

impl Interrupt for DMA1_CHANNEL1

source§

const IRQ: Interrupt = super::Interrupt::DMA1_CHANNEL1

source§

impl Interrupt for DMA1_CHANNEL2

source§

const IRQ: Interrupt = super::Interrupt::DMA1_CHANNEL2

source§

impl Interrupt for DMA1_CHANNEL3

source§

const IRQ: Interrupt = super::Interrupt::DMA1_CHANNEL3

source§

impl Interrupt for DMA1_CHANNEL4

source§

const IRQ: Interrupt = super::Interrupt::DMA1_CHANNEL4

source§

impl Interrupt for DMA1_CHANNEL5

source§

const IRQ: Interrupt = super::Interrupt::DMA1_CHANNEL5

source§

impl Interrupt for DMA1_CHANNEL6

source§

const IRQ: Interrupt = super::Interrupt::DMA1_CHANNEL6

source§

impl Interrupt for DMA1_CHANNEL7

source§

const IRQ: Interrupt = super::Interrupt::DMA1_CHANNEL7

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 EXTI9_5

source§

const IRQ: Interrupt = super::Interrupt::EXTI9_5

source§

impl Interrupt for EXTI15_10

source§

const IRQ: Interrupt = super::Interrupt::EXTI15_10

source§

impl Interrupt for FLASH

source§

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

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 PVD

source§

const IRQ: Interrupt = super::Interrupt::PVD

source§

impl Interrupt for RCC

source§

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

source§

impl Interrupt for RTC

source§

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

source§

impl Interrupt for RTC_ALARM

source§

const IRQ: Interrupt = super::Interrupt::RTC_ALARM

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 TAMPER

source§

const IRQ: Interrupt = super::Interrupt::TAMPER

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 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 USBWAKEUP

source§

const IRQ: Interrupt = super::Interrupt::USBWAKEUP

source§

impl Interrupt for USB_HP_CAN1_TX

source§

const IRQ: Interrupt = super::Interrupt::USB_HP_CAN1_TX

source§

impl Interrupt for USB_LP_CAN1_RX0

source§

const IRQ: Interrupt = super::Interrupt::USB_LP_CAN1_RX0

source§

impl Interrupt for WWDG

source§

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