rust-embedded-talk/example-source/msp432p401r/src/eusci_b3.rs

144 lines
4.6 KiB
Rust

#[doc = r" Register block"]
#[repr(C)]
pub struct RegisterBlock {
#[doc = "0x00 - eUSCI_Bx Control Word Register 0"]
pub ucbx_ctlw0: UCBXCTLW0,
#[doc = "0x02 - eUSCI_Bx Control Word Register 1"]
pub ucbx_ctlw1: UCBXCTLW1,
_reserved0: [u8; 2usize],
#[doc = "0x06 - eUSCI_Bx Baud Rate Control Word Register"]
pub ucbx_brw: UCBXBRW,
#[doc = "0x08 - eUSCI_Bx Status Register"]
pub ucbx_statw: UCBXSTATW,
#[doc = "0x0a - eUSCI_Bx Byte Counter Threshold Register"]
pub ucbx_tbcnt: UCBXTBCNT,
#[doc = "0x0c - eUSCI_Bx Receive Buffer Register"]
pub ucbx_rxbuf: UCBXRXBUF,
#[doc = "0x0e - eUSCI_Bx Transmit Buffer Register"]
pub ucbx_txbuf: UCBXTXBUF,
_reserved1: [u8; 4usize],
#[doc = "0x14 - eUSCI_Bx I2C Own Address 0 Register"]
pub ucbx_i2coa0: UCBXI2COA0,
#[doc = "0x16 - eUSCI_Bx I2C Own Address 1 Register"]
pub ucbx_i2coa1: UCBXI2COA1,
#[doc = "0x18 - eUSCI_Bx I2C Own Address 2 Register"]
pub ucbx_i2coa2: UCBXI2COA2,
#[doc = "0x1a - eUSCI_Bx I2C Own Address 3 Register"]
pub ucbx_i2coa3: UCBXI2COA3,
#[doc = "0x1c - eUSCI_Bx I2C Received Address Register"]
pub ucbx_addrx: UCBXADDRX,
#[doc = "0x1e - eUSCI_Bx I2C Address Mask Register"]
pub ucbx_addmask: UCBXADDMASK,
#[doc = "0x20 - eUSCI_Bx I2C Slave Address Register"]
pub ucbx_i2csa: UCBXI2CSA,
_reserved2: [u8; 8usize],
#[doc = "0x2a - eUSCI_Bx Interrupt Enable Register"]
pub ucbx_ie: UCBXIE,
#[doc = "0x2c - eUSCI_Bx Interrupt Flag Register"]
pub ucbx_ifg: UCBXIFG,
#[doc = "0x2e - eUSCI_Bx Interrupt Vector Register"]
pub ucbx_iv: UCBXIV,
}
#[doc = "eUSCI_Bx Control Word Register 0"]
pub struct UCBXCTLW0 {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx Control Word Register 0"]
pub mod ucbx_ctlw0;
#[doc = "eUSCI_Bx Control Word Register 1"]
pub struct UCBXCTLW1 {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx Control Word Register 1"]
pub mod ucbx_ctlw1;
#[doc = "eUSCI_Bx Baud Rate Control Word Register"]
pub struct UCBXBRW {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx Baud Rate Control Word Register"]
pub mod ucbx_brw;
#[doc = "eUSCI_Bx Status Register"]
pub struct UCBXSTATW {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx Status Register"]
pub mod ucbx_statw;
#[doc = "eUSCI_Bx Byte Counter Threshold Register"]
pub struct UCBXTBCNT {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx Byte Counter Threshold Register"]
pub mod ucbx_tbcnt;
#[doc = "eUSCI_Bx Receive Buffer Register"]
pub struct UCBXRXBUF {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx Receive Buffer Register"]
pub mod ucbx_rxbuf;
#[doc = "eUSCI_Bx Transmit Buffer Register"]
pub struct UCBXTXBUF {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx Transmit Buffer Register"]
pub mod ucbx_txbuf;
#[doc = "eUSCI_Bx I2C Own Address 0 Register"]
pub struct UCBXI2COA0 {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx I2C Own Address 0 Register"]
pub mod ucbx_i2coa0;
#[doc = "eUSCI_Bx I2C Own Address 1 Register"]
pub struct UCBXI2COA1 {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx I2C Own Address 1 Register"]
pub mod ucbx_i2coa1;
#[doc = "eUSCI_Bx I2C Own Address 2 Register"]
pub struct UCBXI2COA2 {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx I2C Own Address 2 Register"]
pub mod ucbx_i2coa2;
#[doc = "eUSCI_Bx I2C Own Address 3 Register"]
pub struct UCBXI2COA3 {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx I2C Own Address 3 Register"]
pub mod ucbx_i2coa3;
#[doc = "eUSCI_Bx I2C Received Address Register"]
pub struct UCBXADDRX {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx I2C Received Address Register"]
pub mod ucbx_addrx;
#[doc = "eUSCI_Bx I2C Address Mask Register"]
pub struct UCBXADDMASK {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx I2C Address Mask Register"]
pub mod ucbx_addmask;
#[doc = "eUSCI_Bx I2C Slave Address Register"]
pub struct UCBXI2CSA {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx I2C Slave Address Register"]
pub mod ucbx_i2csa;
#[doc = "eUSCI_Bx Interrupt Enable Register"]
pub struct UCBXIE {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx Interrupt Enable Register"]
pub mod ucbx_ie;
#[doc = "eUSCI_Bx Interrupt Flag Register"]
pub struct UCBXIFG {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx Interrupt Flag Register"]
pub mod ucbx_ifg;
#[doc = "eUSCI_Bx Interrupt Vector Register"]
pub struct UCBXIV {
register: ::vcell::VolatileCell<u16>,
}
#[doc = "eUSCI_Bx Interrupt Vector Register"]
pub mod ucbx_iv;