LPCOpen Platform  v1.03
LPCOpen Platform for NXP LPC Microcontrollers
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
LPC1788 and LPC4088 Embedded Artists Development Kit support functions

Detailed Description

Modules

 BOARD: LPC1788 Embedded Artists Development Kit build options
 
 BOARD: LPC4088 Embedded Artists Development Kit build options
 
 LPC1788 and LPC4088 Embedded Artists Development Kit System Init code
 

Macros

#define BOARD_EA_DEVKIT_17884088
 
#define FRAMEBUFFER_ADDR   EMC_ADDRESS_DYCS0
 
#define I2CDEV_UDA1380_ADDR   0x1A
 
#define UDA1380_I2C_BUS   I2C0
 
#define LEDS_LED1   0x01
 
#define LEDS_LED2   0x02
 
#define LEDS_LED3   0x04
 
#define LEDS_LED4   0x08
 
#define LEDS_NO_LEDS   0x00
 
#define BUTTONS_BUTTON1   0x01
 
#define NO_BUTTON_PRESSED   0x00
 
#define JOY_UP   0x01
 
#define JOY_DOWN   0x02
 
#define JOY_LEFT   0x04
 
#define JOY_RIGHT   0x08
 
#define JOY_PRESS   0x10
 
#define BOARD_LCD   EA320x240
 
#define NANDFLASH_READY_PORT   2
 
#define NANDFLASH_READY_PIN   21
 

Functions

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_Audio_Init (LPC_I2S_T *pI2S, int micIn)
 Sets up board specific I2S interface and UDA1380 CODEC.
 
void Board_SSP_Init (LPC_SSP_T *pSSP)
 Initialize pin muxing for SSP 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_CAN_Init (LPC_CAN_T *pCAN)
 Sets up board specific CAN interface.
 
void Board_LCD_Init (void)
 Initialize LCD Interface.
 
void Board_InitLCDController (void)
 Initialize the LCD controller on the QVGA (320x240) TFT LCD.
 
void Board_InitTouchController (void)
 Initialize touchscreen controller.
 
bool Board_GetTouchPos (int16_t *pX, int16_t *pY)
 Get Touch coordinates.
 
void Board_SetLCDBacklight (uint8_t Intensity)
 Set LCD Backlight.
 
void Board_Buttons_Init (void)
 Initialize buttons on the board.
 
uint32_t Buttons_GetStatus (void)
 Get button status.
 
void Board_Joystick_Init (void)
 Initialize Joystick.
 
uint8_t Joystick_GetStatus (void)
 Get Joystick status.
 
void Board_RTC_EV_Init (void)
 Sets up board specific Event Monitor/Recorder interface.
 
void Serial_CreateStream (void *Stream)
 Create Serial Stream.
 
void Board_SDC_Init (void)
 Sets up board specific SDC peripheral.
 
STATIC INLINE void Board_NorFlash_WriteCmd (uint32_t addr, uint16_t data)
 Write on address lines and data lines which are being connected to NOR Flash.
 
STATIC INLINE uint16_t Board_NorFlash_ReadCmdData (uint32_t addr)
 Read command data returned by NOR Flash.
 
STATIC INLINE void Board_NorFlash_WriteWord (uint32_t addr, uint16_t data)
 Write 16-bit data to NOR Flash.
 
STATIC INLINE uint16_t Board_NorFlash_ReadWord (uint32_t addr)
 Read 16-bit data from NOR Flash.
 
void Board_NANDFLash_Init (void)
 Read 16-bit data from NOR Flash.
 
STATIC INLINE bool Board_NANDFLash_GetReady (void)
 Poll NAND Ready/Busy signal.
 
STATIC INLINE void Board_NANDFLash_WriteCmd (uint8_t cmd)
 Write a command to NAND Flash.
 
STATIC INLINE void Board_NANDFLash_WriteAddr (uint8_t addr)
 Write a address byte to NAND Flash.
 
STATIC INLINE void Board_NANDFLash_WriteByte (uint8_t data)
 Write a byte to NAND Flash.
 
STATIC INLINE uint8_t Board_NANDFLash_ReadByte (void)
 Read data byte from Nand Flash.
 

Variables

const LCD_Config_T EA320x240
 

