| LPCOpen Platform v1.03 LPCOpen Platform for NXP LPC Microcontrollers

- Main Page
- Modules
- Data Structures
- Files
- Related Pages

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Modules | Macros | Functions | Variables
LPC1857 and LPC4357 Keil MCB board support functions
BOARD: LPC18xx and LPC43xx boards

## Detailed Description

## Modules
| BOARD: LPC1857 Keil MCB board builds options
| BOARD: LPC4357 Keil MCB board builds options
| LPC1857 and LPC4357 Keil MCB board System Init code

## Macros
#define | BOARD_KEIL_MCB_18574357
#define | LED_NUMBER_OF 1
#define | BUTTONS_BUTTON1_GPIO_PORT_NUM 2
#define | BUTTONS_BUTTON1_GPIO_BIT_NUM 0
#define | JOYSTICK_UP_GPIO_PORT_NUM 6
#define | JOYSTICK_UP_GPIO_BIT_NUM 10
#define | JOYSTICK_DOWN_GPIO_PORT_NUM 6
#define | JOYSTICK_DOWN_GPIO_BIT_NUM 11
#define | JOYSTICK_LEFT_GPIO_PORT_NUM 6
#define | JOYSTICK_LEFT_GPIO_BIT_NUM 12
#define | JOYSTICK_RIGHT_GPIO_PORT_NUM 6
#define | JOYSTICK_RIGHT_GPIO_BIT_NUM 13
#define | JOYSTICK_PRESS_GPIO_PORT_NUM 6
#define | JOYSTICK_PRESS_GPIO_BIT_NUM 8
#define | JOY_UP 0x01
#define | JOY_DOWN 0x02
#define | JOY_LEFT 0x04
#define | JOY_RIGHT 0x08
#define | JOY_PRESS 0x10
#define | NO_BUTTON_PRESSED 0x00
#define | BUTTONS_BUTTON1 0x01
#define | LEDS_LED1 0x01
#define | LEDS_LED2 0x02
#define | LEDS_LED3 0x04
#define | LEDS_LED4 0x08
#define | LEDS_NO_LEDS 0x00
#define | I2CDEV_UDA1380_ADDR (0x34 >> 1)
#define | UDA1380_I2C_BUS I2C0
#define | FRAMEBUFFER_ADDR 0x28000000
#define | BOARD_LCD MCB4300_LCD
#define | SSP_ID LPC_SSP0
#define | C_GLCD_H_SIZE 240
#define | C_GLCD_V_SIZE 320
#define | TSC_I2C_ADDR (0x82 >> 1) /* Touchscreen 7-bit I2C address */
#define | TSC_I2C_BUS I2C0
#define | SYS_CTRL1 0x03
#define | SYS_CTRL2 0x04
#define | INT_CTRL 0x09
#define | INT_EN 0x0A
#define | INT_STA 0x0B
#define | GPIO_ALT_FUNCT 0x17
#define | ADC_CTRL1 0x20
#define | ADC_CTRL2 0x21
#define | TSC_CTRL 0x40
#define | TSC_CFG 0x41
#define | FIFO_TH 0x4A
#define | FIFO_STA 0x4B
#define | FIFO_SIZE 0x4C
#define | DATA_X 0x4D
#define | DATA_Y 0x4F
#define | DATA_Z 0x51
#define | TSC_FRACTION_Z 0x56
#define | TSC_I_DRIVE 0x58
#define | TSC_SHIELD 0x59
#define | DATA_XYZ 0xD7

