LPCOpen Platform
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

Modules

 BOARD: LPC1857 and 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 UDA1380_REG_EVALCLK_DEFAULT_VALUE   (0xF << 8 | 0x3 << 4 | 1 << 1)
 
#define UDA1380_REG_I2S_DEFAULT_VALUE   0x0000
 
#define UDA1380_REG_PWRCTRL_DEFAULT_VALUE   (1 << 15 | 1 << 13 | 1 << 10 | 1 << 8 | 1 << 6 | 1 << 4 | 0x0F)
 
#define UDA1380_REG_ANAMIX_DEFAULT_VALUE   0x0000
 
#define UDA1380_REG_HEADAMP_DEFAULT_VALUE   ( 1 << 9 | 2)
 
#define UDA1380_REG_MSTRVOL_DEFAULT_VALUE   0x0000
 
#define UDA1380_REG_MIXVOL_DEFAULT_VALUE   0x0000
 
#define UDA1380_REG_MODEBBT_DEFAULT_VALUE   0x0000
 
#define UDA1380_REG_MSTRMUTE_DEFAULT_VALUE   (2 << 8 | 2)
 
#define UDA1380_REG_MIXSDO_DEFAULT_VALUE   0x0000
 
#define UDA1380_REG_DECVOL_DEFAULT_VALUE   0xE4E4 /* Decrease Volume -28dB */
 
#define UDA1380_REG_PGA_DEFAULT_VALUE   0x0000
 
#define UDA1380_REG_ADC_DEFAULT_VALUE   0x0001 /* Apply 0bB VGA Gain, enable DC Filter */
 
#define UDA1380_REG_AGC_DEFAULT_VALUE   0x0000
 
#define UDA1380_REG_L3_DEFAULT_VALUE   0x0000
 
#define I2CDEV_UDA1380_ADDR   (0x34 >> 1)
 
#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 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
 

Enumerations

enum  UDA1380_REG {
  UDA_EVALM_CLK = 0x00, UDA_BUS_CTRL, UDA_POWER_CTRL, UDA_ANALOG_CTRL,
  UDA_HPAMP_CTRL, UDA_MASTER_VOL_CTRL = 0x10, UDA_MIXER_VOL_CTRL, UDA_MODE_CTRL,
  UDA_MUTE_CTRL, UDA_MIXER_FILTER_CTRL, UDA_DEC_VOL_CTRL = 0x20, UDA_PGA_CTRL,
  UDA_ADC_CTRL, UDA_AGC_CTRL, UDA_TOTAL_REG, UDA_EVALM_CLK = 0x00,
  UDA_BUS_CTRL, UDA_POWER_CTRL, UDA_ANALOG_CTRL, UDA_HPAMP_CTRL,
  UDA_MASTER_VOL_CTRL = 0x10, UDA_MIXER_VOL_CTRL, UDA_MODE_CTRL, UDA_MUTE_CTRL,
  UDA_MIXER_FILTER_CTRL, UDA_DEC_VOL_CTRL = 0x20, UDA_PGA_CTRL, UDA_ADC_CTRL,
  UDA_AGC_CTRL, UDA_TOTAL_REG, UDA_EVALM_CLK = 0x00, UDA_BUS_CTRL,
  UDA_POWER_CTRL, UDA_ANALOG_CTRL, UDA_HPAMP_CTRL, UDA_MASTER_VOL_CTRL = 0x10,
  UDA_MIXER_VOL_CTRL, UDA_MODE_CTRL, UDA_MUTE_CTRL, UDA_MIXER_FILTER_CTRL,
  UDA_DEC_VOL_CTRL = 0x20, UDA_PGA_CTRL, UDA_ADC_CTRL, UDA_AGC_CTRL,
  UDA_TOTAL_REG
}
 
enum  Board_Audio_Input_Sel_Type {
  MCB_18XX_AUDIO_MIC_SELECT = 1 << 2 | 1 << 3, MCB_18XX_AUDIO_LINE_IN_SELECT = 0x00, MCB_18XX_AUDIO_MIC_SELECT = 1 << 2 | 1 << 3, MCB_18XX_AUDIO_LINE_IN_SELECT = 0x00,
  MCB_18XX_AUDIO_MIC_SELECT = 1 << 2 | 1 << 3, MCB_18XX_AUDIO_LINE_IN_SELECT = 0x00
}
 

Functions

void Board_ADC_Init (void)
 Sets up board specific ADC interface.
 
void Board_I2C_Init (LPC_I2C_Type *I2Cx)
 Sets up board specific I2C interface.
 
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_Type *SSPx)
 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_Type *UARTx)
 Initialize pin muxing for a UART.
 
void Board_LCD_Init (void)
 Initialize the LCD interface.
 
void Init_Touch_Controller (void)
 Initializes the STMPE811 touch screen controller.
 
