block/GPIOA: description: GPIOA address block description. items: - name: MODER description: GPIO port mode register. byte_offset: 0 fieldset: MODER - name: OTYPER description: GPIO port output type register. byte_offset: 4 fieldset: OTYPER - name: OSPEEDR description: GPIO port output speed register. byte_offset: 8 fieldset: OSPEEDR - name: PUPDR description: GPIO port pull-up/pull-down register. byte_offset: 12 fieldset: PUPDR - name: IDR description: GPIO port input data register. byte_offset: 16 fieldset: IDR - name: ODR description: GPIO port output data register. byte_offset: 20 fieldset: ODR - name: BSRR description: GPIO port bit set/reset register. byte_offset: 24 fieldset: BSRR - name: LCKR description: GPIO port configuration lock register. byte_offset: 28 fieldset: LCKR - name: AFRL description: GPIO alternate function low register. byte_offset: 32 fieldset: AFRL - name: AFRH description: GPIO alternate function high register. byte_offset: 36 fieldset: AFRH - name: BRR description: GPIO port bit reset register. byte_offset: 40 fieldset: BRR fieldset/AFRH: description: GPIO alternate function high register. fields: [] fieldset/AFRL: description: GPIO alternate function low register. fields: - name: AFSEL description: Alternate function selection for port x pin y (y = 0 to 7) These bits are written by software to configure alternate function I/Os. bit_offset: 0 bit_size: 4 array: len: 8 stride: 4 enum: AFSEL fieldset/BRR: description: GPIO port bit reset register. fields: - name: BR description: Port x reset pin %s. bit_offset: 0 bit_size: 1 array: len: 16 stride: 1 enum: BRR_BR fieldset/BSRR: description: GPIO port bit set/reset register. fields: - name: BS description: Port x set pin %s. bit_offset: 0 bit_size: 1 array: len: 16 stride: 1 enum: BS - name: BR description: Port x reset pin %s. bit_offset: 16 bit_size: 1 array: len: 16 stride: 1 enum: BSRR_BR fieldset/IDR: description: GPIO port input data register. fields: - name: ID description: Port input data pin %s. bit_offset: 0 bit_size: 1 array: len: 16 stride: 1 enum: ID fieldset/LCKR: description: GPIO port configuration lock register. fields: - name: LCK description: Port x lock pin %s. bit_offset: 0 bit_size: 1 array: len: 16 stride: 1 enum: LCK - name: LCKK description: 'Lock key This bit can be read any time. It can only be modified using the lock key write sequence. LOCK key write sequence: WR LCKR[16] = 1 + LCKR[15:0] WR LCKR[16] = 0 + LCKR[15:0] WR LCKR[16] = 1 + LCKR[15:0] RD LCKR RD LCKR[16] = 1 (this read operation is optional but it confirms that the lock is active) Note: During the LOCK key write sequence, the value of LCK[15:0] must not change. Any error in the lock sequence aborts the lock. After the first lock sequence on any bit of the port, any read access on the LCKK bit returns 1 until the next MCU reset or peripheral reset.' bit_offset: 16 bit_size: 1 enum: LCKK fieldset/MODER: description: GPIO port mode register. fields: - name: MODE description: Port x configuration pin %s. bit_offset: 0 bit_size: 2 array: len: 16 stride: 2 enum: MODE fieldset/ODR: description: GPIO port output data register. fields: - name: OD description: Port output data pin %s. bit_offset: 0 bit_size: 1 array: len: 16 stride: 1 enum: OD fieldset/OSPEEDR: description: GPIO port output speed register. fields: - name: OSPEED description: Port x configuration pin %s. bit_offset: 0 bit_size: 2 array: len: 16 stride: 2 enum: OSPEED fieldset/OTYPER: description: GPIO port output type register. fields: - name: OT description: Port x configuration pin %s. bit_offset: 0 bit_size: 1 array: len: 16 stride: 1 enum: OT fieldset/PUPDR: description: GPIO port pull-up/pull-down register. fields: - name: PUPD description: Port x configuration pin %s. bit_offset: 0 bit_size: 2 array: len: 16 stride: 2 enum: PUPD enum/AFSEL: bit_size: 4 variants: - name: AF0 description: AF0. value: 0 - name: AF1 description: AF1. value: 1 - name: AF2 description: AF2. value: 2 - name: AF3 description: AF3. value: 3 - name: AF4 description: AF4. value: 4 - name: AF5 description: AF5. value: 5 - name: AF6 description: AF6. value: 6 - name: AF7 description: AF7. value: 7 - name: AF8 description: AF8. value: 8 - name: AF9 description: AF9. value: 9 - name: AF10 description: AF10. value: 10 - name: AF11 description: AF11. value: 11 - name: AF12 description: AF12. value: 12 - name: AF13 description: AF13. value: 13 - name: AF14 description: AF14. value: 14 - name: AF15 description: AF15. value: 15 enum/BRR_BR: bit_size: 1 variants: - name: NoAction description: No action on the corresponding ODx bit. value: 0 - name: Reset description: Reset the ODx bit. value: 1 enum/BS: bit_size: 1 variants: - name: Set description: Sets the corresponding ODx bit. value: 1 enum/BSRR_BR: bit_size: 1 variants: - name: Reset description: Resets the corresponding ODx bit. value: 1 enum/ID: bit_size: 1 variants: - name: Low description: Input is logic low. value: 0 - name: High description: Input is logic high. value: 1 enum/LCK: bit_size: 1 variants: - name: Unlocked description: Port configuration not locked. value: 0 - name: Locked description: Port configuration locked. value: 1 enum/LCKK: bit_size: 1 variants: - name: NotActive description: Port configuration lock key not active. value: 0 - name: Active description: Port configuration lock key active. value: 1 enum/MODE: bit_size: 2 variants: - name: Input description: Input mode. value: 0 - name: Output description: General purpose output mode. value: 1 - name: Alternate description: Alternate function mode. value: 2 - name: Analog description: Analog mode. value: 3 enum/OD: bit_size: 1 variants: - name: Low description: Set output to logic low. value: 0 - name: High description: Set output to logic high. value: 1 enum/OSPEED: bit_size: 2 variants: - name: LowSpeed description: Low speed. value: 0 - name: MediumSpeed description: Medium speed. value: 1 - name: HighSpeed description: High speed. value: 2 - name: VeryHighSpeed description: Very high speed. value: 3 enum/OT: bit_size: 1 variants: - name: PushPull description: Output push-pull (reset state). value: 0 - name: OpenDrain description: Output open-drain. value: 1 enum/PUPD: bit_size: 2 variants: - name: Floating description: No pull-up, pull-down. value: 0 - name: PullUp description: Pull-up. value: 1 - name: PullDown description: Pull-down. value: 2