VSF Documented
Data Fields
vsf_gpio_capability_t Struct Reference

#include <vsf_template_gpio.h>

Data Fields

inherit(vsf_peripheral_capability_t) uint8_t is_async uint8_t support_output_and_set: 1
 Flag indicating if GPIO operations are asynchronous. When set, operations are only guaranteed to be sequential when operating on the same port consecutively. When used with different ports, operations on pins may not be sequential.
 
uint8_t support_output_and_clear: 1
 Support for atomic output and clear operations. Prevents signal glitches when switching from input to output mode.
 
uint8_t support_interrupt: 1
 Support for external interrupt functionality. When set, the GPIO pins can be configured to generate interrupts.
 
uint8_t pin_count
 Total number of pins in hardware. Includes all pins, even those that cannot be configured as GPIO. If some pins cannot be used as GPIO, the corresponding bit in pin_mask is 0.
 
vsf_gpio_pin_mask_t pin_mask
 Available pin mask indicating which pins can be used as GPIO. Common bit patterns include:
 

Field Documentation

◆ support_output_and_set

inherit (vsf_peripheral_capability_t) uint8_t is_async uint8_t vsf_gpio_capability_t::support_output_and_set

Flag indicating if GPIO operations are asynchronous. When set, operations are only guaranteed to be sequential when operating on the same port consecutively. When used with different ports, operations on pins may not be sequential.

Support for atomic output and set operations. Prevents signal glitches when switching from input to output mode.

◆ support_output_and_clear

uint8_t vsf_gpio_capability_t::support_output_and_clear

Support for atomic output and clear operations. Prevents signal glitches when switching from input to output mode.

◆ support_interrupt

uint8_t vsf_gpio_capability_t::support_interrupt

Support for external interrupt functionality. When set, the GPIO pins can be configured to generate interrupts.

◆ pin_count

uint8_t vsf_gpio_capability_t::pin_count

Total number of pins in hardware. Includes all pins, even those that cannot be configured as GPIO. If some pins cannot be used as GPIO, the corresponding bit in pin_mask is 0.

◆ pin_mask

vsf_gpio_pin_mask_t vsf_gpio_capability_t::pin_mask

Available pin mask indicating which pins can be used as GPIO. Common bit patterns include:

  • 0x000000FF: 8 pins available
  • 0x0000FFFF: 16 pins available
  • 0xFFFFFFFF: All 32 pins available
  • 0xFFFFFFFE: 31 pins available (PIN0 is not available)
Generated from commit: vsfteam/vsf@2b286be