pub type IC_TXFLR = Reg<IC_TXFLR_SPEC>;
Expand description
IC_TXFLR (r) register accessor: I2C Transmit FIFO Level Register This register contains the number of valid data entries in the transmit FIFO buffer. It is cleared whenever: - The I2C is disabled - There is a transmit abort - that is, TX_ABRT bit is set in the IC_RAW_INTR_STAT register - The slave bulk transmit mode is aborted The register increments whenever data is placed into the transmit FIFO and decrements when data is taken from the transmit FIFO.
You can read
this register and get ic_txflr::R
. See API.
For information about available fields see ic_txflr
module
Aliased Type§
struct IC_TXFLR { /* private fields */ }
Implementations
Source§impl<REG: Resettable + Writable> Reg<REG>
impl<REG: Resettable + Writable> Reg<REG>
Sourcepub fn reset(&self)
pub fn reset(&self)
Writes the reset value to Writable
register.
Resets the register to its initial state.
Sourcepub fn write<F>(&self, f: F)
pub fn write<F>(&self, f: F)
Writes bits to a Writable
register.
You can write raw bits into a register:
periph.reg.write(|w| unsafe { w.bits(rawbits) });
or write only the fields you need:
periph.reg.write(|w| w
.field1().bits(newfield1bits)
.field2().set_bit()
.field3().variant(VARIANT)
);
or an alternative way of saying the same:
periph.reg.write(|w| {
w.field1().bits(newfield1bits);
w.field2().set_bit();
w.field3().variant(VARIANT)
});
In the latter case, other fields will be set to their reset value.
Source§impl<REG: Readable + Writable> Reg<REG>
impl<REG: Readable + Writable> Reg<REG>
Sourcepub fn modify<F>(&self, f: F)
pub fn modify<F>(&self, f: F)
Modifies the contents of the register by reading and then writing it.
E.g. to do a read-modify-write sequence to change parts of a register:
periph.reg.modify(|r, w| unsafe { w.bits(
r.bits() | 3
) });
or
periph.reg.modify(|_, w| w
.field1().bits(newfield1bits)
.field2().set_bit()
.field3().variant(VARIANT)
);
or an alternative way of saying the same:
periph.reg.modify(|_, w| {
w.field1().bits(newfield1bits);
w.field2().set_bit();
w.field3().variant(VARIANT)
});
Other fields will have the value they had before the call to modify
.
Source§impl<REG: RegisterSpec> Reg<REG>
impl<REG: RegisterSpec> Reg<REG>
Source§impl<REG: Readable> Reg<REG>
impl<REG: Readable> Reg<REG>
Sourcepub fn read(&self) -> R<REG>
pub fn read(&self) -> R<REG>
Reads the contents of a Readable
register.
You can read the raw contents of a register by using bits
:
let bits = periph.reg.read().bits();
or get the content of a particular field of a register:
let reader = periph.reg.read();
let bits = reader.field1().bits();
let flag = reader.field2().bit_is_set();