CMSIS GPIO Driver Data Structures Type Documentation

 

_GPIO_DBF_CFG_t

 

Location: Driver_GPIO.h:397

 

Debounce filter configuration.

 

Data Fields

Type Name Description

uint8_t

count

Debounce filter count value

GPIO_DBC_CLK_t

clk_source

Debounce filter clock source.

uint8_t

__pad0__

Reserved

 

_GPIO_PRI_CFG_t

 

Location: Driver_GPIO.h:407

 

GPIO interrupt priority configuration.

 

Data Fields

Type Name Description

uint32_t

preempt_pri

Preempt priority

uint32_t

__pad0__

Reserved

uint32_t

subgrp_pri

Subgroup priority.

uint32_t

__pad1__

Reserved

 

_GPIO_CFG_t

 

Location: Driver_GPIO.h:418

 

GPIO Driver configuration.

 

Data Fields

Type Name Description

GPIO_DRIVE_STRENGTHS_t

drive_strengths

Drive strengths configuration.

uint8_t

__pad0__

Reserved

GPIO_DBF_CFG_t

debounce_cfg

Debounce filter configuration.

 

_GPIO_PAD_CFG_t

 

Location: Driver_GPIO.h:428

 

GPIO PAD configuration.

 

Data Fields

Type Name Description

GPIO_PULL_t

pull_mode

Pull control.

GPIO_DRIVE_t

drive_mode

Drive mode.

GPIO_LPF_t

lpf_en

Low pass filter enable.

GPIO_MODE_t

io_mode

IO mode.

GPIO_OUTPUT_LEVEL_t

output_level

Output level.

uint8_t

__pad0__

Reserved.

 

_GPIO_INT_CFG_t

 

Location: Driver_GPIO.h:441

 

GPIO INT configuration.

 

Data Fields

Type Name Description

GPIO_SEL_t

src_sel

Interrupt source selection.

GPIO_EVENT_t

event

Event selection

GPIO_EN_DIS_t

debounce_en

Debouce filter enable

GPIO_EN_DIS_t

interrup_en

Interrupt enable flag

uint8_t

__pad0__

Reserved

 

_GPIO_EXTCLK_CFG_t

 

Location: Driver_GPIO.h:453

 

External clock pad configuration.

 

Data Fields

Type Name Description

GPIO_PULL_t

pull_mode

Pull control

GPIO_LPF_t

lpf_en

Low pass filter enable.

uint8_t

__pad0__

Reserved

 

_GPIO_JTAG_SW_CFG_t

 

Location: Driver_GPIO.h:463

 

JTAG configuration.

 

Data Fields

Type Name Description

GPIO_LPF_t

swclk_jtck_lpf_en

SWCLK/JTCK low pass filter enable

GPIO_LPF_t

swdio_jtms_lpf_en

SWDIO/JTMS low pass filter enable

GPIO_EN_DIS_t

jtag_data_en

JTAG data available on GPIO[2:3]

GPIO_EN_DIS_t

jtag_trst_en

JTAG trst available on GPIO4

GPIO_PULL_t

swclk_jtck_pull

SWCLK/JTCK pull mode

GPIO_PULL_t

swdio_jtms_pull

SWDIO/JTMS pull mode

GPIO_DRIVE_t

swdio_jtms_drive

SWDIO/JTMS drive mode

uint8_t

__pad0__

Reserved

 

_DRIVER_GPIO_t

 

Location: Driver_GPIO.h:478

 

Access structure of the GPIO Driver.

 

Data Fields

Type Name Description

ARM_DRIVER_VERSION(*

GetVersion)(void)

Pointer to GPIO_GetVersion : Get driver version.

int32_t(*

Initialize)(GPIO_SignalEvent_t cb)

Pointer to GPIO_Initialize : Initialize the GPIO driver.

int32_t(*

Configure)(const GPIO_CFG_t *cfg)

Pointer to GPIO_Configure : Configure common GPIO settings.

int32_t(*

ConfigurePad)(GPIO_SEL_t sel, const GPIO_PAD_CFG_t *cfg)

Pointer to GPIO_ConfigurePad : Configure the GPIO pad.

int32_t(*

ConfigureInterrupt)(GPIO_INT_SEL_t sel, const GPIO_INT_CFG_t *cfg)

Pointer to GPIO_ConfigureInterrupt : Configure the GPIO interrupt.

int32_t(*

SetInterruptPriority)(GPIO_INT_SEL_t sel, const GPIO_PRI_CFG_t *pri)

Pointer to GPIO_SetInterruptPriority : Configure GPIO interrupt priority.

int32_t(*

ConfigureJTAGSW)(const GPIO_JTAG_SW_CFG_t *cfg)

Pointer to GPIO_ConfigureJTAG : Configure the GPIO JTAG mode.

void(*

SetDir)(GPIO_SEL_t sel, GPIO_DIR_t dir)

Pointer to GPIO_SetDir : Set particular GPIO pad direction.

void(*

SetHigh)(GPIO_SEL_t sel)

Pointer to GPIO_SetHigh : Set particular GPIO pad.

void(*

ToggleValue)(GPIO_SEL_t sel)

Pointer to GPIO_ToggleValue : Toggle particular GPIO pad.

void(*

SetLow)(GPIO_SEL_t sel)

Pointer to GPIO_SetLow : Reset particular GPIO pad.

uint32_t(*

ReadValue)(GPIO_SEL_t sel)

Pointer to GPIO_ReadValue : Return the selected GPIO value.

int32_t(*

ResetAltFuncRegister)(GPIO_FUNC_REGISTERS_t sel)

Pointer to GPIO_ResetAltFuncRegister : Reset GPIO alternative function register.