lpc43xx 0.1.0

Register definitions for the NXP LPC43xx microcontroller platform, generated through svd2rust
Documentation
#[doc = r" Register block"]
#[repr(C)]
pub struct RegisterBlock {
    #[doc = "0x00 - Interrupt Location Register"]
    pub ilr: ILR,
    _reserved0: [u8; 4usize],
    #[doc = "0x08 - Clock Control Register"]
    pub ccr: CCR,
    #[doc = "0x0c - Counter Increment Interrupt Register"]
    pub ciir: CIIR,
    #[doc = "0x10 - Alarm Mask Register"]
    pub amr: AMR,
    #[doc = "0x14 - Consolidated Time Register 0"]
    pub ctime0: CTIME0,
    #[doc = "0x18 - Consolidated Time Register 1"]
    pub ctime1: CTIME1,
    #[doc = "0x1c - Consolidated Time Register 2"]
    pub ctime2: CTIME2,
    #[doc = "0x20 - Seconds Register"]
    pub sec: SEC,
    #[doc = "0x24 - Minutes Register"]
    pub min: MIN,
    #[doc = "0x28 - Hours Register"]
    pub hrs: HRS,
    #[doc = "0x2c - Day of Month Register"]
    pub dom: DOM,
    #[doc = "0x30 - Day of Week Register"]
    pub dow: DOW,
    #[doc = "0x34 - Day of Year Register"]
    pub doy: DOY,
    #[doc = "0x38 - Months Register"]
    pub month: MONTH,
    #[doc = "0x3c - Years Register"]
    pub year: YEAR,
    #[doc = "0x40 - Calibration Value Register"]
    pub calibration: CALIBRATION,
    _reserved1: [u8; 28usize],
    #[doc = "0x60 - Alarm value for Seconds"]
    pub asec: ASEC,
    #[doc = "0x64 - Alarm value for Minutes"]
    pub amin: AMIN,
    #[doc = "0x68 - Alarm value for Hours"]
    pub ahrs: AHRS,
    #[doc = "0x6c - Alarm value for Day of Month"]
    pub adom: ADOM,
    #[doc = "0x70 - Alarm value for Day of Week"]
    pub adow: ADOW,
    #[doc = "0x74 - Alarm value for Day of Year"]
    pub adoy: ADOY,
    #[doc = "0x78 - Alarm value for Months"]
    pub amon: AMON,
    #[doc = "0x7c - Alarm value for Year"]
    pub ayrs: AYRS,
    #[doc = "0x80 - Event Monitor/Recorder Status register. Contains status flags for event channels and other Event Monitor/Recorder conditions."]
    pub erstatus: ERSTATUS,
    #[doc = "0x84 - Event Monitor/Recorder Control register. Contains bits that control actions for the event channels as well as for Event Monitor/Recorder setup."]
    pub ercontro: ERCONTRO,
    #[doc = "0x88 - Event Monitor/Recorder Counters register. Allows reading the counters associated with the event channels."]
    pub ercounters: ERCOUNTERS,
    _reserved2: [u8; 4usize],
    #[doc = "0x90 - Event Monitor/Recorder First Stamp register for channel 0. Retains the time stamp for the first event on channel 0."]
    pub erfirststamp: [ERFIRSTSTAMP; 3],
    _reserved3: [u8; 4usize],
    #[doc = "0xa0 - Event Monitor/Recorder Last Stamp register for channel 0. Retains the time stamp for the last (i.e. most recent) event on channel 0."]
    pub erlaststamp: [ERLASTSTAMP; 3],
}
#[doc = "Interrupt Location Register"]
pub struct ILR {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Location Register"]
pub mod ilr;
#[doc = "Clock Control Register"]
pub struct CCR {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Clock Control Register"]
pub mod ccr;
#[doc = "Counter Increment Interrupt Register"]
pub struct CIIR {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Counter Increment Interrupt Register"]
pub mod ciir;
#[doc = "Alarm Mask Register"]
pub struct AMR {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Alarm Mask Register"]
pub mod amr;
#[doc = "Consolidated Time Register 0"]
pub struct CTIME0 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Consolidated Time Register 0"]
pub mod ctime0;
#[doc = "Consolidated Time Register 1"]
pub struct CTIME1 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Consolidated Time Register 1"]
pub mod ctime1;
#[doc = "Consolidated Time Register 2"]
pub struct CTIME2 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Consolidated Time Register 2"]
pub mod ctime2;
#[doc = "Seconds Register"]
pub struct SEC {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Seconds Register"]
pub mod sec;
#[doc = "Minutes Register"]
pub struct MIN {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Minutes Register"]
pub mod min;
#[doc = "Hours Register"]
pub struct HRS {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Hours Register"]
pub mod hrs;
#[doc = "Day of Month Register"]
pub struct DOM {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Day of Month Register"]
pub mod dom;
#[doc = "Day of Week Register"]
pub struct DOW {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Day of Week Register"]
pub mod dow;
#[doc = "Day of Year Register"]
pub struct DOY {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Day of Year Register"]
pub mod doy;
#[doc = "Months Register"]
pub struct MONTH {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Months Register"]
pub mod month;
#[doc = "Years Register"]
pub struct YEAR {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Years Register"]
pub mod year;
#[doc = "Calibration Value Register"]
pub struct CALIBRATION {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Calibration Value Register"]
pub mod calibration;
#[doc = "Alarm value for Seconds"]
pub struct ASEC {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Alarm value for Seconds"]
pub mod asec;
#[doc = "Alarm value for Minutes"]
pub struct AMIN {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Alarm value for Minutes"]
pub mod amin;
#[doc = "Alarm value for Hours"]
pub struct AHRS {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Alarm value for Hours"]
pub mod ahrs;
#[doc = "Alarm value for Day of Month"]
pub struct ADOM {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Alarm value for Day of Month"]
pub mod adom;
#[doc = "Alarm value for Day of Week"]
pub struct ADOW {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Alarm value for Day of Week"]
pub mod adow;
#[doc = "Alarm value for Day of Year"]
pub struct ADOY {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Alarm value for Day of Year"]
pub mod adoy;
#[doc = "Alarm value for Months"]
pub struct AMON {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Alarm value for Months"]
pub mod amon;
#[doc = "Alarm value for Year"]
pub struct AYRS {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Alarm value for Year"]
pub mod ayrs;
#[doc = "Event Monitor/Recorder Control register. Contains bits that control actions for the event channels as well as for Event Monitor/Recorder setup."]
pub struct ERCONTRO {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Event Monitor/Recorder Control register. Contains bits that control actions for the event channels as well as for Event Monitor/Recorder setup."]
pub mod ercontro;
#[doc = "Event Monitor/Recorder Status register. Contains status flags for event channels and other Event Monitor/Recorder conditions."]
pub struct ERSTATUS {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Event Monitor/Recorder Status register. Contains status flags for event channels and other Event Monitor/Recorder conditions."]
pub mod erstatus;
#[doc = "Event Monitor/Recorder Counters register. Allows reading the counters associated with the event channels."]
pub struct ERCOUNTERS {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Event Monitor/Recorder Counters register. Allows reading the counters associated with the event channels."]
pub mod ercounters;
#[doc = "Event Monitor/Recorder First Stamp register for channel 0. Retains the time stamp for the first event on channel 0."]
pub struct ERFIRSTSTAMP {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Event Monitor/Recorder First Stamp register for channel 0. Retains the time stamp for the first event on channel 0."]
pub mod erfirststamp;
#[doc = "Event Monitor/Recorder Last Stamp register for channel 0. Retains the time stamp for the last (i.e. most recent) event on channel 0."]
pub struct ERLASTSTAMP {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Event Monitor/Recorder Last Stamp register for channel 0. Retains the time stamp for the last (i.e. most recent) event on channel 0."]
pub mod erlaststamp;