Struct efm32gg11b::generic::Reg [−][src]
pub struct Reg<U, REG> { /* fields omitted */ }
Expand description
This structure provides volatile access to register
Implementations
Reads the contents of Readable
register
You can read the contents of a register in such way:
ⓘ
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();
Writes bits to 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) );
Other fields will have reset value.
Writes Zero to Writable
register
Similar to write
, but unused bits will contain 0.
Modifies the contents of the register
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) );
Other fields will have value they had before call modify
.