atsam4lc4b-pac 0.3.2

Peripheral access crate for the ATSAM4LC4B microcontroller
Documentation
#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
    #[doc = "0x00 - Channel Status Register"]
    pub chsr: CHSR,
    #[doc = "0x04 - Channel Enable Register"]
    pub cher: CHER,
    #[doc = "0x08 - Channel Disable Register"]
    pub chdr: CHDR,
    _reserved3: [u8; 0x04],
    #[doc = "0x10 - Software Event"]
    pub sev: SEV,
    #[doc = "0x14 - Channel / User Busy"]
    pub busy: BUSY,
    _reserved5: [u8; 0x08],
    #[doc = "0x20 - Trigger Interrupt Mask Enable Register"]
    pub trier: TRIER,
    #[doc = "0x24 - Trigger Interrupt Mask Disable Register"]
    pub tridr: TRIDR,
    #[doc = "0x28 - Trigger Interrupt Mask Register"]
    pub trimr: TRIMR,
    _reserved8: [u8; 0x04],
    #[doc = "0x30 - Trigger Status Register"]
    pub trsr: TRSR,
    #[doc = "0x34 - Trigger Status Clear Register"]
    pub trscr: TRSCR,
    _reserved10: [u8; 0x08],
    #[doc = "0x40 - Overrun Interrupt Mask Enable Register"]
    pub ovier: OVIER,
    #[doc = "0x44 - Overrun Interrupt Mask Disable Register"]
    pub ovidr: OVIDR,
    #[doc = "0x48 - Overrun Interrupt Mask Register"]
    pub ovimr: OVIMR,
    _reserved13: [u8; 0x04],
    #[doc = "0x50 - Overrun Status Register"]
    pub ovsr: OVSR,
    #[doc = "0x54 - Overrun Status Clear Register"]
    pub ovscr: OVSCR,
    _reserved15: [u8; 0xa8],
    #[doc = "0x100..0x14c - Channel Multiplexer"]
    pub chmx: [CHMX; 19],
    _reserved16: [u8; 0xb4],
    #[doc = "0x200..0x27c - Event Shaper"]
    pub evs: [EVS; 31],
    _reserved17: [u8; 0x84],
    #[doc = "0x300 - Input Glitch Filter Divider Register"]
    pub igfdr: IGFDR,
    _reserved18: [u8; 0xf4],
    #[doc = "0x3f8 - Parameter"]
    pub parameter: PARAMETER,
    #[doc = "0x3fc - Version"]
    pub version: VERSION,
}
#[doc = "BUSY (r) register accessor: an alias for `Reg<BUSY_SPEC>`"]
pub type BUSY = crate::Reg<busy::BUSY_SPEC>;
#[doc = "Channel / User Busy"]
pub mod busy;
#[doc = "CHDR (w) register accessor: an alias for `Reg<CHDR_SPEC>`"]
pub type CHDR = crate::Reg<chdr::CHDR_SPEC>;
#[doc = "Channel Disable Register"]
pub mod chdr;
#[doc = "CHER (w) register accessor: an alias for `Reg<CHER_SPEC>`"]
pub type CHER = crate::Reg<cher::CHER_SPEC>;
#[doc = "Channel Enable Register"]
pub mod cher;
#[doc = "CHMX (rw) register accessor: an alias for `Reg<CHMX_SPEC>`"]
pub type CHMX = crate::Reg<chmx::CHMX_SPEC>;
#[doc = "Channel Multiplexer"]
pub mod chmx;
#[doc = "CHSR (r) register accessor: an alias for `Reg<CHSR_SPEC>`"]
pub type CHSR = crate::Reg<chsr::CHSR_SPEC>;
#[doc = "Channel Status Register"]
pub mod chsr;
#[doc = "EVS (rw) register accessor: an alias for `Reg<EVS_SPEC>`"]
pub type EVS = crate::Reg<evs::EVS_SPEC>;
#[doc = "Event Shaper"]
pub mod evs;
#[doc = "IGFDR (rw) register accessor: an alias for `Reg<IGFDR_SPEC>`"]
pub type IGFDR = crate::Reg<igfdr::IGFDR_SPEC>;
#[doc = "Input Glitch Filter Divider Register"]
pub mod igfdr;
#[doc = "OVIDR (w) register accessor: an alias for `Reg<OVIDR_SPEC>`"]
pub type OVIDR = crate::Reg<ovidr::OVIDR_SPEC>;
#[doc = "Overrun Interrupt Mask Disable Register"]
pub mod ovidr;
#[doc = "OVIER (w) register accessor: an alias for `Reg<OVIER_SPEC>`"]
pub type OVIER = crate::Reg<ovier::OVIER_SPEC>;
#[doc = "Overrun Interrupt Mask Enable Register"]
pub mod ovier;
#[doc = "OVIMR (r) register accessor: an alias for `Reg<OVIMR_SPEC>`"]
pub type OVIMR = crate::Reg<ovimr::OVIMR_SPEC>;
#[doc = "Overrun Interrupt Mask Register"]
pub mod ovimr;
#[doc = "OVSCR (w) register accessor: an alias for `Reg<OVSCR_SPEC>`"]
pub type OVSCR = crate::Reg<ovscr::OVSCR_SPEC>;
#[doc = "Overrun Status Clear Register"]
pub mod ovscr;
#[doc = "OVSR (r) register accessor: an alias for `Reg<OVSR_SPEC>`"]
pub type OVSR = crate::Reg<ovsr::OVSR_SPEC>;
#[doc = "Overrun Status Register"]
pub mod ovsr;
#[doc = "PARAMETER (r) register accessor: an alias for `Reg<PARAMETER_SPEC>`"]
pub type PARAMETER = crate::Reg<parameter::PARAMETER_SPEC>;
#[doc = "Parameter"]
pub mod parameter;
#[doc = "SEV (w) register accessor: an alias for `Reg<SEV_SPEC>`"]
pub type SEV = crate::Reg<sev::SEV_SPEC>;
#[doc = "Software Event"]
pub mod sev;
#[doc = "TRIDR (w) register accessor: an alias for `Reg<TRIDR_SPEC>`"]
pub type TRIDR = crate::Reg<tridr::TRIDR_SPEC>;
#[doc = "Trigger Interrupt Mask Disable Register"]
pub mod tridr;
#[doc = "TRIER (w) register accessor: an alias for `Reg<TRIER_SPEC>`"]
pub type TRIER = crate::Reg<trier::TRIER_SPEC>;
#[doc = "Trigger Interrupt Mask Enable Register"]
pub mod trier;
#[doc = "TRIMR (r) register accessor: an alias for `Reg<TRIMR_SPEC>`"]
pub type TRIMR = crate::Reg<trimr::TRIMR_SPEC>;
#[doc = "Trigger Interrupt Mask Register"]
pub mod trimr;
#[doc = "TRSCR (w) register accessor: an alias for `Reg<TRSCR_SPEC>`"]
pub type TRSCR = crate::Reg<trscr::TRSCR_SPEC>;
#[doc = "Trigger Status Clear Register"]
pub mod trscr;
#[doc = "TRSR (r) register accessor: an alias for `Reg<TRSR_SPEC>`"]
pub type TRSR = crate::Reg<trsr::TRSR_SPEC>;
#[doc = "Trigger Status Register"]
pub mod trsr;
#[doc = "VERSION (r) register accessor: an alias for `Reg<VERSION_SPEC>`"]
pub type VERSION = crate::Reg<version::VERSION_SPEC>;
#[doc = "Version"]
pub mod version;