Contiki-NG
Loading...
Searching...
No Matches

Files

file  efr32-radio-buffer.h
 GPIO HAL header file for the gecko.
 
file  gpio-hal-arch.c
 GPIO HAL implementation for the Gecko.
 
file  gpio-hal-arch.h
 GPIO HAL header file for the gecko.
 

Functions

void gpio_hal_arch_init (void)
 Perform architecture specific gpio initaliaztion.
 
void gpio_hal_arch_port_pin_cfg_set (gpio_hal_port_t port, gpio_hal_pin_t pin, gpio_hal_pin_cfg_t cfg)
 Configure a gpio pin.
 
gpio_hal_pin_cfg_t gpio_hal_arch_port_pin_cfg_get (gpio_hal_port_t port, gpio_hal_pin_t pin)
 Read the configuration of a GPIO pin.
 
void gpio_hal_arch_port_interrupt_enable (gpio_hal_port_t port, gpio_hal_pin_t pin)
 Enable interrupts for a gpio pin.
 
void gpio_hal_arch_port_interrupt_disable (gpio_hal_port_t port, gpio_hal_pin_t pin)
 Disable interrupts for a gpio pin.
 
void gpio_hal_arch_port_set_pins (gpio_hal_port_t port, gpio_hal_pin_mask_t pins)
 Set multiple pins to logical high.
 

Detailed Description

Function Documentation

◆ gpio_hal_arch_init()

void gpio_hal_arch_init ( void )

Perform architecture specific gpio initaliaztion.

It is the platform developer's responsibility to provide an implementation.

The implementation can be provided as a global symbol, an inline function or a function-like macro, as described above.

Definition at line 99 of file gpio-hal-arch.c.

◆ gpio_hal_arch_port_interrupt_disable()

void gpio_hal_arch_port_interrupt_disable ( gpio_hal_port_t port,
gpio_hal_pin_t pin )

Disable interrupts for a gpio pin.

Parameters
portThe GPIO port
pinThe GPIO pin number (0...GPIO_HAL_PIN_COUNT - 1)

It is the platform developer's responsibility to provide an implementation.

The implementation can be provided as a global symbol, an inline function or a function-like macro, as described above.

Note
Code should not call this function directly. Use GPIO manipulation macros instead.

Definition at line 153 of file gpio-hal-arch.c.

◆ gpio_hal_arch_port_interrupt_enable()

void gpio_hal_arch_port_interrupt_enable ( gpio_hal_port_t port,
gpio_hal_pin_t pin )

Enable interrupts for a gpio pin.

Parameters
portThe GPIO port
pinThe GPIO pin number

It is the platform developer's responsibility to provide an implementation.

The implementation can be provided as a global symbol, an inline function or a function-like macro, as described above.

Note
Code should not call this function directly. Use GPIO manipulation macros instead.

Definition at line 142 of file gpio-hal-arch.c.

◆ gpio_hal_arch_port_pin_cfg_get()

gpio_hal_pin_cfg_t gpio_hal_arch_port_pin_cfg_get ( gpio_hal_port_t port,
gpio_hal_pin_t pin )

Read the configuration of a GPIO pin.

Parameters
portThe GPIO port
pinThe GPIO pin number (0...GPIO_HAL_PIN_COUNT - 1)
Returns
An OR mask of GPIO_HAL_PIN_CFG_xyz

It is the platform developer's responsibility to provide an implementation.

The implementation can be provided as a global symbol, an inline function or a function-like macro, as described above.

Note
Code should not call this function directly. Use GPIO manipulation macros instead.

Definition at line 129 of file gpio-hal-arch.c.

◆ gpio_hal_arch_port_pin_cfg_set()

void gpio_hal_arch_port_pin_cfg_set ( gpio_hal_port_t port,
gpio_hal_pin_t pin,
gpio_hal_pin_cfg_t cfg )

Configure a gpio pin.

Parameters
portThe GPIO port
pinThe GPIO pin number (0...GPIO_HAL_PIN_COUNT - 1)
cfgThe configuration

cfg is an OR mask of GPIO_HAL_PIN_CFG_xyz

The implementation of this function also has to make sure that pin is configured as software-controlled GPIO.

It is the platform developer's responsibility to provide an implementation.

The implementation can be provided as a global symbol, an inline function or a function-like macro, as described above.

Note
Code should not call this function directly. Use GPIO manipulation macros instead.

Definition at line 107 of file gpio-hal-arch.c.

◆ gpio_hal_arch_port_set_pins()

void gpio_hal_arch_port_set_pins ( gpio_hal_port_t port,
gpio_hal_pin_mask_t pins )

Set multiple pins to logical high.

Parameters
portThe GPIO port
pinsAn ORd pin mask of the pins to set

A pin will be set to logical high if its position in pins is set. For example you can set pins 0 and 3 by passing 0x09.

It is the platform developer's responsibility to provide an implementation.

The implementation can be provided as a global symbol, an inline function or a function-like macro, as described above.

Note
Code should not call this function directly. Use GPIO manipulation macros instead.

Definition at line 164 of file gpio-hal-arch.c.