Zephyr API Documentation  3.7.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
MAX32-specific GPIO Flags

MAX32-specific GPIO Flags. More...

MAX32 GPIO drive flags

MAX32 GPIO drive flags

The drive flags are encoded in the 8 upper bits of gpio_dt_flags_t as follows:

  • Bit 8: GPIO Supply Voltage Select Selects the voltage rail used for the pin. 0: VDDIO 1: VDDIOH
  • Bit 9: GPIO Drive Strength Select, MAX32_GPIO_DRV_STRENGTH_0 = 1mA MAX32_GPIO_DRV_STRENGTH_1 = 2mA MAX32_GPIO_DRV_STRENGTH_2 = 4mA MAX32_GPIO_DRV_STRENGTH_3 = 8mA
  • Bit 10: Weak pull up selection, Weak Pullup to VDDIO (1MOhm) 0: Disable 1: Enable
  • Bit 11: Weak pull down selection, Weak Pulldown to VDDIOH (1MOhm) 0: Disable 1: Enable
#define MAX32_GPIO_VSEL_POS   (8U)
 GPIO Voltage Select.
 
#define MAX32_GPIO_VSEL_MASK   (0x01U << MAX32_GPIO_VSEL_POS)
 
#define MAX32_GPIO_VSEL_VDDIO   (0U << MAX32_GPIO_VSEL_POS)
 
#define MAX32_GPIO_VSEL_VDDIOH   (1U << MAX32_GPIO_VSEL_POS)
 
#define MAX32_GPIO_DRV_STRENGTH_POS   (9U)
 GPIO Drive Strength Select.
 
#define MAX32_GPIO_DRV_STRENGTH_MASK   (0x03U << MAX32_GPIO_DRV_STRENGTH_POS)
 
#define MAX32_GPIO_DRV_STRENGTH_0   (0U << MAX32_GPIO_DRV_STRENGTH_POS)
 
#define MAX32_GPIO_DRV_STRENGTH_1   (1U << MAX32_GPIO_DRV_STRENGTH_POS)
 
#define MAX32_GPIO_DRV_STRENGTH_2   (2U << MAX32_GPIO_DRV_STRENGTH_POS)
 
#define MAX32_GPIO_DRV_STRENGTH_3   (3U << MAX32_GPIO_DRV_STRENGTH_POS)
 
#define MAX32_GPIO_WEAK_PULL_UP_POS   (10U)
 GPIO bias weak pull up selection, to VDDIO (1MOhm)
 
#define MAX32_GPIO_WEAK_PULL_UP   (1U << MAX32_GPIO_WEAK_PULL_UP_POS)
 
#define MAX32_GPIO_WEAK_PULL_DOWN_POS   (11U)
 GPIO bias weak pull down selection, to VDDIOH (1MOhm)
 
#define MAX32_GPIO_WEAK_PULL_DOWN   (1U << MAX32_GPIO_WEAK_PULL_DOWN_POS)
 

Detailed Description

MAX32-specific GPIO Flags.

Macro Definition Documentation

◆ MAX32_GPIO_DRV_STRENGTH_0

#define MAX32_GPIO_DRV_STRENGTH_0   (0U << MAX32_GPIO_DRV_STRENGTH_POS)

◆ MAX32_GPIO_DRV_STRENGTH_1

#define MAX32_GPIO_DRV_STRENGTH_1   (1U << MAX32_GPIO_DRV_STRENGTH_POS)

◆ MAX32_GPIO_DRV_STRENGTH_2

#define MAX32_GPIO_DRV_STRENGTH_2   (2U << MAX32_GPIO_DRV_STRENGTH_POS)

◆ MAX32_GPIO_DRV_STRENGTH_3

#define MAX32_GPIO_DRV_STRENGTH_3   (3U << MAX32_GPIO_DRV_STRENGTH_POS)

◆ MAX32_GPIO_DRV_STRENGTH_MASK

#define MAX32_GPIO_DRV_STRENGTH_MASK   (0x03U << MAX32_GPIO_DRV_STRENGTH_POS)

◆ MAX32_GPIO_DRV_STRENGTH_POS

#define MAX32_GPIO_DRV_STRENGTH_POS   (9U)

#include <zephyr/dt-bindings/gpio/adi-max32-gpio.h>

GPIO Drive Strength Select.

◆ MAX32_GPIO_VSEL_MASK

#define MAX32_GPIO_VSEL_MASK   (0x01U << MAX32_GPIO_VSEL_POS)

◆ MAX32_GPIO_VSEL_POS

#define MAX32_GPIO_VSEL_POS   (8U)

#include <zephyr/dt-bindings/gpio/adi-max32-gpio.h>

GPIO Voltage Select.

◆ MAX32_GPIO_VSEL_VDDIO

#define MAX32_GPIO_VSEL_VDDIO   (0U << MAX32_GPIO_VSEL_POS)

◆ MAX32_GPIO_VSEL_VDDIOH

#define MAX32_GPIO_VSEL_VDDIOH   (1U << MAX32_GPIO_VSEL_POS)

◆ MAX32_GPIO_WEAK_PULL_DOWN

#define MAX32_GPIO_WEAK_PULL_DOWN   (1U << MAX32_GPIO_WEAK_PULL_DOWN_POS)

◆ MAX32_GPIO_WEAK_PULL_DOWN_POS

#define MAX32_GPIO_WEAK_PULL_DOWN_POS   (11U)

#include <zephyr/dt-bindings/gpio/adi-max32-gpio.h>

GPIO bias weak pull down selection, to VDDIOH (1MOhm)

◆ MAX32_GPIO_WEAK_PULL_UP

#define MAX32_GPIO_WEAK_PULL_UP   (1U << MAX32_GPIO_WEAK_PULL_UP_POS)

◆ MAX32_GPIO_WEAK_PULL_UP_POS

#define MAX32_GPIO_WEAK_PULL_UP_POS   (10U)

#include <zephyr/dt-bindings/gpio/adi-max32-gpio.h>

GPIO bias weak pull up selection, to VDDIO (1MOhm)