LPCOpen Platform  v1.03
LPCOpen Platform for NXP LPC Microcontrollers
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
LPC1857 and LPC4357 Keil MCB board support functions

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.