RTEMS  5.1
Data Structures | Macros | Enumerations | Functions
io.h File Reference

IO definitions. More...

#include <bspopts.h>
#include <stdbool.h>

Go to the source code of this file.

Data Structures

struct  lm3s69xx_gpio_config
 

Macros

#define LM3S69XX_GPIO_PIN(port, idx)   (((port) << 3) | (idx))
 
#define LM3S69XX_GPIO_PORT_OF_PIN(pin)   (((pin) >> 3) & 0xf)
 
#define LM3S69XX_GPIO_INDEX_OF_PIN(pin)   ((pin) & 0x7)
 
#define LM3S69XX_PIN_UART_TX(port, idx)
 
#define LM3S69XX_PIN_UART_RX(port, idx)
 
#define LM3S69XX_PIN_UART_RTS(port, idx)
 
#define LM3S69XX_PIN_UART_CTS(port, idx)
 
#define LM3S69XX_PIN_LED(port, idx)
 
#define LM3S69XX_PIN_SSI_TX(port, idx)   LM3S69XX_PIN_UART_TX(port, idx)
 
#define LM3S69XX_PIN_SSI_RX(port, idx)   LM3S69XX_PIN_UART_RX(port, idx)
 

Enumerations

enum  lm3s69xx_gpio_direction { LM3S69XX_GPIO_DIRECTION_INPUT, LM3S69XX_GPIO_DIRECTION_OUTPUT }
 
enum  lm3s69xx_gpio_otype { LM3S69XX_GPIO_OTYPE_PUSH_PULL, LM3S69XX_GPIO_OTYPE_OPEN_DRAIN }
 
enum  lm3s69xx_gpio_drive { LM3S69XX_GPIO_DRIVE_2MA, LM3S69XX_GPIO_DRIVE_4MA, LM3S69XX_GPIO_DRIVE_8MA }
 
enum  lm3s69xx_gpio_pull { LM3S69XX_GPIO_NO_PULL, LM3S69XX_GPIO_PULL_UP, LM3S69XX_GPIO_PULL_DOWN }
 
enum  lm3s69xx_gpio_digital { LM3S69XX_GPIO_DIGITAL_DISABLE, LM3S69XX_GPIO_DIGITAL_ENABLE }
 
enum  lm3s69xx_gpio_af { LM3S69XX_GPIO_AF_DISABLE, LM3S69XX_GPIO_AF_ENABLE }
 
enum  lm3s69xx_gpio_analog { LM3S69XX_GPIO_ANALOG_DISABLE, LM3S69XX_GPIO_ANALOG_ENABLE }
 
enum  lm3s69xx_gpio_slew_rate_control { LM3S69XX_GPIO_NO_SLEW_RATE_CONTROL, LM3S69XX_GPIO_SLEW_RATE_CONTROL }
 
enum  lm3s69xx_gpio_port {
  LM3S69XX_PORT_A, LM3S69XX_PORT_B, LM3S69XX_PORT_C, LM3S69XX_PORT_D,
  LM3S69XX_PORT_E, LM3S69XX_PORT_F, LM3S69XX_PORT_G
}
 

Functions

void lm3s69xx_gpio_set_config (const lm3s69xx_gpio_config *config)
 
void lm3s69xx_gpio_set_config_array (const lm3s69xx_gpio_config *configs, unsigned int count)
 
void lm3s69xx_gpio_digital_enable (unsigned int pin, bool enable)
 
void lm3s69xx_gpio_analog_mode_select (unsigned int pin, bool enable)
 
void lm3s69xx_gpio_set_pin (unsigned int pin, bool set)
 
bool lm3s69xx_gpio_get_pin (unsigned int pin)
 

Detailed Description

IO definitions.

Macro Definition Documentation

◆ LM3S69XX_PIN_LED

#define LM3S69XX_PIN_LED (   port,
  idx 
)
Value:
{ \
.pin_first = LM3S69XX_GPIO_PIN(port, idx), \
.pin_last = LM3S69XX_GPIO_PIN(port, idx), \
.digital = LM3S69XX_GPIO_DIGITAL_ENABLE, \
.alternate = LM3S69XX_GPIO_AF_DISABLE, \
.analog = LM3S69XX_GPIO_ANALOG_DISABLE, \
.dir = LM3S69XX_GPIO_DIRECTION_OUTPUT, \
.otype = LM3S69XX_GPIO_OTYPE_PUSH_PULL, \
.drive = LM3S69XX_GPIO_DRIVE_8MA, \
.pull = LM3S69XX_GPIO_NO_PULL, \
.slr = LM3S69XX_GPIO_SLEW_RATE_CONTROL \
}