bool GetTouchPos (int16_t *pX, int16_t *pY)
 Get touch screen position.
 
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_Type *I2Sx, Board_Audio_Input_Sel_Type audio_in_sel)
 Sets up board specific I2S interface and UDA1380.
 
void Serial_CreateStream (void *Stream)
 FIXME.
 

Variables

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

Detailed Description

Macro Definition Documentation

#define ADC_CTRL1   0x20

Definition at line 180 of file board_keil_mcb_18574357.h.

#define ADC_CTRL2   0x21

Definition at line 181 of file board_keil_mcb_18574357.h.

#define BOARD_KEIL_MCB_18574357

Definition at line 77 of file board_keil_mcb_18574357.h.

#define BOARD_LCD   MCB4300_LCD

Definition at line 156 of file board_keil_mcb_18574357.h.

#define BUTTONS_BUTTON1   0x01

Definition at line 101 of file board_keil_mcb_18574357.h.

#define BUTTONS_BUTTON1_GPIO_BIT_NUM   0

Definition at line 82 of file board_keil_mcb_18574357.h.

#define BUTTONS_BUTTON1_GPIO_PORT_NUM   2

Definition at line 81 of file board_keil_mcb_18574357.h.

#define C_GLCD_H_SIZE   240

Definition at line 166 of file board_keil_mcb_18574357.h.

#define C_GLCD_V_SIZE   320

Definition at line 167 of file board_keil_mcb_18574357.h.

#define DATA_X   0x4D

Definition at line 187 of file board_keil_mcb_18574357.h.

#define DATA_XYZ   0xD7

Definition at line 193 of file board_keil_mcb_18574357.h.

#define DATA_Y   0x4F

Definition at line 188 of file board_keil_mcb_18574357.h.

#define DATA_Z   0x51

Definition at line 189 of file board_keil_mcb_18574357.h.

#define FIFO_SIZE   0x4C

Definition at line 186 of file board_keil_mcb_18574357.h.

#define FIFO_STA   0x4B

Definition at line 185 of file board_keil_mcb_18574357.h.

#define FIFO_TH   0x4A

Definition at line 184 of file board_keil_mcb_18574357.h.

#define FRAMEBUFFER_ADDR   0x28000000

Definition at line 153 of file board_keil_mcb_18574357.h.

#define GPIO_ALT_FUNCT   0x17

Definition at line 179 of file board_keil_mcb_18574357.h.

#define I2CDEV_UDA1380_ADDR   (0x34 >> 1)

Definition at line 131 of file board_keil_mcb_18574357.h.

#define INT_CTRL   0x09

Definition at line 176 of file board_keil_mcb_18574357.h.

#define INT_EN   0x0A

Definition at line 177 of file board_keil_mcb_18574357.h.

#define INT_STA   0x0B

Definition at line 178 of file board_keil_mcb_18574357.h.

#define JOY_DOWN   0x02

Definition at line 95 of file board_keil_mcb_18574357.h.

#define JOY_LEFT   0x04

Definition at line 96 of file board_keil_mcb_18574357.h.

#define JOY_PRESS   0x10

Definition at line 98 of file board_keil_mcb_18574357.h.

#define JOY_RIGHT   0x08

Definition at line 97 of file board_keil_mcb_18574357.h.

#define JOY_UP   0x01

Definition at line 94 of file board_keil_mcb_18574357.h.

#define JOYSTICK_DOWN_GPIO_BIT_NUM   11

Definition at line 86 of file board_keil_mcb_18574357.h.

#define JOYSTICK_DOWN_GPIO_PORT_NUM   6

Definition at line 85 of file board_keil_mcb_18574357.h.

#define JOYSTICK_LEFT_GPIO_BIT_NUM   12

Definition at line 88 of file board_keil_mcb_18574357.h.

#define JOYSTICK_LEFT_GPIO_PORT_NUM   6

Definition at line 87 of file board_keil_mcb_18574357.h.

#define JOYSTICK_PRESS_GPIO_BIT_NUM   8

Definition at line 92 of file board_keil_mcb_18574357.h.

#define JOYSTICK_PRESS_GPIO_PORT_NUM   6

Definition at line 91 of file board_keil_mcb_18574357.h.

#define JOYSTICK_RIGHT_GPIO_BIT_NUM   13

Definition at line 90 of file board_keil_mcb_18574357.h.

#define JOYSTICK_RIGHT_GPIO_PORT_NUM   6

Definition at line 89 of file board_keil_mcb_18574357.h.

#define JOYSTICK_UP_GPIO_BIT_NUM   10

Definition at line 84 of file board_keil_mcb_18574357.h.

#define JOYSTICK_UP_GPIO_PORT_NUM   6

Definition at line 83 of file board_keil_mcb_18574357.h.

