KETCube
Modules | Data Structures | Macros | Typedefs | Enumerations

KETCube GPIO driver. More...

Modules

 Public Functions
 Public functions.
 

Data Structures

struct  ketCube_gpio_descriptor_t
 GPIO PIN descriptor. More...
 

Macros

#define KETCUBE_GPIO_NAME   "gpio_drv"
 GPIO driver name. More...
 
#define KETCUBE_GPIO_LED_PERIOD   500
 LED driver blink period in ms. More...
 

Typedefs

typedef void(* ketCube_GPIO_VoidFn_t) (void *context)
 Pointer to a IRQ Handler Function. More...
 

Enumerations

enum  ketCube_gpio_pin_t {
  KETCUBE_GPIO_NOPIN = 0, KETCUBE_GPIO_PIN_0 = GPIO_PIN_0, KETCUBE_GPIO_PIN_1 = GPIO_PIN_1, KETCUBE_GPIO_PIN_2 = GPIO_PIN_2,
  KETCUBE_GPIO_PIN_3 = GPIO_PIN_3, KETCUBE_GPIO_PIN_4 = GPIO_PIN_4, KETCUBE_GPIO_PIN_5 = GPIO_PIN_5, KETCUBE_GPIO_PIN_6 = GPIO_PIN_6,
  KETCUBE_GPIO_PIN_7 = GPIO_PIN_7, KETCUBE_GPIO_PIN_8 = GPIO_PIN_8, KETCUBE_GPIO_PIN_9 = GPIO_PIN_9, KETCUBE_GPIO_PIN_10 = GPIO_PIN_10,
  KETCUBE_GPIO_PIN_11 = GPIO_PIN_11, KETCUBE_GPIO_PIN_12 = GPIO_PIN_12, KETCUBE_GPIO_PIN_13 = GPIO_PIN_13, KETCUBE_GPIO_PIN_14 = GPIO_PIN_14,
  KETCUBE_GPIO_PIN_15 = GPIO_PIN_15
}
 List of GPIO PINs. More...
 
enum  ketCube_gpio_port_t {
  KETCUBE_GPIO_PA = GPIOA_BASE, KETCUBE_GPIO_PB = GPIOB_BASE, KETCUBE_GPIO_PC = GPIOC_BASE, KETCUBE_GPIO_PD = GPIOD_BASE,
  KETCUBE_GPIO_PE = GPIOE_BASE, KETCUBE_GPIO_PH = GPIOH_BASE
}
 GPIO Ports. More...
 
enum  ketCube_gpio_function_t { KETCUBE_GPIO_FUNCTION_GPIO = 0, KETCUBE_GPIO_FUNCTION_LED, KETCUBE_GPIO_FUNCTION_BUTTON }
 LED States. More...
 
enum  ketCube_gpio_polarity_t { KETCUBE_GPIO_POLARITY_ON = TRUE, KETCUBE_GPIO_POLARITY_OFF = FALSE }
 GPIO polarity. More...
 
enum  ketCube_gpio_LEDState_t { KETCUBE_GPIO_LED_OFF = 0, KETCUBE_GPIO_LED_ON, KETCUBE_GPIO_LED_BLINK_SINGLE, KETCUBE_GPIO_LED_BLINK_CONT }
 LED States. More...
 

Detailed Description

KETCube GPIO driver.

Macro Definition Documentation

◆ KETCUBE_GPIO_LED_PERIOD

#define KETCUBE_GPIO_LED_PERIOD   500

LED driver blink period in ms.

◆ KETCUBE_GPIO_NAME

#define KETCUBE_GPIO_NAME   "gpio_drv"

GPIO driver name.

Typedef Documentation

◆ ketCube_GPIO_VoidFn_t

typedef void(* ketCube_GPIO_VoidFn_t) (void *context)

Pointer to a IRQ Handler Function.

Enumeration Type Documentation

◆ ketCube_gpio_function_t

LED States.

Enumerator
KETCUBE_GPIO_FUNCTION_GPIO 

Function is defined by user

KETCUBE_GPIO_FUNCTION_LED 

LED function is handled by driver

KETCUBE_GPIO_FUNCTION_BUTTON 

BUTTON function is handled by driver TODO: not implemented yet

◆ ketCube_gpio_LEDState_t

LED States.

Enumerator
KETCUBE_GPIO_LED_OFF 

LED OFF

KETCUBE_GPIO_LED_ON 

LED ON

KETCUBE_GPIO_LED_BLINK_SINGLE 

LED BLINK - single

KETCUBE_GPIO_LED_BLINK_CONT 

LED BLINK - continuous

◆ ketCube_gpio_pin_t

List of GPIO PINs.

Enumerator
KETCUBE_GPIO_NOPIN 
KETCUBE_GPIO_PIN_0 
KETCUBE_GPIO_PIN_1 
KETCUBE_GPIO_PIN_2 
KETCUBE_GPIO_PIN_3 
KETCUBE_GPIO_PIN_4 
KETCUBE_GPIO_PIN_5 
KETCUBE_GPIO_PIN_6 
KETCUBE_GPIO_PIN_7 
KETCUBE_GPIO_PIN_8 
KETCUBE_GPIO_PIN_9 
KETCUBE_GPIO_PIN_10 
KETCUBE_GPIO_PIN_11 
KETCUBE_GPIO_PIN_12 
KETCUBE_GPIO_PIN_13 
KETCUBE_GPIO_PIN_14 
KETCUBE_GPIO_PIN_15 

◆ ketCube_gpio_polarity_t

GPIO polarity.

Enumerator
KETCUBE_GPIO_POLARITY_ON 

ON polarity (e.g. for LEDs)

KETCUBE_GPIO_POLARITY_OFF 

OFF polarity (e.g. for LEDs)

◆ ketCube_gpio_port_t

GPIO Ports.

Enumerator
KETCUBE_GPIO_PA 
KETCUBE_GPIO_PB 
KETCUBE_GPIO_PC 
KETCUBE_GPIO_PD 
KETCUBE_GPIO_PE 
KETCUBE_GPIO_PH