RTEMS 6.3
Loading...
Searching...
No Matches
io-defs.h File Reference

Input/output module definitions. More...

#include <bsp/lpc176x.h>
#include <bsp/common-types.h>

Go to the source code of this file.

Data Structures

struct  lpc176x_module_entry
 Defines the module entry. More...

Macros

#define LPC176X_PLL0CON   0XAAU
#define LPC176X_PLL0CFG   0X55U
#define LPC176X_CCLK_PRESCALER_DIVISOR   1000000U
#define LPC176X_PINSEL   ( &PINSEL0 )
#define LPC176X_PINMODE   ( &PINMODE0 )
#define LPC176X_PIN_SELECT(index)
#define LPC176X_PIN_SELECT_SHIFT(index)
#define LPC176X_PIN_SELECT_MASK   0x3U
#define LPC176X_PIN_SELECT_MASK_SIZE   2U
#define LPC176X_PIN_UART_0_TXD   2U
#define LPC176X_PIN_UART_0_RXD   3U
#define LPC176X_PIN_UART_1_TXD   15U
#define LPC176X_PIN_UART_1_RXD   16U
#define LPC176X_PIN_UART_2_TXD   10U
#define LPC176X_PIN_UART_2_RXD   11U
#define LPC176X_PIN_UART_3_TXD   0U
#define LPC176X_PIN_UART_3_RXD   1U
#define LPC176X_MODULE_BITS_COUNT   32U
#define LPC176X_MODULE_COUNT   ( LPC176X_MODULE_USB + 1U )
#define LPC176X_IO_PORT_COUNT   5U
#define LPC176X_IO_INDEX_MAX
#define LPC176X_IO_INDEX_BY_PORT(port, bit)
#define LPC176X_IO_PORT(index)
#define LPC176X_IO_PORT_BIT(index)
#define LPC176X_MODULE_ENTRY(mod, pwr, clk, idx)

Enumerations

enum  lpc176x_pin_function {
  LPC176X_PIN_FUNCTION_00 , LPC176X_PIN_FUNCTION_01 , LPC176X_PIN_FUNCTION_10 , LPC176X_PIN_FUNCTION_11 ,
  LPC176X_PIN_FUNCTION_COUNT
}
 Defines the functions according to the pin. More...
enum  lpc176x_pin_mode {
  LPC176X_PIN_MODE_PULLUP , LPC176X_PIN_MODE_REPEATER , LPC176X_PIN_MODE_NONE , LPC176X_PIN_MODE_PULLDOWN ,
  LPC176X_PIN_MODE_COUNT
}
 Defines the pin modes.
enum  lpc176x_pin_type { LPC176X_PIN_TYPE_DEFAULT , LPC176X_PIN_TYPE_ADC , LPC176X_PIN_TYPE_DAC , LPC176X_PIN_TYPE_OPEN_DRAIN }
 Defines all type of pins. More...
enum  lpc176x_scb_value_pclksel { LPC176X_SCB_PCLKSEL0 , LPC176X_SCB_PCLKSEL1 , LPC176X_SCB_PCLKSEL_COUNT }
 Represents each pclksel number. More...

Detailed Description

Input/output module definitions.

Macro Definition Documentation

◆ LPC176X_IO_INDEX_BY_PORT

#define LPC176X_IO_INDEX_BY_PORT ( port,
bit )
Value:
( ( ( port ) << 5U ) + ( bit ) )

◆ LPC176X_IO_INDEX_MAX

#define LPC176X_IO_INDEX_MAX
Value:
( LPC176X_IO_PORT_COUNT * \
LPC176X_MODULE_BITS_COUNT )

◆ LPC176X_IO_PORT

#define LPC176X_IO_PORT ( index)
Value:
( ( index ) >> 5U )

◆ LPC176X_IO_PORT_BIT

#define LPC176X_IO_PORT_BIT ( index)
Value:
( ( index ) & 0x1FU )

◆ LPC176X_MODULE_ENTRY

#define LPC176X_MODULE_ENTRY ( mod,
pwr,
clk,
idx )
Value:
[ mod ] = { \
.power = pwr, \
.clock = clk, \
.index = idx \
}

◆ LPC176X_PIN_SELECT

#define LPC176X_PIN_SELECT ( index)
Value:
( ( index ) >> 4U )

◆ LPC176X_PIN_SELECT_SHIFT

#define LPC176X_PIN_SELECT_SHIFT ( index)
Value:
( ( ( index ) & 0xFU ) << 1U )

Enumeration Type Documentation

◆ lpc176x_pin_function

Defines the functions according to the pin.

Enumerated type to define the set of pin function for a io device.

◆ lpc176x_pin_type

Defines all type of pins.

Enumerated type to define the set of pin type for a io device.

◆ lpc176x_scb_value_pclksel

Represents each pclksel number.

Enumerated type to define the set of values for a pcklsel.