LPCOpen Platform for LPC112X microcontrollers  112X
LPCOpen Platform for the NXP LPC112X family of Microcontrollers
board_sysinit.c
Go to the documentation of this file.
1 /*
2  * @brief Mcore48 1125 Sysinit file
3  *
4  * @note
5  * Copyright(C) NXP Semiconductors, 2013
6  * All rights reserved.
7  *
8  * @par
9  * Software that is described herein is for illustrative purposes only
10  * which provides customers with programming information regarding the
11  * LPC products. This software is supplied "AS IS" without any warranties of
12  * any kind, and NXP Semiconductors and its licensor disclaim any and
13  * all warranties, express or implied, including all implied warranties of
14  * merchantability, fitness for a particular purpose and non-infringement of
15  * intellectual property rights. NXP Semiconductors assumes no responsibility
16  * or liability for the use of the software, conveys no license or rights under any
17  * patent, copyright, mask work right, or any other intellectual property rights in
18  * or to any products. NXP Semiconductors reserves the right to make changes
19  * in the software without notification. NXP Semiconductors also makes no
20  * representation or warranty that such application will be suitable for the
21  * specified use without further testing or modification.
22  *
23  * @par
24  * Permission to use, copy, modify, and distribute this software and its
25  * documentation is hereby granted, under NXP Semiconductors' and its
26  * licensor's relevant copyrights in the software, without fee, provided that it
27  * is used in conjunction with NXP Semiconductors microcontrollers. This
28  * copyright, permission, and disclaimer notice must appear in all copies of
29  * this code.
30  */
31 
32  #include "board.h"
33 
34 /* The System initialization code is called prior to the application and
35  * initializes the board for run-time operation. Board initialization
36  * includes clock setup and default pin muxing configuration. */
37 
38 /*****************************************************************************
39  * Private types/enumerations/variables
40  ****************************************************************************/
41 
42 /* Pin muxing table, only items that need changing from their default pin
43  state are in this table. */
45  {(uint32_t) IOCON_PIO0_1, (IOCON_FUNC1 | IOCON_MODE_INACT)}, /* PIO0_1 used for CLKOUT */
46  {(uint32_t) IOCON_PIO0_2, (IOCON_FUNC1 | IOCON_MODE_INACT)}, /* PIO0_2 used for SSEL */
47  {(uint32_t) IOCON_PIO0_4, (IOCON_FUNC1 | IOCON_SFI2C_EN)}, /* PIO0_4 used for SCL */
48  {(uint32_t) IOCON_PIO0_5, (IOCON_FUNC1 | IOCON_SFI2C_EN)}, /* PIO0_5 used for SDA */
49 
50  {(uint32_t) IOCON_PIO1_1, (IOCON_FUNC1)}, /* PIO1_1 used for Red LED */
51  {(uint32_t) IOCON_PIO1_2, (IOCON_FUNC1)}, /* PIO1_2 used for Green LED */
52  {(uint32_t) IOCON_PIO1_4, (IOCON_FUNC0)}, /* PIO1_4 used for Blue LED */
53  {(uint32_t) IOCON_PIO1_10, (IOCON_FUNC0 | IOCON_MODE_INACT)}, /* PIO1_10 GPIO */
54 
55  {(uint32_t) IOCON_PIO1_6, (IOCON_FUNC1 | IOCON_MODE_INACT)}, /* PIO1_6 used for U0 RXD */
56  {(uint32_t) IOCON_PIO1_7, (IOCON_FUNC1 | IOCON_MODE_INACT)}, /* PIO1_7 used for U0 TXD */
57 };
58 
59 /*****************************************************************************
60  * Public types/enumerations/variables
61  ****************************************************************************/
62 
63 /*****************************************************************************
64  * Private functions
65  ****************************************************************************/
66 
67 /*****************************************************************************
68  * Public functions
69  ****************************************************************************/
70 
71 /* Sets up system pin muxing */
73 {
74  /* Enable IOCON clock */
76 
78 }
79 
80 /* Set up and initialize clocking prior to call to main */
82 {
83  // FIXME - need common IRC function check for 1125, normal clocking may not work
85 }
86 
87 /* Set up and initialize hardware prior to call to main */
88 void Board_SystemInit(void)
89 {
90  /* Setup system clocking and muxing */
93 }