Macro Definition Documentation

#define BOARD_EA_DEVKIT_17884088

Build for EA1788/4088 boards

Definition at line 76 of file board_ea_devkit_17884088.h.

#define BOARD_LCD   EA320x240

Default LCD configuration data for examples

Definition at line 115 of file board_ea_devkit_17884088.h.

#define BUTTONS_BUTTON1   0x01

Button defines

Definition at line 95 of file board_ea_devkit_17884088.h.

#define BUTTONS_BUTTON1_GPIO_BIT_NUM   10

Definition at line 104 of file board_ea_devkit_17884088.c.

#define BUTTONS_BUTTON1_GPIO_PORT_NUM   2

Definition at line 103 of file board_ea_devkit_17884088.c.

#define COORD_GET_NUM   (10)

Definition at line 90 of file board_ea_devkit_17884088.c.

#define FRAMEBUFFER_ADDR   EMC_ADDRESS_DYCS0

Frame buffer address for LCD

Definition at line 78 of file board_ea_devkit_17884088.h.

#define I2CDEV_UDA1380_ADDR   0x1A

UDA1380 address

Definition at line 80 of file board_ea_devkit_17884088.h.

#define JOY_DOWN   0x02

Definition at line 102 of file board_ea_devkit_17884088.h.

#define JOY_LEFT   0x04

Definition at line 103 of file board_ea_devkit_17884088.h.

#define JOY_PRESS   0x10

Definition at line 105 of file board_ea_devkit_17884088.h.

#define JOY_RIGHT   0x08

Definition at line 104 of file board_ea_devkit_17884088.h.

#define JOY_UP   0x01

Joystick defines

Definition at line 101 of file board_ea_devkit_17884088.h.

#define JOYSTICK_DOWN_GPIO_BIT_NUM   23

Definition at line 108 of file board_ea_devkit_17884088.c.

#define JOYSTICK_DOWN_GPIO_PORT_NUM   2

Definition at line 107 of file board_ea_devkit_17884088.c.

#define JOYSTICK_LEFT_GPIO_BIT_NUM   25

Definition at line 110 of file board_ea_devkit_17884088.c.

#define JOYSTICK_LEFT_GPIO_PORT_NUM   2

Definition at line 109 of file board_ea_devkit_17884088.c.

#define JOYSTICK_PRESS_GPIO_BIT_NUM   22

Definition at line 114 of file board_ea_devkit_17884088.c.

#define JOYSTICK_PRESS_GPIO_PORT_NUM   2

Definition at line 113 of file board_ea_devkit_17884088.c.

#define JOYSTICK_RIGHT_GPIO_BIT_NUM   27

Definition at line 112 of file board_ea_devkit_17884088.c.

#define JOYSTICK_RIGHT_GPIO_PORT_NUM   2

Definition at line 111 of file board_ea_devkit_17884088.c.

#define JOYSTICK_UP_GPIO_BIT_NUM   26

Definition at line 106 of file board_ea_devkit_17884088.c.

#define JOYSTICK_UP_GPIO_PORT_NUM   2

Definition at line 105 of file board_ea_devkit_17884088.c.

#define LCD_BACKLIGHT_PINNUM   18

Definition at line 101 of file board_ea_devkit_17884088.c.

#define LCD_BACKLIGHT_PORTNUM   1

Definition at line 100 of file board_ea_devkit_17884088.c.

Definition at line 95 of file board_ea_devkit_17884088.c.

Definition at line 96 of file board_ea_devkit_17884088.c.

#define LEDS_LED1   0x01

LED defines

Definition at line 86 of file board_ea_devkit_17884088.h.

#define LEDS_LED2   0x02

Definition at line 87 of file board_ea_devkit_17884088.h.

#define LEDS_LED3   0x04

Definition at line 88 of file board_ea_devkit_17884088.h.

#define LEDS_LED4   0x08

Definition at line 89 of file board_ea_devkit_17884088.h.

#define LEDS_NO_LEDS   0x00

Definition at line 90 of file board_ea_devkit_17884088.h.

#define NANDFLASH_READY_PIN   21

Definition at line 352 of file board_ea_devkit_17884088.h.

#define NANDFLASH_READY_PORT   2