## Functions
void | Board_ADC_Init (void)
| Sets up board specific ADC interface.
void | Board_I2C_Init (I2C_ID_T id)
| Sets up board specific I2C interface.
STATIC INLINE void | Board_I2C_EnableFastPlus (I2C_ID_T id)
| Sets up I2C Fast Plus mode.
STATIC INLINE void | Board_I2C_DisableFastPlus (I2C_ID_T id)
| Disable I2C Fast Plus mode and enables default mode.
void | Board_GPIO_Int_Init (void)
| Initializes board specific GPIO Interrupt.
void | Board_SDMMC_Init (void)
| Sets up board specific SDMMC interface.
void | Board_SSP_Init (LPC_SSP_T *pSSP)
| Sets up board specific SSP interface.
void | Board_ENET_GetMacADDR (uint8_t *mcaddr)
| Returns the MAC address assigned to this board.
void | Board_UART_Init (LPC_USART_T *pUART)
| Initialize pin muxing for a UART.
void | Board_LCD_Init (void)
| Initialize the LCD interface.
void | Board_InitLCDController (void)
| Initializes the LCD Controller.
void | Board_InitTouchController (void)
| Initialize touchscreen controller.
bool | Board_GetTouchPos (int16_t *pX, int16_t *pY)
| Get touch screen position (Polled mode)
bool | Board_I2C_GetTouchPos (int16_t *pX, int16_t *pY)
| Get touch screen position (Interrupt Based)
void | Board_SetLCDBacklight (uint8_t Intensity)
| Set LCD Backlight.
void | Board_Buttons_Init (void)
| Initializes board specific buttons.
void | Board_Joystick_Init (void)
| Initializes board specific joystick.
uint8_t | Joystick_GetStatus (void)
| Initialize joystick interface on board.
uint32_t | Buttons_GetStatus (void)
| Returns button(s) state on board.
void | Board_Audio_Init (LPC_I2S_T *pI2S, int micIn)
| Sets up board specific I2S interface and UDA1380.
void | Board_DAC_Init (LPC_DAC_T *pDAC)
| Initialize DAC interface for the board.
void | Serial_CreateStream (void *Stream)
| Create Serial Stream.

## Variables
const LCD_Config_T | MCB4300_LCD

## Macro Definition Documentation

#define ADC_CTRL1 0x20

Definition at line 132 of file board_keil_mcb_18574357.h.

#define ADC_CTRL2 0x21

Definition at line 133 of file board_keil_mcb_18574357.h.

#define BOARD_KEIL_MCB_18574357

Definition at line 73 of file board_keil_mcb_18574357.h.

#define BOARD_LCD MCB4300_LCD

Definition at line 113 of file board_keil_mcb_18574357.h.

#define BUTTONS_BUTTON1 0x01

Definition at line 97 of file board_keil_mcb_18574357.h.

#define BUTTONS_BUTTON1_GPIO_BIT_NUM 0

Definition at line 78 of file board_keil_mcb_18574357.h.

#define BUTTONS_BUTTON1_GPIO_PORT_NUM 2

Definition at line 77 of file board_keil_mcb_18574357.h.

#define C_GLCD_H_SIZE 240

Definition at line 117 of file board_keil_mcb_18574357.h.

#define C_GLCD_V_SIZE 320

Definition at line 118 of file board_keil_mcb_18574357.h.

#define DATA_X 0x4D

Definition at line 139 of file board_keil_mcb_18574357.h.

#define DATA_XYZ 0xD7

Definition at line 145 of file board_keil_mcb_18574357.h.

#define DATA_Y 0x4F

Definition at line 140 of file board_keil_mcb_18574357.h.

#define DATA_Z 0x51

Definition at line 141 of file board_keil_mcb_18574357.h.

#define FIFO_SIZE 0x4C

Definition at line 138 of file board_keil_mcb_18574357.h.

#define FIFO_STA 0x4B

Definition at line 137 of file board_keil_mcb_18574357.h.

#define FIFO_TH 0x4A

Definition at line 136 of file board_keil_mcb_18574357.h.

#define FRAMEBUFFER_ADDR 0x28000000

Definition at line 110 of file board_keil_mcb_18574357.h.

#define GPIO_ALT_FUNCT 0x17

Definition at line 131 of file board_keil_mcb_18574357.h.

#define I2CDEV_UDA1380_ADDR (0x34 >> 1)

Definition at line 106 of file board_keil_mcb_18574357.h.

#define INT_CTRL 0x09

Definition at line 128 of file board_keil_mcb_18574357.h.

#define INT_EN 0x0A

Definition at line 129 of file board_keil_mcb_18574357.h.

#define INT_STA 0x0B

Definition at line 130 of file board_keil_mcb_18574357.h.

#define JOY_DOWN 0x02

Definition at line 91 of file board_keil_mcb_18574357.h.

#define JOY_LEFT 0x04

