lpc55_hal/peripherals/
flash.rs

1use crate::{peripherals::syscon, raw, typestates::init_state};
2
3crate::wrap_stateful_peripheral!(Flash, FLASH);
4
5impl<State> Flash<State> {
6    pub fn enabled(mut self, syscon: &mut syscon::Syscon) -> Flash<init_state::Enabled> {
7        syscon.enable_clock(&mut self.raw);
8
9        Flash {
10            raw: self.raw,
11            _state: init_state::Enabled(()),
12        }
13    }
14
15    pub fn disabled(mut self, syscon: &mut syscon::Syscon) -> Flash<init_state::Disabled> {
16        syscon.disable_clock(&mut self.raw);
17
18        Flash {
19            raw: self.raw,
20            _state: init_state::Disabled,
21        }
22    }
23}