Definition at line 351 of file board_ea_devkit_17884088.h.

#define NO_BUTTON_PRESSED   0x00

Definition at line 96 of file board_ea_devkit_17884088.h.

#define NUM_LEDS   2

Definition at line 116 of file board_ea_devkit_17884088.c.

Definition at line 82 of file board_ea_devkit_17884088.c.

#define TSC2046_CONVERSION_BITS   12

Definition at line 56 of file board_ea_devkit_17884088.c.

#define TSC2046_COORD_MAX   (0xFFF)

Definition at line 84 of file board_ea_devkit_17884088.c.

#define TSC2046_CS_PINNUM   20

Definition at line 92 of file board_ea_devkit_17884088.c.

#define TSC2046_CS_PORTNUM   0

Definition at line 91 of file board_ea_devkit_17884088.c.

#define TSC2046_DC_PINNUM   19

Definition at line 94 of file board_ea_devkit_17884088.c.

#define TSC2046_DC_PORTNUM   0

Definition at line 93 of file board_ea_devkit_17884088.c.

#define TSC2046_DELTA_VARIANCE   (0x50)

Definition at line 85 of file board_ea_devkit_17884088.c.

#define TSC_12BIT   (0x00 << 3)

Definition at line 65 of file board_ea_devkit_17884088.c.

#define TSC_8BIT   (0x01 << 3)

Definition at line 64 of file board_ea_devkit_17884088.c.

#define TSC_ADC_ON   0x01

Definition at line 67 of file board_ea_devkit_17884088.c.

#define TSC_CHANNEL_X   (0x05 << 4) /* differential */

Definition at line 60 of file board_ea_devkit_17884088.c.

#define TSC_CHANNEL_Y   (0x01 << 4) /* differential */

Definition at line 61 of file board_ea_devkit_17884088.c.

#define TSC_CHANNEL_Z1   (0x03 << 4) /* differential */

Definition at line 62 of file board_ea_devkit_17884088.c.

#define TSC_CHANNEL_Z2   (0x04 << 4) /* differential */

Definition at line 63 of file board_ea_devkit_17884088.c.

#define TSC_CONVERSION_MODE   TSC_12BIT

Definition at line 70 of file board_ea_devkit_17884088.c.

Definition at line 98 of file board_ea_devkit_17884088.c.

Definition at line 97 of file board_ea_devkit_17884088.c.

#define TSC_DFR_MODE   (0x00 << 2) /* Differential Reference Mode */

Definition at line 76 of file board_ea_devkit_17884088.c.

#define TSC_PD   0x00

Definition at line 66 of file board_ea_devkit_17884088.c.

#define TSC_REF_ON   0x02

Definition at line 68 of file board_ea_devkit_17884088.c.

#define TSC_SER_MODE   (0x01 << 2) /* Single-Ended Reference Mode */

Definition at line 75 of file board_ea_devkit_17884088.c.

#define TSC_START   (0x01 << 7)

Definition at line 59 of file board_ea_devkit_17884088.c.

#define UDA1380_I2C_BUS   I2C0

I2C Bus to which UDA1380 is connected

Definition at line 81 of file board_ea_devkit_17884088.h.

Definition at line 78 of file board_ea_devkit_17884088.c.

Definition at line 79 of file board_ea_devkit_17884088.c.

Definition at line 80 of file board_ea_devkit_17884088.c.

Definition at line 81 of file board_ea_devkit_17884088.c.

Function Documentation

void Board_Audio_Init ( LPC_I2S_T pI2S,
int  micIn 
)

Sets up board specific I2S interface and UDA1380 CODEC.

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  )

Initialize buttons on the board.

Returns
Nothing

Definition at line 186 of file board_nxp_xpresso_11u14.c.

void Board_CAN_Init ( LPC_CAN_T pCAN)

Sets up board specific CAN interface.

Parameters
pCAN: Pointer to CAN interface to initialize
Returns
Nothing

Definition at line 791 of file board_ea_devkit_17884088.c.

void Board_Debug_Init ( void  )

Initializes board UART for output, required for printf redirection.

Returns
None

