pub struct Flc { /* private fields */ }Expand description
Flash Memory Control.
Implementations§
Source§impl Flc
impl Flc
Sourcepub const PTR: *const RegisterBlock = {0x40029000 as *const flc::RegisterBlock}
pub const PTR: *const RegisterBlock = {0x40029000 as *const flc::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
0x04 - Flash Clock Divide. The clock (PLL0) is divided by this value to generate a 1 MHz clock for Flash controller.
Sourcepub fn data_iter(&self) -> impl Iterator<Item = &Data>
pub fn data_iter(&self) -> impl Iterator<Item = &Data>
Iterator for array of: 0x30..0x40 - Flash Write Data.
Sourcepub fn actrl(&self) -> &Actrl
pub fn actrl(&self) -> &Actrl
0x40 - Access Control Register. Writing the ACTRL register with the following values in the order shown, allows read and write access to the system and user Information block: pflc-actrl = 0x3a7f5ca3; pflc-actrl = 0xa1e34f20; pflc-actrl = 0x9608b2c1. When unlocked, a write of any word will disable access to system and user information block. Readback of this register is always zero.