mbed library sources change for ST sensors and ST BLE

Fork of mbed-src by mbed official

Committer:
NickZhouARM
Date:
Thu Apr 14 07:07:44 2016 +0000
Revision:
636:83ea0d2b909b
Parent:
554:edd95c0879f8
Working version for ST BLE + Sensors

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 554:edd95c0879f8 1 /* mbed Microcontroller Library - LPC24xx CMSIS-like structs
mbed_official 554:edd95c0879f8 2 * Copyright (C) 2009-2015 ARM Limited. All rights reserved.
mbed_official 554:edd95c0879f8 3 *
mbed_official 554:edd95c0879f8 4 * An LPC24xx header file, based on LPC23xx.h
mbed_official 554:edd95c0879f8 5 */
mbed_official 554:edd95c0879f8 6
mbed_official 554:edd95c0879f8 7 #ifndef __LPC24xx_H
mbed_official 554:edd95c0879f8 8 #define __LPC24xx_H
mbed_official 554:edd95c0879f8 9
mbed_official 554:edd95c0879f8 10 #ifdef __cplusplus
mbed_official 554:edd95c0879f8 11 extern "C" {
mbed_official 554:edd95c0879f8 12 #endif
mbed_official 554:edd95c0879f8 13
mbed_official 554:edd95c0879f8 14 /*
mbed_official 554:edd95c0879f8 15 * ==========================================================================
mbed_official 554:edd95c0879f8 16 * ---------- Interrupt Number Definition -----------------------------------
mbed_official 554:edd95c0879f8 17 * ==========================================================================
mbed_official 554:edd95c0879f8 18 */
mbed_official 554:edd95c0879f8 19
mbed_official 554:edd95c0879f8 20 typedef enum IRQn
mbed_official 554:edd95c0879f8 21 {
mbed_official 554:edd95c0879f8 22 /****** LPC23xx Specific Interrupt Numbers *******************************************************/
mbed_official 554:edd95c0879f8 23 WDT_IRQn = 0, /*!< Watchdog Timer Interrupt */
mbed_official 554:edd95c0879f8 24
mbed_official 554:edd95c0879f8 25 TIMER0_IRQn = 4, /*!< Timer0 Interrupt */
mbed_official 554:edd95c0879f8 26 TIMER1_IRQn = 5, /*!< Timer1 Interrupt */
mbed_official 554:edd95c0879f8 27 UART0_IRQn = 6, /*!< UART0 Interrupt */
mbed_official 554:edd95c0879f8 28 UART1_IRQn = 7, /*!< UART1 Interrupt */
mbed_official 554:edd95c0879f8 29 PWM0_IRQn = 8, /*!< PWM0 Interrupt */
mbed_official 554:edd95c0879f8 30 PWM1_IRQn = 8, /*!< PWM1 Interrupt */
mbed_official 554:edd95c0879f8 31 I2C0_IRQn = 9, /*!< I2C0 Interrupt */
mbed_official 554:edd95c0879f8 32 SPI_IRQn = 10, /*!< SPI Interrupt */
mbed_official 554:edd95c0879f8 33 SSP0_IRQn = 10, /*!< SSP0 Interrupt */
mbed_official 554:edd95c0879f8 34 SSP1_IRQn = 11, /*!< SSP1 Interrupt */
mbed_official 554:edd95c0879f8 35 PLL0_IRQn = 12, /*!< PLL0 Lock (Main PLL) Interrupt */
mbed_official 554:edd95c0879f8 36 RTC_IRQn = 13, /*!< Real Time Clock Interrupt */
mbed_official 554:edd95c0879f8 37 EINT0_IRQn = 14, /*!< External Interrupt 0 Interrupt */
mbed_official 554:edd95c0879f8 38 EINT1_IRQn = 15, /*!< External Interrupt 1 Interrupt */
mbed_official 554:edd95c0879f8 39 EINT2_IRQn = 16, /*!< External Interrupt 2 Interrupt */
mbed_official 554:edd95c0879f8 40 EINT3_IRQn = 17, /*!< External Interrupt 3 Interrupt */
mbed_official 554:edd95c0879f8 41 ADC_IRQn = 18, /*!< A/D Converter Interrupt */
mbed_official 554:edd95c0879f8 42 I2C1_IRQn = 19, /*!< I2C1 Interrupt */
mbed_official 554:edd95c0879f8 43 BOD_IRQn = 20, /*!< Brown-Out Detect Interrupt */
mbed_official 554:edd95c0879f8 44 ENET_IRQn = 21, /*!< Ethernet Interrupt */
mbed_official 554:edd95c0879f8 45 USB_IRQn = 22, /*!< USB Interrupt */
mbed_official 554:edd95c0879f8 46 CAN_IRQn = 23, /*!< CAN Interrupt */
mbed_official 554:edd95c0879f8 47 SDMMC_IRQn = 24, /*!< SD/MMC Interrupt */
mbed_official 554:edd95c0879f8 48 DMA_IRQn = 25, /*!< General Purpose DMA Interrupt */
mbed_official 554:edd95c0879f8 49 TIMER2_IRQn = 26, /*!< Timer2 Interrupt */
mbed_official 554:edd95c0879f8 50 TIMER3_IRQn = 27, /*!< Timer3 Interrupt */
mbed_official 554:edd95c0879f8 51 UART2_IRQn = 28, /*!< UART2 Interrupt */
mbed_official 554:edd95c0879f8 52 UART3_IRQn = 29, /*!< UART3 Interrupt */
mbed_official 554:edd95c0879f8 53 I2C2_IRQn = 30, /*!< I2C2 Interrupt */
mbed_official 554:edd95c0879f8 54 I2S_IRQn = 31, /*!< I2S Interrupt */
mbed_official 554:edd95c0879f8 55 } IRQn_Type;
mbed_official 554:edd95c0879f8 56
mbed_official 554:edd95c0879f8 57 /*
mbed_official 554:edd95c0879f8 58 * ==========================================================================
mbed_official 554:edd95c0879f8 59 * ----------- Processor and Core Peripheral Section ------------------------
mbed_official 554:edd95c0879f8 60 * ==========================================================================
mbed_official 554:edd95c0879f8 61 */
mbed_official 554:edd95c0879f8 62
mbed_official 554:edd95c0879f8 63 /* Configuration of the ARM7 Processor and Core Peripherals */
mbed_official 554:edd95c0879f8 64 #define __MPU_PRESENT 0 /*!< MPU present or not */
mbed_official 554:edd95c0879f8 65 #define __NVIC_PRIO_BITS 4 /*!< Number of Bits used for Priority Levels */
mbed_official 554:edd95c0879f8 66 #define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */
mbed_official 554:edd95c0879f8 67
mbed_official 554:edd95c0879f8 68
mbed_official 554:edd95c0879f8 69 #include <core_arm7.h>
mbed_official 554:edd95c0879f8 70 #include "system_LPC24xx.h" /* System Header */
mbed_official 554:edd95c0879f8 71
mbed_official 554:edd95c0879f8 72
mbed_official 554:edd95c0879f8 73 /******************************************************************************/
mbed_official 554:edd95c0879f8 74 /* Device Specific Peripheral registers structures */
mbed_official 554:edd95c0879f8 75 /******************************************************************************/
mbed_official 554:edd95c0879f8 76 #if defined ( __CC_ARM )
mbed_official 554:edd95c0879f8 77 #pragma anon_unions
mbed_official 554:edd95c0879f8 78 #endif
mbed_official 554:edd95c0879f8 79
mbed_official 554:edd95c0879f8 80 /*------------- Vector Interupt Controler (VIC) ------------------------------*/
mbed_official 554:edd95c0879f8 81 typedef struct
mbed_official 554:edd95c0879f8 82 {
mbed_official 554:edd95c0879f8 83 __I uint32_t IRQStatus;
mbed_official 554:edd95c0879f8 84 __I uint32_t FIQStatus;
mbed_official 554:edd95c0879f8 85 __I uint32_t RawIntr;
mbed_official 554:edd95c0879f8 86 __IO uint32_t IntSelect;
mbed_official 554:edd95c0879f8 87 __IO uint32_t IntEnable;
mbed_official 554:edd95c0879f8 88 __O uint32_t IntEnClr;
mbed_official 554:edd95c0879f8 89 __IO uint32_t SoftInt;
mbed_official 554:edd95c0879f8 90 __O uint32_t SoftIntClr;
mbed_official 554:edd95c0879f8 91 __IO uint32_t Protection;
mbed_official 554:edd95c0879f8 92 __IO uint32_t SWPriorityMask;
mbed_official 554:edd95c0879f8 93 __IO uint32_t RESERVED0[54];
mbed_official 554:edd95c0879f8 94 __IO uint32_t VectAddr[32];
mbed_official 554:edd95c0879f8 95 __IO uint32_t RESERVED1[32];
mbed_official 554:edd95c0879f8 96 __IO uint32_t VectPriority[32];
mbed_official 554:edd95c0879f8 97 __IO uint32_t RESERVED2[800];
mbed_official 554:edd95c0879f8 98 __IO uint32_t Address;
mbed_official 554:edd95c0879f8 99 } LPC_VIC_TypeDef;
mbed_official 554:edd95c0879f8 100
mbed_official 554:edd95c0879f8 101 /*------------- System Control (SC) ------------------------------------------*/
mbed_official 554:edd95c0879f8 102 typedef struct
mbed_official 554:edd95c0879f8 103 {
mbed_official 554:edd95c0879f8 104 __IO uint32_t MAMCR;
mbed_official 554:edd95c0879f8 105 __IO uint32_t MAMTIM;
mbed_official 554:edd95c0879f8 106 uint32_t RESERVED0[14];
mbed_official 554:edd95c0879f8 107 __IO uint32_t MEMMAP;
mbed_official 554:edd95c0879f8 108 uint32_t RESERVED1[15];
mbed_official 554:edd95c0879f8 109 __IO uint32_t PLL0CON; /* Clocking and Power Control */
mbed_official 554:edd95c0879f8 110 __IO uint32_t PLL0CFG;
mbed_official 554:edd95c0879f8 111 __I uint32_t PLL0STAT;
mbed_official 554:edd95c0879f8 112 __O uint32_t PLL0FEED;
mbed_official 554:edd95c0879f8 113 uint32_t RESERVED2[12];
mbed_official 554:edd95c0879f8 114 __IO uint32_t PCON;
mbed_official 554:edd95c0879f8 115 __IO uint32_t PCONP;
mbed_official 554:edd95c0879f8 116 uint32_t RESERVED3[15];
mbed_official 554:edd95c0879f8 117 __IO uint32_t CCLKCFG;
mbed_official 554:edd95c0879f8 118 __IO uint32_t USBCLKCFG;
mbed_official 554:edd95c0879f8 119 __IO uint32_t CLKSRCSEL;
mbed_official 554:edd95c0879f8 120 uint32_t RESERVED4[12];
mbed_official 554:edd95c0879f8 121 __IO uint32_t EXTINT; /* External Interrupts */
mbed_official 554:edd95c0879f8 122 __IO uint32_t INTWAKE;
mbed_official 554:edd95c0879f8 123 __IO uint32_t EXTMODE;
mbed_official 554:edd95c0879f8 124 __IO uint32_t EXTPOLAR;
mbed_official 554:edd95c0879f8 125 uint32_t RESERVED6[12];
mbed_official 554:edd95c0879f8 126 __IO uint32_t RSID; /* Reset */
mbed_official 554:edd95c0879f8 127 __IO uint32_t CSPR;
mbed_official 554:edd95c0879f8 128 __IO uint32_t AHBCFG1;
mbed_official 554:edd95c0879f8 129 __IO uint32_t AHBCFG2;
mbed_official 554:edd95c0879f8 130 uint32_t RESERVED7[4];
mbed_official 554:edd95c0879f8 131 __IO uint32_t SCS; /* Syscon Miscellaneous Registers */
mbed_official 554:edd95c0879f8 132 __IO uint32_t IRCTRIM; /* Clock Dividers */
mbed_official 554:edd95c0879f8 133 __IO uint32_t PCLKSEL0;
mbed_official 554:edd95c0879f8 134 __IO uint32_t PCLKSEL1;
mbed_official 554:edd95c0879f8 135 uint32_t RESERVED8[4];
mbed_official 554:edd95c0879f8 136 __IO uint32_t USBIntSt; /* USB Device/OTG Interrupt Register */
mbed_official 554:edd95c0879f8 137 uint32_t RESERVED9;
mbed_official 554:edd95c0879f8 138 // __IO uint32_t CLKOUTCFG; /* Clock Output Configuration */
mbed_official 554:edd95c0879f8 139 } LPC_SC_TypeDef;
mbed_official 554:edd95c0879f8 140
mbed_official 554:edd95c0879f8 141 /*------------- Pin Connect Block (PINCON) -----------------------------------*/
mbed_official 554:edd95c0879f8 142 typedef struct
mbed_official 554:edd95c0879f8 143 {
mbed_official 554:edd95c0879f8 144 __IO uint32_t PINSEL0;
mbed_official 554:edd95c0879f8 145 __IO uint32_t PINSEL1;
mbed_official 554:edd95c0879f8 146 __IO uint32_t PINSEL2;
mbed_official 554:edd95c0879f8 147 __IO uint32_t PINSEL3;
mbed_official 554:edd95c0879f8 148 __IO uint32_t PINSEL4;
mbed_official 554:edd95c0879f8 149 __IO uint32_t PINSEL5;
mbed_official 554:edd95c0879f8 150 __IO uint32_t PINSEL6;
mbed_official 554:edd95c0879f8 151 __IO uint32_t PINSEL7;
mbed_official 554:edd95c0879f8 152 __IO uint32_t PINSEL8;
mbed_official 554:edd95c0879f8 153 __IO uint32_t PINSEL9;
mbed_official 554:edd95c0879f8 154 __IO uint32_t PINSEL10;
mbed_official 554:edd95c0879f8 155 uint32_t RESERVED0[5];
mbed_official 554:edd95c0879f8 156 __IO uint32_t PINMODE0;
mbed_official 554:edd95c0879f8 157 __IO uint32_t PINMODE1;
mbed_official 554:edd95c0879f8 158 __IO uint32_t PINMODE2;
mbed_official 554:edd95c0879f8 159 __IO uint32_t PINMODE3;
mbed_official 554:edd95c0879f8 160 __IO uint32_t PINMODE4;
mbed_official 554:edd95c0879f8 161 __IO uint32_t PINMODE5;
mbed_official 554:edd95c0879f8 162 __IO uint32_t PINMODE6;
mbed_official 554:edd95c0879f8 163 __IO uint32_t PINMODE7;
mbed_official 554:edd95c0879f8 164 __IO uint32_t PINMODE8;
mbed_official 554:edd95c0879f8 165 __IO uint32_t PINMODE9;
mbed_official 554:edd95c0879f8 166 __IO uint32_t PINMODE_OD0;
mbed_official 554:edd95c0879f8 167 __IO uint32_t PINMODE_OD1;
mbed_official 554:edd95c0879f8 168 __IO uint32_t PINMODE_OD2;
mbed_official 554:edd95c0879f8 169 __IO uint32_t PINMODE_OD3;
mbed_official 554:edd95c0879f8 170 __IO uint32_t PINMODE_OD4;
mbed_official 554:edd95c0879f8 171 } LPC_PINCON_TypeDef;
mbed_official 554:edd95c0879f8 172
mbed_official 554:edd95c0879f8 173 #define PCTIM0 1
mbed_official 554:edd95c0879f8 174 #define PCTIM1 2
mbed_official 554:edd95c0879f8 175 #define PCUART0 3
mbed_official 554:edd95c0879f8 176 #define PCUART1 4
mbed_official 554:edd95c0879f8 177 #define PCPWM1 6
mbed_official 554:edd95c0879f8 178 #define PCI2C0 7
mbed_official 554:edd95c0879f8 179 #define PCSPI 8
mbed_official 554:edd95c0879f8 180 #define PCRTC 9
mbed_official 554:edd95c0879f8 181 #define PCSSP1 10
mbed_official 554:edd95c0879f8 182 #define PCEMC 11
mbed_official 554:edd95c0879f8 183 #define PCADC 12
mbed_official 554:edd95c0879f8 184 #define PCAN1 13
mbed_official 554:edd95c0879f8 185 #define PCAN2 14
mbed_official 554:edd95c0879f8 186 #define PCI2C1 19
mbed_official 554:edd95c0879f8 187 #define PCSSP0 21
mbed_official 554:edd95c0879f8 188 #define PCTIM2 22
mbed_official 554:edd95c0879f8 189 #define PCTIM3 23
mbed_official 554:edd95c0879f8 190 #define PCUART2 24
mbed_official 554:edd95c0879f8 191 #define PCUART3 25
mbed_official 554:edd95c0879f8 192 #define PCI2C2 26
mbed_official 554:edd95c0879f8 193 #define PCI2S 27
mbed_official 554:edd95c0879f8 194 #define PCSDC 28
mbed_official 554:edd95c0879f8 195 #define PCGPDMA 29
mbed_official 554:edd95c0879f8 196 #define PCENET 30
mbed_official 554:edd95c0879f8 197 #define PCUSB 31
mbed_official 554:edd95c0879f8 198
mbed_official 554:edd95c0879f8 199 /*------------- General Purpose Input/Output (GPIO) --------------------------*/
mbed_official 554:edd95c0879f8 200 typedef struct
mbed_official 554:edd95c0879f8 201 {
mbed_official 554:edd95c0879f8 202 __IO uint32_t FIODIR;
mbed_official 554:edd95c0879f8 203 uint32_t RESERVED0[3];
mbed_official 554:edd95c0879f8 204 __IO uint32_t FIOMASK;
mbed_official 554:edd95c0879f8 205 __IO uint32_t FIOPIN;
mbed_official 554:edd95c0879f8 206 __IO uint32_t FIOSET;
mbed_official 554:edd95c0879f8 207 __O uint32_t FIOCLR;
mbed_official 554:edd95c0879f8 208 } LPC_GPIO_TypeDef;
mbed_official 554:edd95c0879f8 209
mbed_official 554:edd95c0879f8 210 typedef struct
mbed_official 554:edd95c0879f8 211 {
mbed_official 554:edd95c0879f8 212 __I uint32_t IntStatus;
mbed_official 554:edd95c0879f8 213 __I uint32_t IO0IntStatR;
mbed_official 554:edd95c0879f8 214 __I uint32_t IO0IntStatF;
mbed_official 554:edd95c0879f8 215 __O uint32_t IO0IntClr;
mbed_official 554:edd95c0879f8 216 __IO uint32_t IO0IntEnR;
mbed_official 554:edd95c0879f8 217 __IO uint32_t IO0IntEnF;
mbed_official 554:edd95c0879f8 218 uint32_t RESERVED0[3];
mbed_official 554:edd95c0879f8 219 __I uint32_t IO2IntStatR;
mbed_official 554:edd95c0879f8 220 __I uint32_t IO2IntStatF;
mbed_official 554:edd95c0879f8 221 __O uint32_t IO2IntClr;
mbed_official 554:edd95c0879f8 222 __IO uint32_t IO2IntEnR;
mbed_official 554:edd95c0879f8 223 __IO uint32_t IO2IntEnF;
mbed_official 554:edd95c0879f8 224 } LPC_GPIOINT_TypeDef;
mbed_official 554:edd95c0879f8 225
mbed_official 554:edd95c0879f8 226 /*------------- Timer (TIM) --------------------------------------------------*/
mbed_official 554:edd95c0879f8 227 typedef struct
mbed_official 554:edd95c0879f8 228 {
mbed_official 554:edd95c0879f8 229 __IO uint32_t IR;
mbed_official 554:edd95c0879f8 230 __IO uint32_t TCR;
mbed_official 554:edd95c0879f8 231 __IO uint32_t TC;
mbed_official 554:edd95c0879f8 232 __IO uint32_t PR;
mbed_official 554:edd95c0879f8 233 __IO uint32_t PC;
mbed_official 554:edd95c0879f8 234 __IO uint32_t MCR;
mbed_official 554:edd95c0879f8 235 __IO uint32_t MR0;
mbed_official 554:edd95c0879f8 236 __IO uint32_t MR1;
mbed_official 554:edd95c0879f8 237 __IO uint32_t MR2;
mbed_official 554:edd95c0879f8 238 __IO uint32_t MR3;
mbed_official 554:edd95c0879f8 239 __IO uint32_t CCR;
mbed_official 554:edd95c0879f8 240 __I uint32_t CR0;
mbed_official 554:edd95c0879f8 241 __I uint32_t CR1;
mbed_official 554:edd95c0879f8 242 uint32_t RESERVED0[2];
mbed_official 554:edd95c0879f8 243 __IO uint32_t EMR;
mbed_official 554:edd95c0879f8 244 uint32_t RESERVED1[12];
mbed_official 554:edd95c0879f8 245 __IO uint32_t CTCR;
mbed_official 554:edd95c0879f8 246 } LPC_TIM_TypeDef;
mbed_official 554:edd95c0879f8 247
mbed_official 554:edd95c0879f8 248 /*------------- Pulse-Width Modulation (PWM) ---------------------------------*/
mbed_official 554:edd95c0879f8 249 typedef struct
mbed_official 554:edd95c0879f8 250 {
mbed_official 554:edd95c0879f8 251 __IO uint32_t IR;
mbed_official 554:edd95c0879f8 252 __IO uint32_t TCR;
mbed_official 554:edd95c0879f8 253 __IO uint32_t TC;
mbed_official 554:edd95c0879f8 254 __IO uint32_t PR;
mbed_official 554:edd95c0879f8 255 __IO uint32_t PC;
mbed_official 554:edd95c0879f8 256 __IO uint32_t MCR;
mbed_official 554:edd95c0879f8 257 __IO uint32_t MR0;
mbed_official 554:edd95c0879f8 258 __IO uint32_t MR1;
mbed_official 554:edd95c0879f8 259 __IO uint32_t MR2;
mbed_official 554:edd95c0879f8 260 __IO uint32_t MR3;
mbed_official 554:edd95c0879f8 261 __IO uint32_t CCR;
mbed_official 554:edd95c0879f8 262 __I uint32_t CR0;
mbed_official 554:edd95c0879f8 263 __I uint32_t CR1;
mbed_official 554:edd95c0879f8 264 __I uint32_t CR2;
mbed_official 554:edd95c0879f8 265 __I uint32_t CR3;
mbed_official 554:edd95c0879f8 266 uint32_t RESERVED0;
mbed_official 554:edd95c0879f8 267 __IO uint32_t MR4;
mbed_official 554:edd95c0879f8 268 __IO uint32_t MR5;
mbed_official 554:edd95c0879f8 269 __IO uint32_t MR6;
mbed_official 554:edd95c0879f8 270 __IO uint32_t PCR;
mbed_official 554:edd95c0879f8 271 __IO uint32_t LER;
mbed_official 554:edd95c0879f8 272 uint32_t RESERVED1[7];
mbed_official 554:edd95c0879f8 273 __IO uint32_t CTCR;
mbed_official 554:edd95c0879f8 274 } LPC_PWM_TypeDef;
mbed_official 554:edd95c0879f8 275
mbed_official 554:edd95c0879f8 276 /*------------- Universal Asynchronous Receiver Transmitter (UART) -----------*/
mbed_official 554:edd95c0879f8 277 typedef struct
mbed_official 554:edd95c0879f8 278 {
mbed_official 554:edd95c0879f8 279 union {
mbed_official 554:edd95c0879f8 280 __I uint8_t RBR;
mbed_official 554:edd95c0879f8 281 __O uint8_t THR;
mbed_official 554:edd95c0879f8 282 __IO uint8_t DLL;
mbed_official 554:edd95c0879f8 283 uint32_t RESERVED0;
mbed_official 554:edd95c0879f8 284 };
mbed_official 554:edd95c0879f8 285 union {
mbed_official 554:edd95c0879f8 286 __IO uint8_t DLM;
mbed_official 554:edd95c0879f8 287 __IO uint32_t IER;
mbed_official 554:edd95c0879f8 288 };
mbed_official 554:edd95c0879f8 289 union {
mbed_official 554:edd95c0879f8 290 __I uint32_t IIR;
mbed_official 554:edd95c0879f8 291 __O uint8_t FCR;
mbed_official 554:edd95c0879f8 292 };
mbed_official 554:edd95c0879f8 293 __IO uint8_t LCR;
mbed_official 554:edd95c0879f8 294 uint8_t RESERVED1[7];
mbed_official 554:edd95c0879f8 295 __IO uint8_t LSR;
mbed_official 554:edd95c0879f8 296 uint8_t RESERVED2[7];
mbed_official 554:edd95c0879f8 297 __IO uint8_t SCR;
mbed_official 554:edd95c0879f8 298 uint8_t RESERVED3[3];
mbed_official 554:edd95c0879f8 299 __IO uint32_t ACR;
mbed_official 554:edd95c0879f8 300 __IO uint8_t ICR;
mbed_official 554:edd95c0879f8 301 uint8_t RESERVED4[3];
mbed_official 554:edd95c0879f8 302 __IO uint8_t FDR;
mbed_official 554:edd95c0879f8 303 uint8_t RESERVED5[7];
mbed_official 554:edd95c0879f8 304 __IO uint8_t TER;
mbed_official 554:edd95c0879f8 305 uint8_t RESERVED6[27];
mbed_official 554:edd95c0879f8 306 __IO uint8_t RS485CTRL;
mbed_official 554:edd95c0879f8 307 uint8_t RESERVED7[3];
mbed_official 554:edd95c0879f8 308 __IO uint8_t ADRMATCH;
mbed_official 554:edd95c0879f8 309 } LPC_UART_TypeDef;
mbed_official 554:edd95c0879f8 310
mbed_official 554:edd95c0879f8 311 typedef struct
mbed_official 554:edd95c0879f8 312 {
mbed_official 554:edd95c0879f8 313 union {
mbed_official 554:edd95c0879f8 314 __I uint8_t RBR;
mbed_official 554:edd95c0879f8 315 __O uint8_t THR;
mbed_official 554:edd95c0879f8 316 __IO uint8_t DLL;
mbed_official 554:edd95c0879f8 317 uint32_t RESERVED0;
mbed_official 554:edd95c0879f8 318 };
mbed_official 554:edd95c0879f8 319 union {
mbed_official 554:edd95c0879f8 320 __IO uint8_t DLM;
mbed_official 554:edd95c0879f8 321 __IO uint32_t IER;
mbed_official 554:edd95c0879f8 322 };
mbed_official 554:edd95c0879f8 323 union {
mbed_official 554:edd95c0879f8 324 __I uint32_t IIR;
mbed_official 554:edd95c0879f8 325 __O uint8_t FCR;
mbed_official 554:edd95c0879f8 326 };
mbed_official 554:edd95c0879f8 327 __IO uint8_t LCR;
mbed_official 554:edd95c0879f8 328 uint8_t RESERVED1[3];
mbed_official 554:edd95c0879f8 329 __IO uint8_t MCR;
mbed_official 554:edd95c0879f8 330 uint8_t RESERVED2[3];
mbed_official 554:edd95c0879f8 331 __IO uint8_t LSR;
mbed_official 554:edd95c0879f8 332 uint8_t RESERVED3[3];
mbed_official 554:edd95c0879f8 333 __IO uint8_t MSR;
mbed_official 554:edd95c0879f8 334 uint8_t RESERVED4[3];
mbed_official 554:edd95c0879f8 335 __IO uint8_t SCR;
mbed_official 554:edd95c0879f8 336 uint8_t RESERVED5[3];
mbed_official 554:edd95c0879f8 337 __IO uint32_t ACR;
mbed_official 554:edd95c0879f8 338 uint32_t RESERVED6;
mbed_official 554:edd95c0879f8 339 __IO uint32_t FDR;
mbed_official 554:edd95c0879f8 340 uint32_t RESERVED7;
mbed_official 554:edd95c0879f8 341 __IO uint8_t TER;
mbed_official 554:edd95c0879f8 342 uint8_t RESERVED8[27];
mbed_official 554:edd95c0879f8 343 __IO uint8_t RS485CTRL;
mbed_official 554:edd95c0879f8 344 uint8_t RESERVED9[3];
mbed_official 554:edd95c0879f8 345 __IO uint8_t ADRMATCH;
mbed_official 554:edd95c0879f8 346 uint8_t RESERVED10[3];
mbed_official 554:edd95c0879f8 347 __IO uint8_t RS485DLY;
mbed_official 554:edd95c0879f8 348 } LPC_UART1_TypeDef;
mbed_official 554:edd95c0879f8 349
mbed_official 554:edd95c0879f8 350 /*------------- Serial Peripheral Interface (SPI) ----------------------------*/
mbed_official 554:edd95c0879f8 351 typedef struct
mbed_official 554:edd95c0879f8 352 {
mbed_official 554:edd95c0879f8 353 __IO uint32_t SPCR;
mbed_official 554:edd95c0879f8 354 __I uint32_t SPSR;
mbed_official 554:edd95c0879f8 355 __IO uint32_t SPDR;
mbed_official 554:edd95c0879f8 356 __IO uint32_t SPCCR;
mbed_official 554:edd95c0879f8 357 uint32_t RESERVED0[3];
mbed_official 554:edd95c0879f8 358 __IO uint32_t SPINT;
mbed_official 554:edd95c0879f8 359 } LPC_SPI_TypeDef;
mbed_official 554:edd95c0879f8 360
mbed_official 554:edd95c0879f8 361 /*------------- Synchronous Serial Communication (SSP) -----------------------*/
mbed_official 554:edd95c0879f8 362 typedef struct
mbed_official 554:edd95c0879f8 363 {
mbed_official 554:edd95c0879f8 364 __IO uint32_t CR0;
mbed_official 554:edd95c0879f8 365 __IO uint32_t CR1;
mbed_official 554:edd95c0879f8 366 __IO uint32_t DR;
mbed_official 554:edd95c0879f8 367 __I uint32_t SR;
mbed_official 554:edd95c0879f8 368 __IO uint32_t CPSR;
mbed_official 554:edd95c0879f8 369 __IO uint32_t IMSC;
mbed_official 554:edd95c0879f8 370 __IO uint32_t RIS;
mbed_official 554:edd95c0879f8 371 __IO uint32_t MIS;
mbed_official 554:edd95c0879f8 372 __IO uint32_t ICR;
mbed_official 554:edd95c0879f8 373 __IO uint32_t DMACR;
mbed_official 554:edd95c0879f8 374 } LPC_SSP_TypeDef;
mbed_official 554:edd95c0879f8 375
mbed_official 554:edd95c0879f8 376 /*------------- Inter-Integrated Circuit (I2C) -------------------------------*/
mbed_official 554:edd95c0879f8 377 typedef struct
mbed_official 554:edd95c0879f8 378 {
mbed_official 554:edd95c0879f8 379 __IO uint32_t I2CONSET;
mbed_official 554:edd95c0879f8 380 __I uint32_t I2STAT;
mbed_official 554:edd95c0879f8 381 __IO uint32_t I2DAT;
mbed_official 554:edd95c0879f8 382 __IO uint32_t I2ADR0;
mbed_official 554:edd95c0879f8 383 __IO uint32_t I2SCLH;
mbed_official 554:edd95c0879f8 384 __IO uint32_t I2SCLL;
mbed_official 554:edd95c0879f8 385 __O uint32_t I2CONCLR;
mbed_official 554:edd95c0879f8 386 __IO uint32_t MMCTRL;
mbed_official 554:edd95c0879f8 387 __IO uint32_t I2ADR1;
mbed_official 554:edd95c0879f8 388 __IO uint32_t I2ADR2;
mbed_official 554:edd95c0879f8 389 __IO uint32_t I2ADR3;
mbed_official 554:edd95c0879f8 390 __I uint32_t I2DATA_BUFFER;
mbed_official 554:edd95c0879f8 391 __IO uint32_t I2MASK0;
mbed_official 554:edd95c0879f8 392 __IO uint32_t I2MASK1;
mbed_official 554:edd95c0879f8 393 __IO uint32_t I2MASK2;
mbed_official 554:edd95c0879f8 394 __IO uint32_t I2MASK3;
mbed_official 554:edd95c0879f8 395 } LPC_I2C_TypeDef;
mbed_official 554:edd95c0879f8 396
mbed_official 554:edd95c0879f8 397 /*------------- Inter IC Sound (I2S) -----------------------------------------*/
mbed_official 554:edd95c0879f8 398 typedef struct
mbed_official 554:edd95c0879f8 399 {
mbed_official 554:edd95c0879f8 400 __IO uint32_t I2SDAO;
mbed_official 554:edd95c0879f8 401 __I uint32_t I2SDAI;
mbed_official 554:edd95c0879f8 402 __O uint32_t I2STXFIFO;
mbed_official 554:edd95c0879f8 403 __I uint32_t I2SRXFIFO;
mbed_official 554:edd95c0879f8 404 __I uint32_t I2SSTATE;
mbed_official 554:edd95c0879f8 405 __IO uint32_t I2SDMA1;
mbed_official 554:edd95c0879f8 406 __IO uint32_t I2SDMA2;
mbed_official 554:edd95c0879f8 407 __IO uint32_t I2SIRQ;
mbed_official 554:edd95c0879f8 408 __IO uint32_t I2STXRATE;
mbed_official 554:edd95c0879f8 409 __IO uint32_t I2SRXRATE;
mbed_official 554:edd95c0879f8 410 __IO uint32_t I2STXBITRATE;
mbed_official 554:edd95c0879f8 411 __IO uint32_t I2SRXBITRATE;
mbed_official 554:edd95c0879f8 412 __IO uint32_t I2STXMODE;
mbed_official 554:edd95c0879f8 413 __IO uint32_t I2SRXMODE;
mbed_official 554:edd95c0879f8 414 } LPC_I2S_TypeDef;
mbed_official 554:edd95c0879f8 415
mbed_official 554:edd95c0879f8 416 /*------------- Real-Time Clock (RTC) ----------------------------------------*/
mbed_official 554:edd95c0879f8 417 typedef struct
mbed_official 554:edd95c0879f8 418 {
mbed_official 554:edd95c0879f8 419 __IO uint8_t ILR;
mbed_official 554:edd95c0879f8 420 uint8_t RESERVED0[3];
mbed_official 554:edd95c0879f8 421 __IO uint8_t CTC;
mbed_official 554:edd95c0879f8 422 uint8_t RESERVED1[3];
mbed_official 554:edd95c0879f8 423 __IO uint8_t CCR;
mbed_official 554:edd95c0879f8 424 uint8_t RESERVED2[3];
mbed_official 554:edd95c0879f8 425 __IO uint8_t CIIR;
mbed_official 554:edd95c0879f8 426 uint8_t RESERVED3[3];
mbed_official 554:edd95c0879f8 427 __IO uint8_t AMR;
mbed_official 554:edd95c0879f8 428 uint8_t RESERVED4[3];
mbed_official 554:edd95c0879f8 429 __I uint32_t CTIME0;
mbed_official 554:edd95c0879f8 430 __I uint32_t CTIME1;
mbed_official 554:edd95c0879f8 431 __I uint32_t CTIME2;
mbed_official 554:edd95c0879f8 432 __IO uint8_t SEC;
mbed_official 554:edd95c0879f8 433 uint8_t RESERVED5[3];
mbed_official 554:edd95c0879f8 434 __IO uint8_t MIN;
mbed_official 554:edd95c0879f8 435 uint8_t RESERVED6[3];
mbed_official 554:edd95c0879f8 436 __IO uint8_t HOUR;
mbed_official 554:edd95c0879f8 437 uint8_t RESERVED7[3];
mbed_official 554:edd95c0879f8 438 __IO uint8_t DOM;
mbed_official 554:edd95c0879f8 439 uint8_t RESERVED8[3];
mbed_official 554:edd95c0879f8 440 __IO uint8_t DOW;
mbed_official 554:edd95c0879f8 441 uint8_t RESERVED9[3];
mbed_official 554:edd95c0879f8 442 __IO uint16_t DOY;
mbed_official 554:edd95c0879f8 443 uint16_t RESERVED10;
mbed_official 554:edd95c0879f8 444 __IO uint8_t MONTH;
mbed_official 554:edd95c0879f8 445 uint8_t RESERVED11[3];
mbed_official 554:edd95c0879f8 446 __IO uint16_t YEAR;
mbed_official 554:edd95c0879f8 447 uint16_t RESERVED12;
mbed_official 554:edd95c0879f8 448 __IO uint32_t CALIBRATION;
mbed_official 554:edd95c0879f8 449 __IO uint32_t GPREG0;
mbed_official 554:edd95c0879f8 450 __IO uint32_t GPREG1;
mbed_official 554:edd95c0879f8 451 __IO uint32_t GPREG2;
mbed_official 554:edd95c0879f8 452 __IO uint32_t GPREG3;
mbed_official 554:edd95c0879f8 453 __IO uint32_t GPREG4;
mbed_official 554:edd95c0879f8 454 __IO uint8_t WAKEUPDIS;
mbed_official 554:edd95c0879f8 455 uint8_t RESERVED13[3];
mbed_official 554:edd95c0879f8 456 __IO uint8_t PWRCTRL;
mbed_official 554:edd95c0879f8 457 uint8_t RESERVED14[3];
mbed_official 554:edd95c0879f8 458 __IO uint8_t ALSEC;
mbed_official 554:edd95c0879f8 459 uint8_t RESERVED15[3];
mbed_official 554:edd95c0879f8 460 __IO uint8_t ALMIN;
mbed_official 554:edd95c0879f8 461 uint8_t RESERVED16[3];
mbed_official 554:edd95c0879f8 462 __IO uint8_t ALHOUR;
mbed_official 554:edd95c0879f8 463 uint8_t RESERVED17[3];
mbed_official 554:edd95c0879f8 464 __IO uint8_t ALDOM;
mbed_official 554:edd95c0879f8 465 uint8_t RESERVED18[3];
mbed_official 554:edd95c0879f8 466 __IO uint8_t ALDOW;
mbed_official 554:edd95c0879f8 467 uint8_t RESERVED19[3];
mbed_official 554:edd95c0879f8 468 __IO uint16_t ALDOY;
mbed_official 554:edd95c0879f8 469 uint16_t RESERVED20;
mbed_official 554:edd95c0879f8 470 __IO uint8_t ALMON;
mbed_official 554:edd95c0879f8 471 uint8_t RESERVED21[3];
mbed_official 554:edd95c0879f8 472 __IO uint16_t ALYEAR;
mbed_official 554:edd95c0879f8 473 uint16_t RESERVED22;
mbed_official 554:edd95c0879f8 474 } LPC_RTC_TypeDef;
mbed_official 554:edd95c0879f8 475
mbed_official 554:edd95c0879f8 476 /*------------- Watchdog Timer (WDT) -----------------------------------------*/
mbed_official 554:edd95c0879f8 477 typedef struct
mbed_official 554:edd95c0879f8 478 {
mbed_official 554:edd95c0879f8 479 __IO uint8_t WDMOD;
mbed_official 554:edd95c0879f8 480 uint8_t RESERVED0[3];
mbed_official 554:edd95c0879f8 481 __IO uint32_t WDTC;
mbed_official 554:edd95c0879f8 482 __O uint8_t WDFEED;
mbed_official 554:edd95c0879f8 483 uint8_t RESERVED1[3];
mbed_official 554:edd95c0879f8 484 __I uint32_t WDTV;
mbed_official 554:edd95c0879f8 485 __IO uint32_t WDCLKSEL;
mbed_official 554:edd95c0879f8 486 } LPC_WDT_TypeDef;
mbed_official 554:edd95c0879f8 487
mbed_official 554:edd95c0879f8 488 /*------------- Analog-to-Digital Converter (ADC) ----------------------------*/
mbed_official 554:edd95c0879f8 489 typedef struct
mbed_official 554:edd95c0879f8 490 {
mbed_official 554:edd95c0879f8 491 __IO uint32_t ADCR;
mbed_official 554:edd95c0879f8 492 __IO uint32_t ADGDR;
mbed_official 554:edd95c0879f8 493 uint32_t RESERVED0;
mbed_official 554:edd95c0879f8 494 __IO uint32_t ADINTEN;
mbed_official 554:edd95c0879f8 495 __I uint32_t ADDR0;
mbed_official 554:edd95c0879f8 496 __I uint32_t ADDR1;
mbed_official 554:edd95c0879f8 497 __I uint32_t ADDR2;
mbed_official 554:edd95c0879f8 498 __I uint32_t ADDR3;
mbed_official 554:edd95c0879f8 499 __I uint32_t ADDR4;
mbed_official 554:edd95c0879f8 500 __I uint32_t ADDR5;
mbed_official 554:edd95c0879f8 501 __I uint32_t ADDR6;
mbed_official 554:edd95c0879f8 502 __I uint32_t ADDR7;
mbed_official 554:edd95c0879f8 503 __I uint32_t ADSTAT;
mbed_official 554:edd95c0879f8 504 __IO uint32_t ADTRM;
mbed_official 554:edd95c0879f8 505 } LPC_ADC_TypeDef;
mbed_official 554:edd95c0879f8 506
mbed_official 554:edd95c0879f8 507 /*------------- Digital-to-Analog Converter (DAC) ----------------------------*/
mbed_official 554:edd95c0879f8 508 typedef struct
mbed_official 554:edd95c0879f8 509 {
mbed_official 554:edd95c0879f8 510 __IO uint32_t DACR;
mbed_official 554:edd95c0879f8 511 __IO uint32_t DACCTRL;
mbed_official 554:edd95c0879f8 512 __IO uint16_t DACCNTVAL;
mbed_official 554:edd95c0879f8 513 } LPC_DAC_TypeDef;
mbed_official 554:edd95c0879f8 514
mbed_official 554:edd95c0879f8 515 /*------------- Multimedia Card Interface (MCI) ------------------------------*/
mbed_official 554:edd95c0879f8 516 typedef struct
mbed_official 554:edd95c0879f8 517 {
mbed_official 554:edd95c0879f8 518 __IO uint32_t MCIPower; /* Power control */
mbed_official 554:edd95c0879f8 519 __IO uint32_t MCIClock; /* Clock control */
mbed_official 554:edd95c0879f8 520 __IO uint32_t MCIArgument;
mbed_official 554:edd95c0879f8 521 __IO uint32_t MMCCommand;
mbed_official 554:edd95c0879f8 522 __I uint32_t MCIRespCmd;
mbed_official 554:edd95c0879f8 523 __I uint32_t MCIResponse0;
mbed_official 554:edd95c0879f8 524 __I uint32_t MCIResponse1;
mbed_official 554:edd95c0879f8 525 __I uint32_t MCIResponse2;
mbed_official 554:edd95c0879f8 526 __I uint32_t MCIResponse3;
mbed_official 554:edd95c0879f8 527 __IO uint32_t MCIDataTimer;
mbed_official 554:edd95c0879f8 528 __IO uint32_t MCIDataLength;
mbed_official 554:edd95c0879f8 529 __IO uint32_t MCIDataCtrl;
mbed_official 554:edd95c0879f8 530 __I uint32_t MCIDataCnt;
mbed_official 554:edd95c0879f8 531 __I uint32_t MCIStatus;
mbed_official 554:edd95c0879f8 532 __O uint32_t MCIClear;
mbed_official 554:edd95c0879f8 533 __IO uint32_t MCIMask0;
mbed_official 554:edd95c0879f8 534 uint32_t RESERVED1[2];
mbed_official 554:edd95c0879f8 535 __I uint32_t MCIFifoCnt;
mbed_official 554:edd95c0879f8 536 uint32_t RESERVED2[13];
mbed_official 554:edd95c0879f8 537 __IO uint32_t MCIFIFO[16];
mbed_official 554:edd95c0879f8 538 } LPC_MCI_TypeDef;
mbed_official 554:edd95c0879f8 539
mbed_official 554:edd95c0879f8 540 /*------------- Controller Area Network (CAN) --------------------------------*/
mbed_official 554:edd95c0879f8 541 typedef struct
mbed_official 554:edd95c0879f8 542 {
mbed_official 554:edd95c0879f8 543 __IO uint32_t mask[512]; /* ID Masks */
mbed_official 554:edd95c0879f8 544 } LPC_CANAF_RAM_TypeDef;
mbed_official 554:edd95c0879f8 545
mbed_official 554:edd95c0879f8 546 typedef struct /* Acceptance Filter Registers */
mbed_official 554:edd95c0879f8 547 {
mbed_official 554:edd95c0879f8 548 __IO uint32_t AFMR;
mbed_official 554:edd95c0879f8 549 __IO uint32_t SFF_sa;
mbed_official 554:edd95c0879f8 550 __IO uint32_t SFF_GRP_sa;
mbed_official 554:edd95c0879f8 551 __IO uint32_t EFF_sa;
mbed_official 554:edd95c0879f8 552 __IO uint32_t EFF_GRP_sa;
mbed_official 554:edd95c0879f8 553 __IO uint32_t ENDofTable;
mbed_official 554:edd95c0879f8 554 __I uint32_t LUTerrAd;
mbed_official 554:edd95c0879f8 555 __I uint32_t LUTerr;
mbed_official 554:edd95c0879f8 556 __IO uint32_t FCANIE;
mbed_official 554:edd95c0879f8 557 __IO uint32_t FCANIC0;
mbed_official 554:edd95c0879f8 558 __IO uint32_t FCANIC1;
mbed_official 554:edd95c0879f8 559 } LPC_CANAF_TypeDef;
mbed_official 554:edd95c0879f8 560
mbed_official 554:edd95c0879f8 561 typedef struct /* Central Registers */
mbed_official 554:edd95c0879f8 562 {
mbed_official 554:edd95c0879f8 563 __I uint32_t CANTxSR;
mbed_official 554:edd95c0879f8 564 __I uint32_t CANRxSR;
mbed_official 554:edd95c0879f8 565 __I uint32_t CANMSR;
mbed_official 554:edd95c0879f8 566 } LPC_CANCR_TypeDef;
mbed_official 554:edd95c0879f8 567
mbed_official 554:edd95c0879f8 568 typedef struct /* Controller Registers */
mbed_official 554:edd95c0879f8 569 {
mbed_official 554:edd95c0879f8 570 __IO uint32_t MOD;
mbed_official 554:edd95c0879f8 571 __O uint32_t CMR;
mbed_official 554:edd95c0879f8 572 __IO uint32_t GSR;
mbed_official 554:edd95c0879f8 573 __I uint32_t ICR;
mbed_official 554:edd95c0879f8 574 __IO uint32_t IER;
mbed_official 554:edd95c0879f8 575 __IO uint32_t BTR;
mbed_official 554:edd95c0879f8 576 __IO uint32_t EWL;
mbed_official 554:edd95c0879f8 577 __I uint32_t SR;
mbed_official 554:edd95c0879f8 578 __IO uint32_t RFS;
mbed_official 554:edd95c0879f8 579 __IO uint32_t RID;
mbed_official 554:edd95c0879f8 580 __IO uint32_t RDA;
mbed_official 554:edd95c0879f8 581 __IO uint32_t RDB;
mbed_official 554:edd95c0879f8 582 __IO uint32_t TFI1;
mbed_official 554:edd95c0879f8 583 __IO uint32_t TID1;
mbed_official 554:edd95c0879f8 584 __IO uint32_t TDA1;
mbed_official 554:edd95c0879f8 585 __IO uint32_t TDB1;
mbed_official 554:edd95c0879f8 586 __IO uint32_t TFI2;
mbed_official 554:edd95c0879f8 587 __IO uint32_t TID2;
mbed_official 554:edd95c0879f8 588 __IO uint32_t TDA2;
mbed_official 554:edd95c0879f8 589 __IO uint32_t TDB2;
mbed_official 554:edd95c0879f8 590 __IO uint32_t TFI3;
mbed_official 554:edd95c0879f8 591 __IO uint32_t TID3;
mbed_official 554:edd95c0879f8 592 __IO uint32_t TDA3;
mbed_official 554:edd95c0879f8 593 __IO uint32_t TDB3;
mbed_official 554:edd95c0879f8 594 } LPC_CAN_TypeDef;
mbed_official 554:edd95c0879f8 595
mbed_official 554:edd95c0879f8 596 /*------------- General Purpose Direct Memory Access (GPDMA) -----------------*/
mbed_official 554:edd95c0879f8 597 typedef struct /* Common Registers */
mbed_official 554:edd95c0879f8 598 {
mbed_official 554:edd95c0879f8 599 __I uint32_t DMACIntStat;
mbed_official 554:edd95c0879f8 600 __I uint32_t DMACIntTCStat;
mbed_official 554:edd95c0879f8 601 __O uint32_t DMACIntTCClear;
mbed_official 554:edd95c0879f8 602 __I uint32_t DMACIntErrStat;
mbed_official 554:edd95c0879f8 603 __O uint32_t DMACIntErrClr;
mbed_official 554:edd95c0879f8 604 __I uint32_t DMACRawIntTCStat;
mbed_official 554:edd95c0879f8 605 __I uint32_t DMACRawIntErrStat;
mbed_official 554:edd95c0879f8 606 __I uint32_t DMACEnbldChns;
mbed_official 554:edd95c0879f8 607 __IO uint32_t DMACSoftBReq;
mbed_official 554:edd95c0879f8 608 __IO uint32_t DMACSoftSReq;
mbed_official 554:edd95c0879f8 609 __IO uint32_t DMACSoftLBReq;
mbed_official 554:edd95c0879f8 610 __IO uint32_t DMACSoftLSReq;
mbed_official 554:edd95c0879f8 611 __IO uint32_t DMACConfig;
mbed_official 554:edd95c0879f8 612 __IO uint32_t DMACSync;
mbed_official 554:edd95c0879f8 613 } LPC_GPDMA_TypeDef;
mbed_official 554:edd95c0879f8 614
mbed_official 554:edd95c0879f8 615 typedef struct /* Channel Registers */
mbed_official 554:edd95c0879f8 616 {
mbed_official 554:edd95c0879f8 617 __IO uint32_t DMACCSrcAddr;
mbed_official 554:edd95c0879f8 618 __IO uint32_t DMACCDestAddr;
mbed_official 554:edd95c0879f8 619 __IO uint32_t DMACCLLI;
mbed_official 554:edd95c0879f8 620 __IO uint32_t DMACCControl;
mbed_official 554:edd95c0879f8 621 __IO uint32_t DMACCConfig;
mbed_official 554:edd95c0879f8 622 } LPC_GPDMACH_TypeDef;
mbed_official 554:edd95c0879f8 623
mbed_official 554:edd95c0879f8 624 /*------------- Universal Serial Bus (USB) -----------------------------------*/
mbed_official 554:edd95c0879f8 625 typedef struct
mbed_official 554:edd95c0879f8 626 {
mbed_official 554:edd95c0879f8 627 __I uint32_t HcRevision; /* USB Host Registers */
mbed_official 554:edd95c0879f8 628 __IO uint32_t HcControl;
mbed_official 554:edd95c0879f8 629 __IO uint32_t HcCommandStatus;
mbed_official 554:edd95c0879f8 630 __IO uint32_t HcInterruptStatus;
mbed_official 554:edd95c0879f8 631 __IO uint32_t HcInterruptEnable;
mbed_official 554:edd95c0879f8 632 __IO uint32_t HcInterruptDisable;
mbed_official 554:edd95c0879f8 633 __IO uint32_t HcHCCA;
mbed_official 554:edd95c0879f8 634 __I uint32_t HcPeriodCurrentED;
mbed_official 554:edd95c0879f8 635 __IO uint32_t HcControlHeadED;
mbed_official 554:edd95c0879f8 636 __IO uint32_t HcControlCurrentED;
mbed_official 554:edd95c0879f8 637 __IO uint32_t HcBulkHeadED;
mbed_official 554:edd95c0879f8 638 __IO uint32_t HcBulkCurrentED;
mbed_official 554:edd95c0879f8 639 __I uint32_t HcDoneHead;
mbed_official 554:edd95c0879f8 640 __IO uint32_t HcFmInterval;
mbed_official 554:edd95c0879f8 641 __I uint32_t HcFmRemaining;
mbed_official 554:edd95c0879f8 642 __I uint32_t HcFmNumber;
mbed_official 554:edd95c0879f8 643 __IO uint32_t HcPeriodicStart;
mbed_official 554:edd95c0879f8 644 __IO uint32_t HcLSTreshold;
mbed_official 554:edd95c0879f8 645 __IO uint32_t HcRhDescriptorA;
mbed_official 554:edd95c0879f8 646 __IO uint32_t HcRhDescriptorB;
mbed_official 554:edd95c0879f8 647 __IO uint32_t HcRhStatus;
mbed_official 554:edd95c0879f8 648 __IO uint32_t HcRhPortStatus1;
mbed_official 554:edd95c0879f8 649 __IO uint32_t HcRhPortStatus2;
mbed_official 554:edd95c0879f8 650 uint32_t RESERVED0[40];
mbed_official 554:edd95c0879f8 651 __I uint32_t Module_ID;
mbed_official 554:edd95c0879f8 652
mbed_official 554:edd95c0879f8 653 __I uint32_t OTGIntSt; /* USB On-The-Go Registers */
mbed_official 554:edd95c0879f8 654 __IO uint32_t OTGIntEn;
mbed_official 554:edd95c0879f8 655 __O uint32_t OTGIntSet;
mbed_official 554:edd95c0879f8 656 __O uint32_t OTGIntClr;
mbed_official 554:edd95c0879f8 657 __IO uint32_t OTGStCtrl;
mbed_official 554:edd95c0879f8 658 __IO uint32_t OTGTmr;
mbed_official 554:edd95c0879f8 659 uint32_t RESERVED1[58];
mbed_official 554:edd95c0879f8 660
mbed_official 554:edd95c0879f8 661 __I uint32_t USBDevIntSt; /* USB Device Interrupt Registers */
mbed_official 554:edd95c0879f8 662 __IO uint32_t USBDevIntEn;
mbed_official 554:edd95c0879f8 663 __O uint32_t USBDevIntClr;
mbed_official 554:edd95c0879f8 664 __O uint32_t USBDevIntSet;
mbed_official 554:edd95c0879f8 665
mbed_official 554:edd95c0879f8 666 __O uint32_t USBCmdCode; /* USB Device SIE Command Registers */
mbed_official 554:edd95c0879f8 667 __I uint32_t USBCmdData;
mbed_official 554:edd95c0879f8 668
mbed_official 554:edd95c0879f8 669 __I uint32_t USBRxData; /* USB Device Transfer Registers */
mbed_official 554:edd95c0879f8 670 __O uint32_t USBTxData;
mbed_official 554:edd95c0879f8 671 __I uint32_t USBRxPLen;
mbed_official 554:edd95c0879f8 672 __O uint32_t USBTxPLen;
mbed_official 554:edd95c0879f8 673 __IO uint32_t USBCtrl;
mbed_official 554:edd95c0879f8 674 __O uint32_t USBDevIntPri;
mbed_official 554:edd95c0879f8 675
mbed_official 554:edd95c0879f8 676 __I uint32_t USBEpIntSt; /* USB Device Endpoint Interrupt Regs */
mbed_official 554:edd95c0879f8 677 __IO uint32_t USBEpIntEn;
mbed_official 554:edd95c0879f8 678 __O uint32_t USBEpIntClr;
mbed_official 554:edd95c0879f8 679 __O uint32_t USBEpIntSet;
mbed_official 554:edd95c0879f8 680 __O uint32_t USBEpIntPri;
mbed_official 554:edd95c0879f8 681
mbed_official 554:edd95c0879f8 682 __IO uint32_t USBReEp; /* USB Device Endpoint Realization Reg*/
mbed_official 554:edd95c0879f8 683 __O uint32_t USBEpInd;
mbed_official 554:edd95c0879f8 684 __IO uint32_t USBMaxPSize;
mbed_official 554:edd95c0879f8 685
mbed_official 554:edd95c0879f8 686 __I uint32_t USBDMARSt; /* USB Device DMA Registers */
mbed_official 554:edd95c0879f8 687 __O uint32_t USBDMARClr;
mbed_official 554:edd95c0879f8 688 __O uint32_t USBDMARSet;
mbed_official 554:edd95c0879f8 689 uint32_t RESERVED2[9];
mbed_official 554:edd95c0879f8 690 __IO uint32_t USBUDCAH;
mbed_official 554:edd95c0879f8 691 __I uint32_t USBEpDMASt;
mbed_official 554:edd95c0879f8 692 __O uint32_t USBEpDMAEn;
mbed_official 554:edd95c0879f8 693 __O uint32_t USBEpDMADis;
mbed_official 554:edd95c0879f8 694 __I uint32_t USBDMAIntSt;
mbed_official 554:edd95c0879f8 695 __IO uint32_t USBDMAIntEn;
mbed_official 554:edd95c0879f8 696 uint32_t RESERVED3[2];
mbed_official 554:edd95c0879f8 697 __I uint32_t USBEoTIntSt;
mbed_official 554:edd95c0879f8 698 __O uint32_t USBEoTIntClr;
mbed_official 554:edd95c0879f8 699 __O uint32_t USBEoTIntSet;
mbed_official 554:edd95c0879f8 700 __I uint32_t USBNDDRIntSt;
mbed_official 554:edd95c0879f8 701 __O uint32_t USBNDDRIntClr;
mbed_official 554:edd95c0879f8 702 __O uint32_t USBNDDRIntSet;
mbed_official 554:edd95c0879f8 703 __I uint32_t USBSysErrIntSt;
mbed_official 554:edd95c0879f8 704 __O uint32_t USBSysErrIntClr;
mbed_official 554:edd95c0879f8 705 __O uint32_t USBSysErrIntSet;
mbed_official 554:edd95c0879f8 706 uint32_t RESERVED4[15];
mbed_official 554:edd95c0879f8 707
mbed_official 554:edd95c0879f8 708 __I uint32_t I2C_RX; /* USB OTG I2C Registers */
mbed_official 554:edd95c0879f8 709 __O uint32_t I2C_WO;
mbed_official 554:edd95c0879f8 710 __I uint32_t I2C_STS;
mbed_official 554:edd95c0879f8 711 __IO uint32_t I2C_CTL;
mbed_official 554:edd95c0879f8 712 __IO uint32_t I2C_CLKHI;
mbed_official 554:edd95c0879f8 713 __O uint32_t I2C_CLKLO;
mbed_official 554:edd95c0879f8 714 uint32_t RESERVED5[823];
mbed_official 554:edd95c0879f8 715
mbed_official 554:edd95c0879f8 716 union {
mbed_official 554:edd95c0879f8 717 __IO uint32_t USBClkCtrl; /* USB Clock Control Registers */
mbed_official 554:edd95c0879f8 718 __IO uint32_t OTGClkCtrl;
mbed_official 554:edd95c0879f8 719 };
mbed_official 554:edd95c0879f8 720 union {
mbed_official 554:edd95c0879f8 721 __I uint32_t USBClkSt;
mbed_official 554:edd95c0879f8 722 __I uint32_t OTGClkSt;
mbed_official 554:edd95c0879f8 723 };
mbed_official 554:edd95c0879f8 724 } LPC_USB_TypeDef;
mbed_official 554:edd95c0879f8 725
mbed_official 554:edd95c0879f8 726 /*------------- Ethernet Media Access Controller (EMAC) ----------------------*/
mbed_official 554:edd95c0879f8 727 typedef struct
mbed_official 554:edd95c0879f8 728 {
mbed_official 554:edd95c0879f8 729 __IO uint32_t MAC1; /* MAC Registers */
mbed_official 554:edd95c0879f8 730 __IO uint32_t MAC2;
mbed_official 554:edd95c0879f8 731 __IO uint32_t IPGT;
mbed_official 554:edd95c0879f8 732 __IO uint32_t IPGR;
mbed_official 554:edd95c0879f8 733 __IO uint32_t CLRT;
mbed_official 554:edd95c0879f8 734 __IO uint32_t MAXF;
mbed_official 554:edd95c0879f8 735 __IO uint32_t SUPP;
mbed_official 554:edd95c0879f8 736 __IO uint32_t TEST;
mbed_official 554:edd95c0879f8 737 __IO uint32_t MCFG;
mbed_official 554:edd95c0879f8 738 __IO uint32_t MCMD;
mbed_official 554:edd95c0879f8 739 __IO uint32_t MADR;
mbed_official 554:edd95c0879f8 740 __O uint32_t MWTD;
mbed_official 554:edd95c0879f8 741 __I uint32_t MRDD;
mbed_official 554:edd95c0879f8 742 __I uint32_t MIND;
mbed_official 554:edd95c0879f8 743 uint32_t RESERVED0[2];
mbed_official 554:edd95c0879f8 744 __IO uint32_t SA0;
mbed_official 554:edd95c0879f8 745 __IO uint32_t SA1;
mbed_official 554:edd95c0879f8 746 __IO uint32_t SA2;
mbed_official 554:edd95c0879f8 747 uint32_t RESERVED1[45];
mbed_official 554:edd95c0879f8 748 __IO uint32_t Command; /* Control Registers */
mbed_official 554:edd95c0879f8 749 __I uint32_t Status;
mbed_official 554:edd95c0879f8 750 __IO uint32_t RxDescriptor;
mbed_official 554:edd95c0879f8 751 __IO uint32_t RxStatus;
mbed_official 554:edd95c0879f8 752 __IO uint32_t RxDescriptorNumber;
mbed_official 554:edd95c0879f8 753 __I uint32_t RxProduceIndex;
mbed_official 554:edd95c0879f8 754 __IO uint32_t RxConsumeIndex;
mbed_official 554:edd95c0879f8 755 __IO uint32_t TxDescriptor;
mbed_official 554:edd95c0879f8 756 __IO uint32_t TxStatus;
mbed_official 554:edd95c0879f8 757 __IO uint32_t TxDescriptorNumber;
mbed_official 554:edd95c0879f8 758 __IO uint32_t TxProduceIndex;
mbed_official 554:edd95c0879f8 759 __I uint32_t TxConsumeIndex;
mbed_official 554:edd95c0879f8 760 uint32_t RESERVED2[10];
mbed_official 554:edd95c0879f8 761 __I uint32_t TSV0;
mbed_official 554:edd95c0879f8 762 __I uint32_t TSV1;
mbed_official 554:edd95c0879f8 763 __I uint32_t RSV;
mbed_official 554:edd95c0879f8 764 uint32_t RESERVED3[3];
mbed_official 554:edd95c0879f8 765 __IO uint32_t FlowControlCounter;
mbed_official 554:edd95c0879f8 766 __I uint32_t FlowControlStatus;
mbed_official 554:edd95c0879f8 767 uint32_t RESERVED4[34];
mbed_official 554:edd95c0879f8 768 __IO uint32_t RxFilterCtrl; /* Rx Filter Registers */
mbed_official 554:edd95c0879f8 769 __IO uint32_t RxFilterWoLStatus;
mbed_official 554:edd95c0879f8 770 __IO uint32_t RxFilterWoLClear;
mbed_official 554:edd95c0879f8 771 uint32_t RESERVED5;
mbed_official 554:edd95c0879f8 772 __IO uint32_t HashFilterL;
mbed_official 554:edd95c0879f8 773 __IO uint32_t HashFilterH;
mbed_official 554:edd95c0879f8 774 uint32_t RESERVED6[882];
mbed_official 554:edd95c0879f8 775 __I uint32_t IntStatus; /* Module Control Registers */
mbed_official 554:edd95c0879f8 776 __IO uint32_t IntEnable;
mbed_official 554:edd95c0879f8 777 __O uint32_t IntClear;
mbed_official 554:edd95c0879f8 778 __O uint32_t IntSet;
mbed_official 554:edd95c0879f8 779 uint32_t RESERVED7;
mbed_official 554:edd95c0879f8 780 __IO uint32_t PowerDown;
mbed_official 554:edd95c0879f8 781 uint32_t RESERVED8;
mbed_official 554:edd95c0879f8 782 __IO uint32_t Module_ID;
mbed_official 554:edd95c0879f8 783 } LPC_EMAC_TypeDef;
mbed_official 554:edd95c0879f8 784
mbed_official 554:edd95c0879f8 785 /*-------------------- External Memory Controller (EMC) ----------------------*/
mbed_official 554:edd95c0879f8 786 typedef struct
mbed_official 554:edd95c0879f8 787 {
mbed_official 554:edd95c0879f8 788 __IO uint32_t EMCControl;
mbed_official 554:edd95c0879f8 789 __I uint32_t EMCStatus;
mbed_official 554:edd95c0879f8 790 __IO uint32_t EMCConfig;
mbed_official 554:edd95c0879f8 791 uint32_t RESERVED1[5];
mbed_official 554:edd95c0879f8 792 __IO uint32_t EMCDynamicControl;
mbed_official 554:edd95c0879f8 793 __IO uint32_t EMCDynamicRefresh;
mbed_official 554:edd95c0879f8 794 __IO uint32_t EMCDynamicReadConfig;
mbed_official 554:edd95c0879f8 795 uint32_t RESERVED2;
mbed_official 554:edd95c0879f8 796 __IO uint32_t EMCDynamicRP;
mbed_official 554:edd95c0879f8 797 __IO uint32_t EMCDynamicRAS;
mbed_official 554:edd95c0879f8 798 __IO uint32_t EMCDynamicSREX;
mbed_official 554:edd95c0879f8 799 __IO uint32_t EMCDynamicAPR;
mbed_official 554:edd95c0879f8 800 __IO uint32_t EMCDynamicDAL;
mbed_official 554:edd95c0879f8 801 __IO uint32_t EMCDynamicWR;
mbed_official 554:edd95c0879f8 802 __IO uint32_t EMCDynamicRC;
mbed_official 554:edd95c0879f8 803 __IO uint32_t EMCDynamicRFC;
mbed_official 554:edd95c0879f8 804 __IO uint32_t EMCDynamicXSR;
mbed_official 554:edd95c0879f8 805 __IO uint32_t EMCDynamicRRD;
mbed_official 554:edd95c0879f8 806 __IO uint32_t EMCDynamicMRD;
mbed_official 554:edd95c0879f8 807 uint32_t RESERVED3[9];
mbed_official 554:edd95c0879f8 808 __IO uint32_t EMCStaticExtendedWait;
mbed_official 554:edd95c0879f8 809 uint32_t RESERVED4[31];
mbed_official 554:edd95c0879f8 810 __IO uint32_t EMCDynamicConfig0;
mbed_official 554:edd95c0879f8 811 __IO uint32_t EMCDynamicRasCas0;
mbed_official 554:edd95c0879f8 812 uint32_t RESERVED5[6];
mbed_official 554:edd95c0879f8 813 __IO uint32_t EMCDynamicConfig1;
mbed_official 554:edd95c0879f8 814 __IO uint32_t EMCDynamicRasCas1;
mbed_official 554:edd95c0879f8 815 uint32_t RESERVED6[6];
mbed_official 554:edd95c0879f8 816 __IO uint32_t EMCDynamicConfic2;
mbed_official 554:edd95c0879f8 817 __IO uint32_t EMCDynamicRasCas2;
mbed_official 554:edd95c0879f8 818 uint32_t RESERVED7[6];
mbed_official 554:edd95c0879f8 819 __IO uint32_t EMCDynamicConfig3;
mbed_official 554:edd95c0879f8 820 __IO uint32_t EMCDynamicRasCas3;
mbed_official 554:edd95c0879f8 821 uint32_t RESERVED8[38];
mbed_official 554:edd95c0879f8 822 __IO uint32_t EMCStaticConfig0;
mbed_official 554:edd95c0879f8 823 __IO uint32_t EMCStaticWaitWen0;
mbed_official 554:edd95c0879f8 824 __IO uint32_t EMCStaticWaitOen0;
mbed_official 554:edd95c0879f8 825 __IO uint32_t EMCStaticWaitRd0;
mbed_official 554:edd95c0879f8 826 __IO uint32_t EMCStaticWaitPage0;
mbed_official 554:edd95c0879f8 827 __IO uint32_t EMCStaticWaitWr0;
mbed_official 554:edd95c0879f8 828 __IO uint32_t EMCStaticWaitTurn0;
mbed_official 554:edd95c0879f8 829 uint32_t RESERVED9;
mbed_official 554:edd95c0879f8 830 __IO uint32_t EMCStaticConfig1;
mbed_official 554:edd95c0879f8 831 __IO uint32_t EMCStaticWaitWen1;
mbed_official 554:edd95c0879f8 832 __IO uint32_t EMCStaticWaitOen1;
mbed_official 554:edd95c0879f8 833 __IO uint32_t EMCStaticWaitRd1;
mbed_official 554:edd95c0879f8 834 __IO uint32_t EMCStaticWaitPage1;
mbed_official 554:edd95c0879f8 835 __IO uint32_t EMCStaticWaitWr1;
mbed_official 554:edd95c0879f8 836 __IO uint32_t EMCStaticWaitTurn1;
mbed_official 554:edd95c0879f8 837 uint32_t RESERVED10;
mbed_official 554:edd95c0879f8 838 __IO uint32_t EMCStaticConfig2;
mbed_official 554:edd95c0879f8 839 __IO uint32_t EMCStaticWaitWen2;
mbed_official 554:edd95c0879f8 840 __IO uint32_t EMCStaticWaitOen2;
mbed_official 554:edd95c0879f8 841 __IO uint32_t EMCStaticWaitRd2;
mbed_official 554:edd95c0879f8 842 __IO uint32_t EMCStaticWaitPage2;
mbed_official 554:edd95c0879f8 843 __IO uint32_t EMCStaticWaitWr2;
mbed_official 554:edd95c0879f8 844 __IO uint32_t EMCStaticWaitTurn2;
mbed_official 554:edd95c0879f8 845 uint32_t RESERVED11;
mbed_official 554:edd95c0879f8 846 __IO uint32_t EMCStaticConfig3;
mbed_official 554:edd95c0879f8 847 __IO uint32_t EMCStaticWaitWen3;
mbed_official 554:edd95c0879f8 848 __IO uint32_t EMCStaticWaitOen3;
mbed_official 554:edd95c0879f8 849 __IO uint32_t EMCStaticWaitRd3;
mbed_official 554:edd95c0879f8 850 __IO uint32_t EMCStaticWaitPage3;
mbed_official 554:edd95c0879f8 851 __IO uint32_t EMCStaticWaitWr3;
mbed_official 554:edd95c0879f8 852 __IO uint32_t EMCStaticWaitTurn3;
mbed_official 554:edd95c0879f8 853 } LPC_EMC_TypeDef;
mbed_official 554:edd95c0879f8 854 #if defined ( __CC_ARM )
mbed_official 554:edd95c0879f8 855 #pragma no_anon_unions
mbed_official 554:edd95c0879f8 856 #endif
mbed_official 554:edd95c0879f8 857
mbed_official 554:edd95c0879f8 858 /******************************************************************************/
mbed_official 554:edd95c0879f8 859 /* Peripheral memory map */
mbed_official 554:edd95c0879f8 860 /******************************************************************************/
mbed_official 554:edd95c0879f8 861 /* Base addresses */
mbed_official 554:edd95c0879f8 862
mbed_official 554:edd95c0879f8 863 /* AHB Peripheral # 0 */
mbed_official 554:edd95c0879f8 864
mbed_official 554:edd95c0879f8 865 /*
mbed_official 554:edd95c0879f8 866 #define FLASH_BASE (0x00000000UL)
mbed_official 554:edd95c0879f8 867 #define RAM_BASE (0x10000000UL)
mbed_official 554:edd95c0879f8 868 #define GPIO_BASE (0x2009C000UL)
mbed_official 554:edd95c0879f8 869 #define APB0_BASE (0x40000000UL)
mbed_official 554:edd95c0879f8 870 #define APB1_BASE (0x40080000UL)
mbed_official 554:edd95c0879f8 871 #define AHB_BASE (0x50000000UL)
mbed_official 554:edd95c0879f8 872 #define CM3_BASE (0xE0000000UL)
mbed_official 554:edd95c0879f8 873 */
mbed_official 554:edd95c0879f8 874
mbed_official 554:edd95c0879f8 875 // TODO - #define VIC_BASE_ADDR 0xFFFFF000
mbed_official 554:edd95c0879f8 876
mbed_official 554:edd95c0879f8 877 #define LPC_WDT_BASE (0xE0000000)
mbed_official 554:edd95c0879f8 878 #define LPC_TIM0_BASE (0xE0004000)
mbed_official 554:edd95c0879f8 879 #define LPC_TIM1_BASE (0xE0008000)
mbed_official 554:edd95c0879f8 880 #define LPC_UART0_BASE (0xE000C000)
mbed_official 554:edd95c0879f8 881 #define LPC_UART1_BASE (0xE0010000)
mbed_official 554:edd95c0879f8 882 #define LPC_PWM1_BASE (0xE0018000)
mbed_official 554:edd95c0879f8 883 #define LPC_I2C0_BASE (0xE001C000)
mbed_official 554:edd95c0879f8 884 #define LPC_SPI_BASE (0xE0020000)
mbed_official 554:edd95c0879f8 885 #define LPC_RTC_BASE (0xE0024000)
mbed_official 554:edd95c0879f8 886 #define LPC_GPIOINT_BASE (0xE0028080)
mbed_official 554:edd95c0879f8 887 #define LPC_PINCON_BASE (0xE002C000)
mbed_official 554:edd95c0879f8 888 #define LPC_SSP1_BASE (0xE0030000)
mbed_official 554:edd95c0879f8 889 #define LPC_ADC_BASE (0xE0034000)
mbed_official 554:edd95c0879f8 890 #define LPC_CANAF_RAM_BASE (0xE0038000)
mbed_official 554:edd95c0879f8 891 #define LPC_CANAF_BASE (0xE003C000)
mbed_official 554:edd95c0879f8 892 #define LPC_CANCR_BASE (0xE0040000)
mbed_official 554:edd95c0879f8 893 #define LPC_CAN1_BASE (0xE0044000)
mbed_official 554:edd95c0879f8 894 #define LPC_CAN2_BASE (0xE0048000)
mbed_official 554:edd95c0879f8 895 #define LPC_I2C1_BASE (0xE005C000)
mbed_official 554:edd95c0879f8 896 #define LPC_SSP0_BASE (0xE0068000)
mbed_official 554:edd95c0879f8 897 #define LPC_DAC_BASE (0xE006C000)
mbed_official 554:edd95c0879f8 898 #define LPC_TIM2_BASE (0xE0070000)
mbed_official 554:edd95c0879f8 899 #define LPC_TIM3_BASE (0xE0074000)
mbed_official 554:edd95c0879f8 900 #define LPC_UART2_BASE (0xE0078000)
mbed_official 554:edd95c0879f8 901 #define LPC_UART3_BASE (0xE007C000)
mbed_official 554:edd95c0879f8 902 #define LPC_I2C2_BASE (0xE0080000)
mbed_official 554:edd95c0879f8 903 #define LPC_I2S_BASE (0xE0088000)
mbed_official 554:edd95c0879f8 904 #define LPC_MCI_BASE (0xE008C000)
mbed_official 554:edd95c0879f8 905 #define LPC_SC_BASE (0xE01FC000)
mbed_official 554:edd95c0879f8 906 #define LPC_EMAC_BASE (0xFFE00000)
mbed_official 554:edd95c0879f8 907 #define LPC_GPDMA_BASE (0xFFE04000)
mbed_official 554:edd95c0879f8 908 #define LPC_GPDMACH0_BASE (0xFFE04100)
mbed_official 554:edd95c0879f8 909 #define LPC_GPDMACH1_BASE (0xFFE04120)
mbed_official 554:edd95c0879f8 910 #define LPC_EMC_BASE (0xFFE08000)
mbed_official 554:edd95c0879f8 911 #define LPC_USB_BASE (0xFFE0C000)
mbed_official 554:edd95c0879f8 912 #define LPC_VIC_BASE (0xFFFFF000)
mbed_official 554:edd95c0879f8 913
mbed_official 554:edd95c0879f8 914 /* GPIOs */
mbed_official 554:edd95c0879f8 915 #define LPC_GPIO0_BASE (0x3FFFC000)
mbed_official 554:edd95c0879f8 916 #define LPC_GPIO1_BASE (0x3FFFC020)
mbed_official 554:edd95c0879f8 917 #define LPC_GPIO2_BASE (0x3FFFC040)
mbed_official 554:edd95c0879f8 918 #define LPC_GPIO3_BASE (0x3FFFC060)
mbed_official 554:edd95c0879f8 919 #define LPC_GPIO4_BASE (0x3FFFC080)
mbed_official 554:edd95c0879f8 920
mbed_official 554:edd95c0879f8 921
mbed_official 554:edd95c0879f8 922 /******************************************************************************/
mbed_official 554:edd95c0879f8 923 /* Peripheral declaration */
mbed_official 554:edd95c0879f8 924 /******************************************************************************/
mbed_official 554:edd95c0879f8 925 #define LPC_SC (( LPC_SC_TypeDef *) LPC_SC_BASE)
mbed_official 554:edd95c0879f8 926 #define LPC_GPIO0 (( LPC_GPIO_TypeDef *) LPC_GPIO0_BASE)
mbed_official 554:edd95c0879f8 927 #define LPC_GPIO1 (( LPC_GPIO_TypeDef *) LPC_GPIO1_BASE)
mbed_official 554:edd95c0879f8 928 #define LPC_GPIO2 (( LPC_GPIO_TypeDef *) LPC_GPIO2_BASE)
mbed_official 554:edd95c0879f8 929 #define LPC_GPIO3 (( LPC_GPIO_TypeDef *) LPC_GPIO3_BASE)
mbed_official 554:edd95c0879f8 930 #define LPC_GPIO4 (( LPC_GPIO_TypeDef *) LPC_GPIO4_BASE)
mbed_official 554:edd95c0879f8 931 #define LPC_WDT (( LPC_WDT_TypeDef *) LPC_WDT_BASE)
mbed_official 554:edd95c0879f8 932 #define LPC_TIM0 (( LPC_TIM_TypeDef *) LPC_TIM0_BASE)
mbed_official 554:edd95c0879f8 933 #define LPC_TIM1 (( LPC_TIM_TypeDef *) LPC_TIM1_BASE)
mbed_official 554:edd95c0879f8 934 #define LPC_TIM2 (( LPC_TIM_TypeDef *) LPC_TIM2_BASE)
mbed_official 554:edd95c0879f8 935 #define LPC_TIM3 (( LPC_TIM_TypeDef *) LPC_TIM3_BASE)
mbed_official 554:edd95c0879f8 936 #define LPC_UART0 (( LPC_UART_TypeDef *) LPC_UART0_BASE)
mbed_official 554:edd95c0879f8 937 #define LPC_UART1 (( LPC_UART1_TypeDef *) LPC_UART1_BASE)
mbed_official 554:edd95c0879f8 938 #define LPC_UART2 (( LPC_UART_TypeDef *) LPC_UART2_BASE)
mbed_official 554:edd95c0879f8 939 #define LPC_UART3 (( LPC_UART_TypeDef *) LPC_UART3_BASE)
mbed_official 554:edd95c0879f8 940 #define LPC_PWM1 (( LPC_PWM_TypeDef *) LPC_PWM1_BASE)
mbed_official 554:edd95c0879f8 941 #define LPC_I2C0 (( LPC_I2C_TypeDef *) LPC_I2C0_BASE)
mbed_official 554:edd95c0879f8 942 #define LPC_I2C1 (( LPC_I2C_TypeDef *) LPC_I2C1_BASE)
mbed_official 554:edd95c0879f8 943 #define LPC_I2C2 (( LPC_I2C_TypeDef *) LPC_I2C2_BASE)
mbed_official 554:edd95c0879f8 944 #define LPC_I2S (( LPC_I2S_TypeDef *) LPC_I2S_BASE)
mbed_official 554:edd95c0879f8 945 #define LPC_SPI (( LPC_SPI_TypeDef *) LPC_SPI_BASE)
mbed_official 554:edd95c0879f8 946 #define LPC_RTC (( LPC_RTC_TypeDef *) LPC_RTC_BASE)
mbed_official 554:edd95c0879f8 947 #define LPC_GPIOINT (( LPC_GPIOINT_TypeDef *) LPC_GPIOINT_BASE)
mbed_official 554:edd95c0879f8 948 #define LPC_PINCON (( LPC_PINCON_TypeDef *) LPC_PINCON_BASE)
mbed_official 554:edd95c0879f8 949 #define LPC_SSP0 (( LPC_SSP_TypeDef *) LPC_SSP0_BASE)
mbed_official 554:edd95c0879f8 950 #define LPC_SSP1 (( LPC_SSP_TypeDef *) LPC_SSP1_BASE)
mbed_official 554:edd95c0879f8 951 #define LPC_ADC (( LPC_ADC_TypeDef *) LPC_ADC_BASE)
mbed_official 554:edd95c0879f8 952 #define LPC_DAC (( LPC_DAC_TypeDef *) LPC_DAC_BASE)
mbed_official 554:edd95c0879f8 953 #define LPC_CANAF_RAM ((LPC_CANAF_RAM_TypeDef *) LPC_CANAF_RAM_BASE)
mbed_official 554:edd95c0879f8 954 #define LPC_CANAF (( LPC_CANAF_TypeDef *) LPC_CANAF_BASE)
mbed_official 554:edd95c0879f8 955 #define LPC_CANCR (( LPC_CANCR_TypeDef *) LPC_CANCR_BASE)
mbed_official 554:edd95c0879f8 956 #define LPC_CAN1 (( LPC_CAN_TypeDef *) LPC_CAN1_BASE)
mbed_official 554:edd95c0879f8 957 #define LPC_CAN2 (( LPC_CAN_TypeDef *) LPC_CAN2_BASE)
mbed_official 554:edd95c0879f8 958 #define LPC_MCI (( LPC_MCI_TypeDef *) LPC_MCI_BASE)
mbed_official 554:edd95c0879f8 959 #define LPC_EMAC (( LPC_EMAC_TypeDef *) LPC_EMAC_BASE)
mbed_official 554:edd95c0879f8 960 #define LPC_GPDMA (( LPC_GPDMA_TypeDef *) LPC_GPDMA_BASE)
mbed_official 554:edd95c0879f8 961 #define LPC_GPDMACH0 (( LPC_GPDMACH_TypeDef *) LPC_GPDMACH0_BASE)
mbed_official 554:edd95c0879f8 962 #define LPC_GPDMACH1 (( LPC_GPDMACH_TypeDef *) LPC_GPDMACH1_BASE)
mbed_official 554:edd95c0879f8 963 #define LPC_USB (( LPC_USB_TypeDef *) LPC_USB_BASE)
mbed_official 554:edd95c0879f8 964 #define LPC_VIC (( LPC_VIC_TypeDef *) LPC_VIC_BASE)
mbed_official 554:edd95c0879f8 965 #define LPC_EMC (( LPC_EMC_TypeDef *) LPC_EMC_BASE)
mbed_official 554:edd95c0879f8 966
mbed_official 554:edd95c0879f8 967 #ifdef __cplusplus
mbed_official 554:edd95c0879f8 968 }
mbed_official 554:edd95c0879f8 969 #endif
mbed_official 554:edd95c0879f8 970
mbed_official 554:edd95c0879f8 971 #endif // __LPC24xx_H
mbed_official 554:edd95c0879f8 972