Definition at line 403 of file board_ea_devkit_17884088.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
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 coordinates.

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.

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 186 of file board_ea_devkit_17884088.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. All I2C slaves of I2C0 are connected to P0.27 (SDA0) P0.28 (SCL0) none of them will be accessible in fast plus mode because in fast plus mode P5.2 will be SDA0 and P5.3 will be SCL0, make sure the Fast Mode Plus supporting slave devices are connected to these pins.

Definition at line 169 of file board_ea_devkit_17884088.h.

void Board_I2C_Init ( I2C_ID_T  id)

Sets up board specific I2C interface.

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_Init ( void  )

Set up and initialize all required blocks and functions related to the board hardware.

Returns
None

Definition at line 525 of file board_ea_devkit_17884088.c.

void Board_InitLCDController ( void  )

Initialize the LCD controller on the QVGA (320x240) TFT LCD.

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  )

Initialize Joystick.

Returns
Nothing

Definition at line 200 of file board_nxp_xpresso_11u14.c.

void Board_LCD_Init ( void  )

Initialize LCD Interface.

Returns
Nothing

Definition at line 542 of file board_ea_devkit_17884088.c.

static void Board_LED_Init ( void  )
static

Definition at line 355 of file board_ea_devkit_17884088.c.

void Board_LED_Set ( uint8_t  LEDNumber,
bool  State 
)

Sets the state of a board LED to on or off.

Parameters
LEDNumber: LED number to set state for
State: true for on, false for off
Returns
None

Definition at line 449 of file board_ea_devkit_17884088.c.

bool Board_LED_Test ( uint8_t  LEDNumber)

Returns the current state of a board LED.

Parameters
LEDNumber: LED number to set state for
Returns
true if the LED is on, otherwise false

Definition at line 455 of file board_ea_devkit_17884088.c.

STATIC INLINE bool Board_NANDFLash_GetReady ( void  )

Poll NAND Ready/Busy signal.

Returns
true if ready, false if busy
Note
Polls the R/nB signal and returns the state

Definition at line 365 of file board_ea_devkit_17884088.h.

void Board_NANDFLash_Init ( void  )

Read 16-bit data from NOR Flash.

Returns
Nothing

Definition at line 883 of file board_ea_devkit_17884088.c.

STATIC INLINE uint8_t Board_NANDFLash_ReadByte ( void  )

Read data byte from Nand Flash.

Returns
Byte read from NAND FLASH

Definition at line 404 of file board_ea_devkit_17884088.h.

STATIC INLINE void Board_NANDFLash_WriteAddr ( uint8_t  addr)

Write a address byte to NAND Flash.

Parameters
addr: Address byte
Returns
Nothing

Definition at line 385 of file board_ea_devkit_17884088.h.

STATIC INLINE void Board_NANDFLash_WriteByte ( uint8_t  data)

Write a byte to NAND Flash.

Parameters
data: Data byte
Returns
Nothing

Definition at line 395 of file board_ea_devkit_17884088.h.

STATIC INLINE void Board_NANDFLash_WriteCmd ( uint8_t  cmd)

Write a command to NAND Flash.

Parameters
cmd: Command byte
Returns
Nothing

Definition at line 375 of file board_ea_devkit_17884088.h.

STATIC INLINE uint16_t Board_NorFlash_ReadCmdData ( uint32_t  addr)

Read command data returned by NOR Flash.

Parameters
addr: value which will be placed on address lines
Returns
Data returned by NOR Flash

Definition at line 311 of file board_ea_devkit_17884088.h.

STATIC INLINE uint16_t Board_NorFlash_ReadWord ( uint32_t  addr)

Read 16-bit data from NOR Flash.

Parameters
addr: Offset in NOR Flash
Returns
Nothing

Definition at line 332 of file board_ea_devkit_17884088.h.

STATIC INLINE void Board_NorFlash_WriteCmd ( uint32_t  addr,
uint16_t  data 
)

Write on address lines and data lines which are being connected to NOR Flash.

Parameters
addr: value which will be placed on address lines
data: value which will be placed on data lines
Returns
Nothing

Definition at line 301 of file board_ea_devkit_17884088.h.

STATIC INLINE void Board_NorFlash_WriteWord ( uint32_t  addr,
uint16_t  data 
)

Write 16-bit data to NOR Flash.

