#[doc = r" Register block"]
#[repr(C)]
pub struct RegisterBlock {
#[doc = "0x00 - control register 1"]
pub cr1: CR1,
#[doc = "0x04 - control register 2"]
pub cr2: CR2,
#[doc = "0x08 - configuration register 1"]
pub cfg1: CFG1,
#[doc = "0x0c - configuration register 2"]
pub cfg2: CFG2,
#[doc = "0x10 - Interrupt Enable Register"]
pub ier: IER,
#[doc = "0x14 - Status Register"]
pub sr: SR,
#[doc = "0x18 - Interrupt/Status Flags Clear Register"]
pub ifcr: IFCR,
_reserved0: [u8; 4usize],
#[doc = "0x20 - Transmit Data Register"]
pub txdr: TXDR,
_reserved1: [u8; 12usize],
#[doc = "0x30 - Receive Data Register"]
pub rxdr: RXDR,
_reserved2: [u8; 12usize],
#[doc = "0x40 - Polynomial Register"]
pub crcpoly: CRCPOLY,
#[doc = "0x44 - Transmitter CRC Register"]
pub txcrc: TXCRC,
#[doc = "0x48 - Receiver CRC Register"]
pub rxcrc: RXCRC,
#[doc = "0x4c - Underrun Data Register"]
pub udrdr: UDRDR,
#[doc = "0x50 - configuration register"]
pub cgfr: CGFR,
}
#[doc = "control register 1"]
pub struct CR1 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "control register 1"]
pub mod cr1;
#[doc = "control register 2"]
pub struct CR2 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "control register 2"]
pub mod cr2;
#[doc = "configuration register 1"]
pub struct CFG1 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "configuration register 1"]
pub mod cfg1;
#[doc = "configuration register 2"]
pub struct CFG2 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "configuration register 2"]
pub mod cfg2;
#[doc = "Interrupt Enable Register"]
pub struct IER {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Enable Register"]
pub mod ier;
#[doc = "Status Register"]
pub struct SR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Status Register"]
pub mod sr;
#[doc = "Interrupt/Status Flags Clear Register"]
pub struct IFCR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Interrupt/Status Flags Clear Register"]
pub mod ifcr;
#[doc = "Transmit Data Register"]
pub struct TXDR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Transmit Data Register"]
pub mod txdr;
#[doc = "Receive Data Register"]
pub struct RXDR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Receive Data Register"]
pub mod rxdr;
#[doc = "Polynomial Register"]
pub struct CRCPOLY {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Polynomial Register"]
pub mod crcpoly;
#[doc = "Transmitter CRC Register"]
pub struct TXCRC {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Transmitter CRC Register"]
pub mod txcrc;
#[doc = "Receiver CRC Register"]
pub struct RXCRC {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Receiver CRC Register"]
pub mod rxcrc;
#[doc = "Underrun Data Register"]
pub struct UDRDR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Underrun Data Register"]
pub mod udrdr;
#[doc = "configuration register"]
pub struct CGFR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "configuration register"]
pub mod cgfr;