◆ LM3S69XX_PIN_UART_CTS

#define LM3S69XX_PIN_UART_CTS (   port,
  idx 
)
Value:
{ \
.pin_first = LM3S69XX_GPIO_PIN(port, idx), \
.pin_last = LM3S69XX_GPIO_PIN(port, idx), \
.digital = LM3S69XX_GPIO_DIGITAL_ENABLE, \
.alternate = LM3S69XX_GPIO_AF_ENABLE, \
.analog = LM3S69XX_GPIO_ANALOG_DISABLE, \
.dir = LM3S69XX_GPIO_DIRECTION_INPUT, \
.otype = LM3S69XX_GPIO_OTYPE_PUSH_PULL, \
.drive = LM3S69XX_GPIO_DRIVE_2MA, \
.pull = LM3S69XX_GPIO_PULL_UP, \
.slr = LM3S69XX_GPIO_NO_SLEW_RATE_CONTROL \
}

◆ LM3S69XX_PIN_UART_RTS

#define LM3S69XX_PIN_UART_RTS (   port,
  idx 
)
Value:
{ \
.pin_first = LM3S69XX_GPIO_PIN(port, idx), \
.pin_last = LM3S69XX_GPIO_PIN(port, idx), \
.digital = LM3S69XX_GPIO_DIGITAL_ENABLE, \
.alternate = LM3S69XX_GPIO_AF_ENABLE, \
.analog = LM3S69XX_GPIO_ANALOG_DISABLE, \
.dir = LM3S69XX_GPIO_DIRECTION_OUTPUT, \
.otype = LM3S69XX_GPIO_OTYPE_PUSH_PULL, \
.drive = LM3S69XX_GPIO_DRIVE_2MA, \
.pull = LM3S69XX_GPIO_NO_PULL, \
.slr = LM3S69XX_GPIO_NO_SLEW_RATE_CONTROL \
}

◆ LM3S69XX_PIN_UART_RX

#define LM3S69XX_PIN_UART_RX (   port,
  idx 
)
Value:
{ \
.pin_first = LM3S69XX_GPIO_PIN(port, idx), \
.pin_last = LM3S69XX_GPIO_PIN(port, idx), \
.digital = LM3S69XX_GPIO_DIGITAL_ENABLE, \
.alternate = LM3S69XX_GPIO_AF_ENABLE, \
.analog = LM3S69XX_GPIO_ANALOG_DISABLE, \
.dir = LM3S69XX_GPIO_DIRECTION_INPUT, \
.otype = LM3S69XX_GPIO_OTYPE_PUSH_PULL, \
.drive = LM3S69XX_GPIO_DRIVE_2MA, \
.pull = LM3S69XX_GPIO_PULL_UP, \
.slr = LM3S69XX_GPIO_NO_SLEW_RATE_CONTROL \
}

◆ LM3S69XX_PIN_UART_TX

#define LM3S69XX_PIN_UART_TX (   port,
  idx 
)
Value:
{ \
.pin_first = LM3S69XX_GPIO_PIN(port, idx), \
.pin_last = LM3S69XX_GPIO_PIN(port, idx), \
.digital = LM3S69XX_GPIO_DIGITAL_ENABLE, \
.alternate = LM3S69XX_GPIO_AF_ENABLE, \
.analog = LM3S69XX_GPIO_ANALOG_DISABLE, \
.dir = LM3S69XX_GPIO_DIRECTION_OUTPUT, \
.otype = LM3S69XX_GPIO_OTYPE_PUSH_PULL, \
.drive = LM3S69XX_GPIO_DRIVE_2MA, \
.pull = LM3S69XX_GPIO_NO_PULL, \
.slr = LM3S69XX_GPIO_NO_SLEW_RATE_CONTROL \
}

Function Documentation

◆ lm3s69xx_gpio_analog_mode_select()

void lm3s69xx_gpio_analog_mode_select ( unsigned int  pin,
bool  enable 
)

Enables/disables analog mode on the specified pin.

◆ lm3s69xx_gpio_digital_enable()

void lm3s69xx_gpio_digital_enable ( unsigned int  pin,
bool  enable 
)

Enables/disables digital function on the specified pin.