Definition at line 92 of file board_keil_mcb_18574357.h.

#define JOY_PRESS 0x10

Definition at line 94 of file board_keil_mcb_18574357.h.

#define JOY_RIGHT 0x08

Definition at line 93 of file board_keil_mcb_18574357.h.

#define JOY_UP 0x01

Definition at line 90 of file board_keil_mcb_18574357.h.

#define JOYSTICK_DOWN_GPIO_BIT_NUM 11

Definition at line 82 of file board_keil_mcb_18574357.h.

#define JOYSTICK_DOWN_GPIO_PORT_NUM 6

Definition at line 81 of file board_keil_mcb_18574357.h.

#define JOYSTICK_LEFT_GPIO_BIT_NUM 12

Definition at line 84 of file board_keil_mcb_18574357.h.

#define JOYSTICK_LEFT_GPIO_PORT_NUM 6

Definition at line 83 of file board_keil_mcb_18574357.h.

#define JOYSTICK_PRESS_GPIO_BIT_NUM 8

Definition at line 88 of file board_keil_mcb_18574357.h.

#define JOYSTICK_PRESS_GPIO_PORT_NUM 6

Definition at line 87 of file board_keil_mcb_18574357.h.

#define JOYSTICK_RIGHT_GPIO_BIT_NUM 13

Definition at line 86 of file board_keil_mcb_18574357.h.

#define JOYSTICK_RIGHT_GPIO_PORT_NUM 6

Definition at line 85 of file board_keil_mcb_18574357.h.

#define JOYSTICK_UP_GPIO_BIT_NUM 10

Definition at line 80 of file board_keil_mcb_18574357.h.

#define JOYSTICK_UP_GPIO_PORT_NUM 6

Definition at line 79 of file board_keil_mcb_18574357.h.

#define LED_NUMBER_OF 1

Definition at line 75 of file board_keil_mcb_18574357.h.

#define LEDS_LED1 0x01

Definition at line 99 of file board_keil_mcb_18574357.h.

#define LEDS_LED2 0x02

Definition at line 100 of file board_keil_mcb_18574357.h.

#define LEDS_LED3 0x04

Definition at line 101 of file board_keil_mcb_18574357.h.

#define LEDS_LED4 0x08

Definition at line 102 of file board_keil_mcb_18574357.h.

#define LEDS_NO_LEDS 0x00

Definition at line 103 of file board_keil_mcb_18574357.h.

#define NO_BUTTON_PRESSED 0x00

Definition at line 95 of file board_keil_mcb_18574357.h.

#define SSP_ID LPC_SSP0

LCD controller definitions

Definition at line 116 of file board_keil_mcb_18574357.h.

#define SYS_CTRL1 0x03

STMPE811 Register addresses

Definition at line 126 of file board_keil_mcb_18574357.h.

#define SYS_CTRL2 0x04

Definition at line 127 of file board_keil_mcb_18574357.h.

#define TSC_CFG 0x41

Definition at line 135 of file board_keil_mcb_18574357.h.

#define TSC_CTRL 0x40

Definition at line 134 of file board_keil_mcb_18574357.h.

#define TSC_FRACTION_Z 0x56

Definition at line 142 of file board_keil_mcb_18574357.h.

#define TSC_I2C_ADDR (0x82 >> 1) /* Touchscreen 7-bit I2C address */

Private types/definitions for touch screen controller (STMPE811)

Definition at line 122 of file board_keil_mcb_18574357.h.

#define TSC_I2C_BUS I2C0

Definition at line 123 of file board_keil_mcb_18574357.h.

#define TSC_I_DRIVE 0x58

Definition at line 143 of file board_keil_mcb_18574357.h.

#define TSC_SHIELD 0x59

Definition at line 144 of file board_keil_mcb_18574357.h.

#define UDA1380_I2C_BUS I2C0

Definition at line 107 of file board_keil_mcb_18574357.h.

## Function Documentation

void Board_ADC_Init | ( | void |  | ) |

Sets up board specific ADC interface.

Returns
  Nothing

Sets up board specific ADC interface.

Returns
  Nothing

Definition at line 159 of file board_nxp_xpresso_11c24.c.

