Macro embassy_rp::bind_interrupts
source · macro_rules! bind_interrupts { ($vis:vis struct $name:ident { $($irq:ident => $($handler:ty),*;)* }) => { ... }; }
Expand description
Macro to bind interrupts to handlers.
This defines the right interrupt handlers, and creates a unit struct (like struct Irqs;
)
and implements the right [Binding
]s for it. You can pass this struct to drivers to
prove at compile-time that the right interrupts have been bound.
Example of how to bind one interrupt:
ⓘ
use embassy_rp::{bind_interrupts, usb, peripherals};
bind_interrupts!(struct Irqs {
USBCTRL_IRQ => usb::InterruptHandler<peripherals::USB>;
});