pub struct I2c2 { /* private fields */ }Expand description
LPC-Next0 I2C-bus interfaces
Implementations§
Source§impl I2c2
impl I2c2
Sourcepub const PTR: *const RegisterBlock = {0x40108000 as *const i2c0::RegisterBlock}
pub const PTR: *const RegisterBlock = {0x40108000 as *const i2c0::RegisterBlock}
Pointer to the register block
Sourcepub const fn ptr() -> *const RegisterBlock
pub const fn ptr() -> *const RegisterBlock
Return the pointer to the register block
Sourcepub unsafe fn steal() -> Self
pub unsafe fn steal() -> Self
Steal an instance of this peripheral
§Safety
Ensure that the new instance of the peripheral cannot be used in a way that may race with any existing instances, for example by only accessing read-only or write-only registers, or by consuming the original peripheral and using critical sections to coordinate access between multiple new instances.
Additionally, other software such as HALs may rely on only one peripheral instance existing to ensure memory safety; ensure no stolen instances are passed to such software.
Methods from Deref<Target = RegisterBlock>§
Sourcepub fn clkdiv(&self) -> &Clkdiv
pub fn clkdiv(&self) -> &Clkdiv
0x814 - Clock pre-divider for the entire I2C interface. This determines what time increments are used for the MSTTIME register, and controls some timing of the Slave function.
Sourcepub fn intstat(&self) -> &Intstat
pub fn intstat(&self) -> &Intstat
0x818 - Interrupt Status register for Master, Slave, and Monitor functions.
Sourcepub fn mstdat(&self) -> &Mstdat
pub fn mstdat(&self) -> &Mstdat
0x828 - Combined Master receiver and transmitter data register.
Sourcepub fn slvadr_iter(&self) -> impl Iterator<Item = &Slvadr>
pub fn slvadr_iter(&self) -> impl Iterator<Item = &Slvadr>
Iterator for array of: 0x848..0x858 - Slave address register.