void Board_Audio_Init | ( | LPC_I2S_T * | pI2S,
|  | int | micIn
| ) |  |

Sets up board specific I2S interface and UDA1380.

Parameters

  pI2S | : Pointer to I2S interface to initialize
  micIn | : If 1 selects MIC as input device, if 0 selects LINE_IN

Returns
  Nothing

Sets up board specific I2S interface and UDA1380.

Initialize I2S interface for the board and UDA1380.

Parameters

  pI2S | : I2S peripheral to use (Must be LPC_I2S)
  micIn | : If 1 MIC will be used as input device, if 0 LINE_IN will be used as input to Audio Codec.

Returns
  Nothing

Definition at line 717 of file board_ea_devkit_17884088.c.

void Board_Buttons_Init | ( | void |  | ) |

Initializes board specific buttons.

Returns
  Nothing

Initializes board specific buttons.

Initialize button(s) interface on board.

Returns
  Nothing

Definition at line 186 of file board_nxp_xpresso_11u14.c.

void Board_DAC_Init | ( | LPC_DAC_T * | pDAC | ) |

Initialize DAC interface for the board.

Parameters

  pDAC | : Pointer to DAC register interface used on this board

Returns
  Nothing

Definition at line 756 of file board_hitex_eva_18504350.c.

void Board_ENET_GetMacADDR | ( | uint8_t * | mcaddr | ) |

Returns the MAC address assigned to this board.

Parameters

  mcaddr | : Pointer to 6-byte character array to populate with MAC address

Returns
  Nothing

Parameters

  mcaddr | : Pointer to 6-byte character array to populate with MAC address

Returns
  Nothing

Note
  Returns the MAC address used by Ethernet

Definition at line 461 of file board_ea_devkit_17884088.c.

bool Board_GetTouchPos | ( | int16_t * | pX,
|  | int16_t * | pY
| ) |  |

Get touch screen position (Polled mode)

Parameters

  pX | : pointer to X position
  pY | : pointer to Y position

Returns
  true if touch is detected or false if otherwise

Note
  When using OS use Board_I2C_GetTouchPos(), instead of this function as this function uses busy wait to do I2C transfers.

Get touch screen position (Polled mode)

Parameters

  pX | : Pointer to x-Coord to populate
  pY | : Pointer to y-Coord to populate

Returns
  true if touch is detected or false if otherwise

Definition at line 650 of file board_ea_devkit_17884088.c.

void Board_GPIO_Int_Init | ( | void |  | ) |

Initializes board specific GPIO Interrupt.

Returns
  Nothing

Definition at line 660 of file board_keil_mcb_18574357.c.

STATIC INLINE void Board_I2C_DisableFastPlus | ( | I2C_ID_T | id | ) |

Disable I2C Fast Plus mode and enables default mode.

Parameters

  id | : Must always be I2C0

Returns
  Nothing

See Also
  Board_I2C_EnableFastPlus()

Definition at line 180 of file board_keil_mcb_18574357.h.

STATIC INLINE void Board_I2C_EnableFastPlus | ( | I2C_ID_T | id | ) |

Sets up I2C Fast Plus mode.

Parameters

  id | : Must always be I2C0

Returns
  Nothing

Note
  This function must be called before calling Chip_I2C_SetClockRate() to set clock rates above normal range 100KHz to 400KHz. Only I2C0 supports this mode.

Definition at line 169 of file board_keil_mcb_18574357.h.

bool Board_I2C_GetTouchPos | ( | int16_t * | pX,
|  | int16_t * | pY
| ) |  |

Get touch screen position (Interrupt Based)

Parameters

  pX | : pointer to X position
  pY | : pointer to Y position

Returns
  true if touch is detected or false if otherwise

Note
  To use this function, I2C interrupt for TSC_I2C_BUS must be enabled, and the corresponding handler must call Chip_I2C_MasterStateHandler()

Definition at line 590 of file board_keil_mcb_18574357.c.

void Board_I2C_Init | ( | I2C_ID_T | id | ) |

Sets up board specific I2C interface.

Parameters

  id | : I2C Interface ID (I2C0, I2C1 ... etc)

Returns
  Nothing

Sets up board specific I2C interface.

Parameters

  id | : Must be passed as I2C0