#define LED_NUMBER_OF   1

Definition at line 79 of file board_keil_mcb_18574357.h.

#define LEDS_LED1   0x01

Definition at line 103 of file board_keil_mcb_18574357.h.

#define LEDS_LED2   0x02

Definition at line 104 of file board_keil_mcb_18574357.h.

#define LEDS_LED3   0x04

Definition at line 105 of file board_keil_mcb_18574357.h.

#define LEDS_LED4   0x08

Definition at line 106 of file board_keil_mcb_18574357.h.

#define LEDS_NO_LEDS   0x00

Definition at line 107 of file board_keil_mcb_18574357.h.

#define NO_BUTTON_PRESSED   0x00

Definition at line 99 of file board_keil_mcb_18574357.h.

#define SSP_ID   LPC_SSP0

LCD controller definitions

Definition at line 165 of file board_keil_mcb_18574357.h.

#define SYS_CTRL1   0x03

STMPE811 Register addresses

Definition at line 174 of file board_keil_mcb_18574357.h.

#define SYS_CTRL2   0x04

Definition at line 175 of file board_keil_mcb_18574357.h.

#define TSC_CFG   0x41

Definition at line 183 of file board_keil_mcb_18574357.h.

#define TSC_CTRL   0x40

Definition at line 182 of file board_keil_mcb_18574357.h.

#define TSC_FRACTION_Z   0x56

Definition at line 190 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 171 of file board_keil_mcb_18574357.h.

#define TSC_I_DRIVE   0x58

Definition at line 191 of file board_keil_mcb_18574357.h.

#define TSC_SHIELD   0x59

Definition at line 192 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_ADC_DEFAULT_VALUE   0x0001 /* Apply 0bB VGA Gain, enable DC Filter */

Definition at line 125 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_AGC_DEFAULT_VALUE   0x0000

Definition at line 126 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_ANAMIX_DEFAULT_VALUE   0x0000

Definition at line 114 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_DECVOL_DEFAULT_VALUE   0xE4E4 /* Decrease Volume -28dB */

Definition at line 123 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_EVALCLK_DEFAULT_VALUE   (0xF << 8 | 0x3 << 4 | 1 << 1)

UDA1380 register values

Definition at line 110 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_HEADAMP_DEFAULT_VALUE   ( 1 << 9 | 2)

Definition at line 115 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_I2S_DEFAULT_VALUE   0x0000

Definition at line 111 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_L3_DEFAULT_VALUE   0x0000

Definition at line 128 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_MIXSDO_DEFAULT_VALUE   0x0000

Definition at line 121 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_MIXVOL_DEFAULT_VALUE   0x0000

Definition at line 118 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_MODEBBT_DEFAULT_VALUE   0x0000

Definition at line 119 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_MSTRMUTE_DEFAULT_VALUE   (2 << 8 | 2)

Definition at line 120 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_MSTRVOL_DEFAULT_VALUE   0x0000

Definition at line 117 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_PGA_DEFAULT_VALUE   0x0000

Definition at line 124 of file board_keil_mcb_18574357.h.

#define UDA1380_REG_PWRCTRL_DEFAULT_VALUE   (1 << 15 | 1 << 13 | 1 << 10 | 1 << 8 | 1 << 6 | 1 << 4 | 0x0F)

Definition at line 113 of file board_keil_mcb_18574357.h.

Enumeration Type Documentation

Audio input select structure

Enumerator:
MCB_18XX_AUDIO_MIC_SELECT 
MCB_18XX_AUDIO_LINE_IN_SELECT 
MCB_18XX_AUDIO_MIC_SELECT 
MCB_18XX_AUDIO_LINE_IN_SELECT 
MCB_18XX_AUDIO_MIC_SELECT 
MCB_18XX_AUDIO_LINE_IN_SELECT 

Definition at line 159 of file board_keil_mcb_18574357.h.

Enumerator:
UDA_EVALM_CLK 
UDA_BUS_CTRL 
UDA_POWER_CTRL 
UDA_ANALOG_CTRL 
UDA_HPAMP_CTRL 
UDA_MASTER_VOL_CTRL 
UDA_MIXER_VOL_CTRL 
UDA_MODE_CTRL 
UDA_MUTE_CTRL 
UDA_MIXER_FILTER_CTRL 
UDA_DEC_VOL_CTRL 
UDA_PGA_CTRL 
UDA_ADC_CTRL 
UDA_AGC_CTRL 
UDA_TOTAL_REG 
UDA_EVALM_CLK 
UDA_BUS_CTRL 
UDA_POWER_CTRL 
UDA_ANALOG_CTRL 
UDA_HPAMP_CTRL 
UDA_MASTER_VOL_CTRL 
UDA_MIXER_VOL_CTRL 
UDA_MODE_CTRL 
UDA_MUTE_CTRL 
UDA_MIXER_FILTER_CTRL 
UDA_DEC_VOL_CTRL 
UDA_PGA_CTRL 
UDA_ADC_CTRL 
UDA_AGC_CTRL 
UDA_TOTAL_REG 
UDA_EVALM_CLK 
UDA_BUS_CTRL 
UDA_POWER_CTRL 
UDA_ANALOG_CTRL 
UDA_HPAMP_CTRL 
UDA_MASTER_VOL_CTRL 
UDA_MIXER_VOL_CTRL 
UDA_MODE_CTRL 
UDA_MUTE_CTRL 
UDA_MIXER_FILTER_CTRL 
UDA_DEC_VOL_CTRL 
UDA_PGA_CTRL 
UDA_ADC_CTRL 
UDA_AGC_CTRL 
UDA_TOTAL_REG 

