Trait gd32vf103_hal::gpio::Unlock [−][src]
Useful unlock methods for lock marked pins
Note: We design this trait other than giving all pins an unlock
method
because if we do so, the rust doc of struct Lock
could be full of unlock
methods (dozens of them) with full documents for each unlock
functions, which
could be confusing for users and costs much time to read and build. If any
questions, please fire an issue to let us know.
Associated Types
type Lock
[src]
The lock controller register block, typically a LOCK
struct with temporary
variant bits for each pins.
type Output
[src]
Unlock output, typically a PXi
struct with mode typestate.
Required methods
fn unlock(self, lock: &mut Self::Lock) -> Self::Output
[src]
Mark the locked pin as unlocked to allow configurations of pin mode.
Typically this method uses a mutable borrow of LOCK
struct of the gpio port.
This function is not an actually unlock; it only clears the corresponding
bit in a temporary variant in LOCK
. To actually perform and freeze the lock,
use freeze
; see function lock
for details.
The caller of this method must obtain a mutable reference of LOCK
struct;
if you have called the freeze
method of that LOCK
struct, the actually lock
operation would perform and lock state of all pins would be no longer possible to
change - see its documentation for details.
Implementors
impl<MODE> Unlock for Locked<PA0<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA1<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA2<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA3<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA4<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA5<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA6<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA7<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA8<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA9<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA10<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA11<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA12<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA13<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA14<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PA15<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB0<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB1<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB2<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB3<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB4<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB5<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB6<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB7<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB8<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB9<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB10<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB11<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB12<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB13<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB14<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PB15<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC0<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC1<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC2<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC3<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC4<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC5<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC6<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC7<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC8<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC9<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC10<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC11<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC12<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC13<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC14<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PC15<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD0<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD1<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD2<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD3<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD4<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD5<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD6<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD7<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD8<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD9<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD10<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD11<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD12<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD13<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD14<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PD15<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE0<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE1<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE2<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE3<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE4<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE5<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE6<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE7<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE8<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE9<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE10<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE11<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE12<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE13<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE14<MODE>> where
MODE: Active,
[src]
MODE: Active,
impl<MODE> Unlock for Locked<PE15<MODE>> where
MODE: Active,
[src]
MODE: Active,