Returns
  Nothing

Parameters

  id | : I2C peripheral ID (Must be I2C0)

Returns
  Nothing

Parameters

  id | : I2C peripheral ID (I2C0, I2C1 or I2C2)

Returns
  Nothing

Sets up board specific I2C interface.

Parameters

  id | : Must be passed as I2C0

Returns
  Nothing

Parameters

  id | : I2C peripheral ID (Must be I2C0)

Returns
  Nothing

Definition at line 88 of file board_nxp_xpresso_11c24.h.

void Board_InitLCDController | ( | void |  | ) |

Initializes the LCD Controller.

Returns
  Nothing

Initializes the LCD Controller.

Returns
  Nothing

Definition at line 575 of file board_ea_devkit_17884088.c.

void Board_InitTouchController | ( | void |  | ) |

Initialize touchscreen controller.

Returns
  Nothing

Definition at line 626 of file board_ea_devkit_17884088.c.

void Board_Joystick_Init | ( | void |  | ) |

Initializes board specific joystick.

Returns
  Nothing

Initializes board specific joystick.

Initialize joystick interface on board.

Returns
  Nothing

Definition at line 200 of file board_nxp_xpresso_11u14.c.

void Board_LCD_Init | ( | void |  | ) |

Initialize the LCD interface.

Returns
  Nothing

Initialize the LCD interface.

Returns
  Nothing

Definition at line 542 of file board_ea_devkit_17884088.c.

void Board_SDMMC_Init | ( | void |  | ) |

Sets up board specific SDMMC interface.

Returns
  Nothing

Sets up board specific SDMMC interface.

Returns
  Nothing

Definition at line 691 of file board_hitex_eva_18504350.c.

void Board_SetLCDBacklight | ( | uint8_t | Intensity | ) |

Set LCD Backlight.

Returns
  Nothing

Set LCD Backlight.

Parameters

  Intensity | : Backlight intensity (0 = off, >=1 = on)

Returns
  None

Note
  On boards where a GPIO is used to control backlight on/off state, a '0' or '1' value will turn off or on the backlight. On some boards, a non-0 value will control backlight intensity via a PWN. For PWM systems, the intensity value is a percentage value between 0 and 100%.

Definition at line 710 of file board_ea_devkit_17884088.c.

void Board_SSP_Init | ( | LPC_SSP_T * | pSSP | ) |

Sets up board specific SSP interface.

Parameters

  pSSP | : Pointer to SSP interface to initialize

Returns
  Nothing

Sets up board specific SSP interface.

Parameters

  pSSP | : Pointer to SSP interface to initialize

Returns
  Nothing

Definition at line 169 of file board_nxp_xpresso_1347.c.

void Board_UART_Init | ( | LPC_USART_T * | pUART | ) |

Initialize pin muxing for a UART.

Parameters

  pUART | : Pointer to UART register block for UART pins to init

Returns
  Nothing

Definition at line 379 of file board_ea_devkit_17884088.c.

uint32_t Buttons_GetStatus | ( | void |  | ) |

Returns button(s) state on board.

Returns
  Returns BUTTONS_BUTTON1 if button1 is pressed

Returns button(s) state on board.

Returns
  status of button

Definition at line 191 of file board_nxp_xpresso_11u14.c.

uint8_t Joystick_GetStatus | ( | void |  | ) |

Initialize joystick interface on board.

Returns
  joystick status: up, down, left or right

Initialize joystick interface on board.

Returns joystick states on board.

Returns
  status of Joystick

Initialize joystick interface on board.

Returns joystick states on board.

System Clock Frequency (Core Clock)

Definition at line 214 of file board_nxp_xpresso_11u14.c.

void Serial_CreateStream | ( | void * | Stream | ) |

Create Serial Stream.

FIXME.

Parameters

  Stream | : Pointer to stream

Returns
  Nothing

Definition at line 833 of file board_ea_devkit_17884088.c.

## Variable Documentation

const uint8_t ledports[] = {6, 6, 6, 6, 6, 4, 4, 4}
| static

Definition at line 47 of file board_keil_mcb_18574357.c.

const LCD_Config_T MCB4300_LCD

Definition at line 62 of file board_keil_mcb_18574357.c.