# RegisterBlock in k210_pac::gpiohs - Rust
Register block
Keywords: rust, rustlang, rust-lang, RegisterBlock

# Struct k210_pac::gpiohs::RegisterBlock

source · [−]

    #[repr(C)]pub struct RegisterBlock {Show 17 fields
        pub input_val: INPUT_VAL,
        pub input_en: INPUT_EN,
        pub output_en: OUTPUT_EN,
        pub output_val: OUTPUT_VAL,
        pub pullup_en: PULLUP_EN,
        pub drive: DRIVE,
        pub rise_ie: RISE_IE,
        pub rise_ip: RISE_IP,
        pub fall_ie: FALL_IE,
        pub fall_ip: FALL_IP,
        pub high_ie: HIGH_IE,
        pub high_ip: HIGH_IP,
        pub low_ie: LOW_IE,
        pub low_ip: LOW_IP,
        pub iof_en: IOF_EN,
        pub iof_sel: IOF_SEL,
        pub output_xor: OUTPUT_XOR,
    }

Expand description

Register block

## Fields

`input_val: INPUT_VAL`

0x00 - Input Value Register

`input_en: INPUT_EN`

0x04 - Pin Input Enable Register

`output_en: OUTPUT_EN`

0x08 - Pin Output Enable Register

`output_val: OUTPUT_VAL`

0x0c - Output Value Register

`pullup_en: PULLUP_EN`

0x10 - Internal Pull-Up Enable Register

`drive: DRIVE`

0x14 - Drive Strength Register

`rise_ie: RISE_IE`

0x18 - Rise Interrupt Enable Register

`rise_ip: RISE_IP`

0x1c - Rise Interrupt Pending Register

`fall_ie: FALL_IE`

0x20 - Fall Interrupt Enable Register

`fall_ip: FALL_IP`

0x24 - Fall Interrupt Pending Register

`high_ie: HIGH_IE`

0x28 - High Interrupt Enable Register

`high_ip: HIGH_IP`

0x2c - High Interrupt Pending Register

`low_ie: LOW_IE`

0x30 - Low Interrupt Enable Register

`low_ip: LOW_IP`

0x34 - Low Interrupt Pending Register

`iof_en: IOF_EN`

0x38 - HW I/O Function Enable Register

`iof_sel: IOF_SEL`

0x3c - HW I/O Function Select Register

`output_xor: OUTPUT_XOR`

0x40 - Output XOR (invert) Register

## Auto Trait Implementations

### impl !RefUnwindSafe for RegisterBlock

### impl Send for RegisterBlock

### impl !Sync for RegisterBlock

### impl Unpin for RegisterBlock

### impl UnwindSafe for RegisterBlock

## Blanket Implementations

source

### impl<T> Any for T where
T: 'static + ?Sized,

source

#### fn type_id(&self) -> TypeId

Gets the `TypeId` of `self`. Read more

source

### impl<T> Borrow<T> for T where
T: ?Sized,

const: unstable · source

#### fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more

source

### impl<T> BorrowMut<T> for T where
T: ?Sized,

const: unstable · source

#### fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more

source

### impl<T> From<T> for T

const: unstable · source

#### fn from(t: T) -> T

Returns the argument unchanged.

source

### impl<T, U> Into<U> for T where
U: From<T>,

const: unstable · source

#### fn into(self) -> U

Calls `U::from(self)`.

That is, this conversion is whatever the implementation of `From<T> for U` chooses to do.

source

### impl<T, U> TryFrom<U> for T where
U: Into<T>,

#### type Error = Infallible

The type returned in the event of a conversion error.

const: unstable · source

#### fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.

source

### impl<T, U> TryInto<U> for T where
U: TryFrom<T>,

#### type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

const: unstable · source

#### fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.