Parameters
addr: Offset in NOR Flash
data: Data which will be written to NOR Flash
Returns
Nothing

Definition at line 322 of file board_ea_devkit_17884088.h.

void Board_RTC_EV_Init ( void  )

Sets up board specific Event Monitor/Recorder interface.

Returns
Nothing

Definition at line 825 of file board_ea_devkit_17884088.c.

void Board_SDC_Init ( void  )

Sets up board specific SDC peripheral.

Returns
Nothing

Definition at line 839 of file board_ea_devkit_17884088.c.

void Board_SetLCDBacklight ( uint8_t  Intensity)

Set LCD Backlight.

Parameters
Intensity: Intensity value to be set in LCD
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)

Initialize pin muxing for 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.

int Board_UARTGetChar ( void  )

Get a single character from the UART, required for scanf input.

Returns
EOF if not character was received, or character value

Definition at line 426 of file board_ea_devkit_17884088.c.

void Board_UARTPutChar ( char  ch)

Sends a single character on the UART, required for printf redirection.

Parameters
ch: character to send
Returns
None

Definition at line 418 of file board_ea_devkit_17884088.c.

void Board_UARTPutSTR ( char *  str)

Prints a string to the UART.

Parameters
str: Terminated string to output
Returns
None

Definition at line 439 of file board_ea_devkit_17884088.c.

uint32_t Buttons_GetStatus ( void  )

Get button status.

Returns
status of button

Definition at line 191 of file board_nxp_xpresso_11u14.c.

static int16_t calibrateTSC2046 ( int16_t  Coord,
int16_t  MinVal,
int16_t  MaxVal,
int16_t  TrueSize 
)
static

Definition at line 332 of file board_ea_devkit_17884088.c.

static void configTSC2046Pins ( void  )
static

Definition at line 265 of file board_ea_devkit_17884088.c.

static void delay ( uint32_t  i)
static

Definition at line 171 of file board_ea_devkit_17884088.c.

static void delayMs ( uint32_t  ms)
static

Definition at line 177 of file board_ea_devkit_17884088.c.

static Status evalTSC2046Coord ( uint8_t  command,
uint16_t *  coord 
)
static

Definition at line 304 of file board_ea_devkit_17884088.c.

static void initSSD1289 ( void  )
static

Definition at line 208 of file board_ea_devkit_17884088.c.

uint8_t Joystick_GetStatus ( void  )

Get Joystick status.

Returns
status of Joystick

System Clock Frequency (Core Clock)

Definition at line 214 of file board_nxp_xpresso_11u14.c.

static void readWriteTSC2046 ( uint8_t  command,
uint16_t *  data 
)
static

Definition at line 283 of file board_ea_devkit_17884088.c.

void Serial_CreateStream ( void *  Stream)

Create Serial Stream.

Parameters
Stream: Pointer to stream
Returns
Nothing

Definition at line 833 of file board_ea_devkit_17884088.c.

void SystemCoreClockUpdate ( void  )

Update system core clock rate, should be called if the system has a clock rate change.

Returns
None

Definition at line 372 of file board_ea_devkit_17884088.c.

static void writeLCDReg ( uint16_t  addr,
uint16_t  data 
)
static

Definition at line 184 of file board_ea_devkit_17884088.c.

Variable Documentation

const LCD_Config_T EA320x240

LCD configuration data

Definition at line 136 of file board_ea_devkit_17884088.c.

const LCD_Config_T EA320x240
Initial value:
= {
28,
10,
2,
240,
2,
1,
2,
320,
0,
1,
1,
1,
1,
6,
0
}

LCD configuration data

Definition at line 136 of file board_ea_devkit_17884088.c.

const uint8_t ledBits[NUM_LEDS] = {26, 27}
static

Definition at line 157 of file board_ea_devkit_17884088.c.

uint32_t SystemCoreClock

Current system clock rate, mainly used for sysTick.

< System Clock Frequency (Core Clock)

Definition at line 164 of file board_ea_devkit_17884088.c.

TSC2046_Init_T TSC_Config
static
Initial value:
= {
3758, 149, 3914, 163, 240, 320, 1
}

Local variables

Definition at line 129 of file board_ea_devkit_17884088.c.