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

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

- File List
- Globals

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
chip.h
Go to the documentation of this file.
1 /*
2 * @brief LPC8xx basic chip inclusion file
3 *
4 * @note
5 * Copyright(C) NXP Semiconductors, 2012
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 #ifndef __CHIP_H_
33 #define __CHIP_H_
34
35 #include "lpc_types.h"
36 #include "sys_config.h"
37 #include "cmsis.h"
38
39 #ifdef __cplusplus
40 extern "C" {
41 #endif
42
43 #ifndef CORE_M0PLUS
44 #error CORE_M0PLUS is not defined for the LPC8xx architecture
45 #error CORE_M0PLUS should be defined as part of your compiler define list
46 #endif
47
48 #ifndef CHIP_LPC8XX
49 #error The LPC8XX Chip include path is used for this build, but
50 #error CHIP_LPC8XX is not defined!
51 #endif
52
72 #include "acmp_001.h"
73 #include "crc_001.h"
74 #include "gpio_001.h"
75 #include "mrt_001.h"
76 #include "spi_002.h"
77 #include "usart_002.h"
78 #include "wwdt_001.h"
79 #include "sct_001.h"
80 #include "wkt_001.h"
81
87 /* Base addresses */
88 #define LPC_FLASH_BASE (0x00000000UL)
89 #define LPC_RAM_BASE (0x10000000UL)
90 #define LPC_ROM_BASE (0x1FFF0000UL)
91 #define LPC_APB0_BASE (0x40000000UL)
92 #define LPC_AHB_BASE (0x50000000UL)
93
94 /* APB0 peripherals */
95 #define LPC_WWDT_BASE (0x40000000UL)
96 #define LPC_MRT_BASE (0x40004000UL)
97 #define LPC_WKT_BASE (0x40008000UL)
98 #define LPC_SWM_BASE (0x4000C000UL)
99 #define LPC_PMU_BASE (0x40020000UL)
100 #define LPC_CMP_BASE (0x40024000UL)
101
102 #define LPC_FMC_BASE (0x40040000UL)
103 #define LPC_IOCON_BASE (0x40044000UL)
104 #define LPC_SYSCTL_BASE (0x40048000UL)
105 #define LPC_I2C_BASE (0x40050000UL)
106 #define LPC_SPI0_BASE (0x40058000UL)
107 #define LPC_SPI1_BASE (0x4005C000UL)
108 #define LPC_USART0_BASE (0x40064000UL)
109 #define LPC_USART1_BASE (0x40068000UL)
110 #define LPC_USART2_BASE (0x4006C000UL)
111
112 /* AHB peripherals */
113 #define LPC_CRC_BASE (0x50000000UL)
114 #define LPC_SCT_BASE (0x50004000UL)
115
116 #define LPC_GPIO_PORT_BASE (0xA0000000UL)
117 #define LPC_PIN_INT_BASE (0xA0004000UL)
118
119 /* Normalize types */
120 typedef IP_SPI_002_T LPC_SPI_T;
121 typedef IP_WWDT_001_T LPC_WWDT_T;
122 typedef IP_USART_002_T LPC_USART_T;
123 typedef IP_CRC_001_T LPC_CRC_T;
124 typedef IP_SCT_001_T LPC_SCT_T;
125 typedef ACMP_001_T LPC_CMP_T;
126 typedef IP_WKT_001_T LPC_WKT_T;
127 typedef IP_GPIO_001_T LPC_GPIO_T;
128
129 #define LPC_WWDT ((LPC_WWDT_T *) LPC_WWDT_BASE)
130 #define LPC_SPI0 ((LPC_SPI_T *) LPC_SPI0_BASE)
131 #define LPC_SPI1 ((LPC_SPI_T *) LPC_SPI1_BASE)
132 #define LPC_USART0 ((LPC_USART_T *) LPC_USART0_BASE)
133 #define LPC_USART1 ((LPC_USART_T *) LPC_USART1_BASE)
134 #define LPC_USART2 ((LPC_USART_T *) LPC_USART2_BASE)
135 #define LPC_WKT ((LPC_WKT_T *) LPC_WKT_BASE)
136 #define LPC_PMU ((LPC_PMU_T *) LPC_PMU_BASE)
137 #define LPC_CRC ((LPC_CRC_T *) LPC_CRC_BASE)
138 #define LPC_SCT ((LPC_SCT_T *) LPC_SCT_BASE)
139 #define LPC_GPIO_PORT ((LPC_GPIO_T *) LPC_GPIO_PORT_BASE)
140 #define LPC_IOCON ((LPC_IOCON_T *) LPC_IOCON_BASE)
141 #define LPC_SWM ((LPC_SWM_T *) LPC_SWM_BASE)
142 #define LPC_SYSCTL ((LPC_SYSCTL_T *) LPC_SYSCTL_BASE)
143 #define LPC_CMP ((LPC_CMP_T *) LPC_CMP_BASE)
144 #define LPC_FMC ((LPC_FMC_T *) LPC_FMC_BASE)
145 #define LPC_MRT ((LPC_MRT_T *) LPC_MRT_BASE)
146
151 #include "iocon_8xx.h"
152 #include "i2c_8xx.h"
153 #include "syscon_8xx.h"
154 #include "clock_8xx.h"
155 #include "swm_8xx.h"
156 #include "acmp_8xx.h"
157 #include "crc_8xx.h"
158 #include "pinint_8xx.h"
159 #include "gpio_8xx.h"
160 #include "uart_8xx.h"
161 #include "wwdt_8xx.h"
162 #include "spi_8xx.h"
163 #include "uartd_8xx.h"
164 #include "pwrd_8xx.h"
165 #include "i2cd_8xx.h"
166 #include "romapi_8xx.h"
167 #include "wkt_8xx.h"
168 #include "pmu_8xx.h"
169 #include "mrt_8xx.h"
170 #include "fmc_8xx.h"
171 #include "sct_8xx.h"
172
173 #ifdef __cplusplus
174 }
175 #endif
176
177 #endif /* __CHIP_H_ */