#[doc = r"Register block"] #[repr(C)] pub struct RegisterBlock { #[doc = "0x00 - Control"] pub ctrla: crate::Reg, _reserved1: [u8; 0x03], #[doc = "0x04 - Software Event"] pub swevt: crate::Reg, #[doc = "0x08 - Priority Control"] pub prictrl: crate::Reg, _reserved3: [u8; 0x07], #[doc = "0x10 - Channel Pending Interrupt"] pub intpend: crate::Reg, _reserved4: [u8; 0x02], #[doc = "0x14 - Interrupt Status"] pub intstatus: crate::Reg, #[doc = "0x18 - Busy Channels"] pub busych: crate::Reg, #[doc = "0x1c - Ready Users"] pub readyusr: crate::Reg, #[doc = "0x20..0x120 - CHANNEL\\[%s\\]"] pub channel: [CHANNEL; 32], #[doc = "0x120..0x22c - User Multiplexer n"] pub user: [crate::Reg; 67], } #[doc = r"Register block"] #[repr(C)] pub struct CHANNEL { #[doc = "0x00 - Channel n Control"] pub channel: crate::Reg, #[doc = "0x04 - Channel n Interrupt Enable Clear"] pub chintenclr: crate::Reg, #[doc = "0x05 - Channel n Interrupt Enable Set"] pub chintenset: crate::Reg, #[doc = "0x06 - Channel n Interrupt Flag Status and Clear"] pub chintflag: crate::Reg, #[doc = "0x07 - Channel n Status"] pub chstatus: crate::Reg, } #[doc = r"Register block"] #[doc = "CHANNEL\\[%s\\]"] pub mod channel; #[doc = "CTRLA register accessor: an alias for `Reg`"] pub type CTRLA = crate::Reg; #[doc = "Control"] pub mod ctrla; #[doc = "SWEVT register accessor: an alias for `Reg`"] pub type SWEVT = crate::Reg; #[doc = "Software Event"] pub mod swevt; #[doc = "PRICTRL register accessor: an alias for `Reg`"] pub type PRICTRL = crate::Reg; #[doc = "Priority Control"] pub mod prictrl; #[doc = "INTPEND register accessor: an alias for `Reg`"] pub type INTPEND = crate::Reg; #[doc = "Channel Pending Interrupt"] pub mod intpend; #[doc = "INTSTATUS register accessor: an alias for `Reg`"] pub type INTSTATUS = crate::Reg; #[doc = "Interrupt Status"] pub mod intstatus; #[doc = "BUSYCH register accessor: an alias for `Reg`"] pub type BUSYCH = crate::Reg; #[doc = "Busy Channels"] pub mod busych; #[doc = "READYUSR register accessor: an alias for `Reg`"] pub type READYUSR = crate::Reg; #[doc = "Ready Users"] pub mod readyusr; #[doc = "USER register accessor: an alias for `Reg`"] pub type USER = crate::Reg; #[doc = "User Multiplexer n"] pub mod user;