Definition at line 134 of file board_keil_mcb_18574357.h.

Function Documentation

void Board_ADC_Init ( void  )

Sets up board specific ADC interface.

Returns
Nothing

Definition at line 658 of file board_hitex_eva_18504350.c.

void Board_Audio_Init ( LPC_I2S_Type I2Sx,
Board_Audio_Input_Sel_Type  audio_in_sel 
)

Sets up board specific I2S interface and UDA1380.

Parameters
I2Sx: Pointer to I2S interface to initialize
audio_in_sel: audio input selection
Returns
Nothing

Sets up board specific I2S interface and UDA1380.

Parameters
I2Sx: Pointer to I2S register interface used on this board
audio_in_sel: Audio input selection
Returns
Nothing

Definition at line 863 of file board_hitex_eva_18504350.c.

void Board_Buttons_Init ( void  )

Initializes board specific buttons.

Returns
Nothing

Initializes board specific buttons.

Returns
Nothing

Definition at line 589 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

Definition at line 629 of file board_hitex_eva_18504350.c.

void Board_GPIO_Int_Init ( void  )

Initializes board specific GPIO Interrupt.

Returns
Nothing

Definition at line 723 of file board_keil_mcb_18574357.c.

void Board_I2C_Init ( LPC_I2C_Type I2Cx)

Sets up board specific I2C interface.

Parameters
I2Cx: Pointer to I2C interface to initialize
Returns
Nothing

Definition at line 665 of file board_hitex_eva_18504350.c.

void Board_Joystick_Init ( void  )

Initializes board specific joystick.

Returns
Nothing

Initializes board specific joystick.

Returns
Nothing

Definition at line 606 of file board_hitex_eva_18504350.c.

void Board_LCD_Init ( void  )

Initialize the LCD interface.

Returns
Nothing

Definition at line 675 of file board_hitex_eva_18504350.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 810 of file board_hitex_eva_18504350.c.

void Board_SSP_Init ( LPC_SSP_Type SSPx)

Sets up board specific SSP interface.

Parameters
SSPx: Pointer to SSP interface to initialize
Returns
Nothing

Sets up board specific SSP interface.

Parameters
SSPx: Pointer to SSP interface to initialize
Returns
Nothing

Definition at line 825 of file board_hitex_eva_18504350.c.

void Board_UART_Init ( LPC_USART_Type UARTx)

Initialize pin muxing for a UART.

Parameters
UARTx: Pointer to UART register block for UART pins to init
Returns
Nothing

Definition at line 478 of file board_hitex_eva_18504350.c.

uint32_t Buttons_GetStatus ( void  )

Returns button(s) state on board.

Returns
Returns BUTTONS_BUTTON1 if button1 is pressed

Definition at line 596 of file board_hitex_eva_18504350.c.

bool GetTouchPos ( int16_t *  pX,
int16_t *  pY 
)

Get touch screen position.

Parameters
pX: pointer to X position
pY: pointer to Y position
Returns
true if touch is detected or false if otherwise

Get touch screen position.

Parameters
pX: Pointer to x-Coord to populate
pY: Pointer to y-Coord to populate
Returns
Nothing

Definition at line 742 of file board_hitex_eva_18504350.c.

void Init_Touch_Controller ( void  )

Initializes the STMPE811 touch screen controller.

Returns
Nothing

Initializes the STMPE811 touch screen controller.

Returns
Nothing

Definition at line 711 of file board_hitex_eva_18504350.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
Returns a JOY_* value, ir JOY_PRESS or JOY_UP

Initialize joystick interface on board.

System Clock Frequency (Core Clock)

Definition at line 610 of file board_hitex_eva_18504350.c.

void Serial_CreateStream ( void *  Stream)

FIXME.

Parameters
Stream: FIXME
Returns
Nothing

Definition at line 891 of file board_hitex_eva_18504350.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_Type MCB4300_LCD

Definition at line 87 of file board_keil_mcb_18574357.c.