added prescaler for 16 bit pwm in LPC1347 target

Fork of mbed-dev by mbed official

Committer:
JojoS
Date:
Sat Sep 10 15:32:04 2016 +0000
Revision:
147:ba84b7dc41a7
Parent:
144:ef7eb2e8f9f7
added prescaler for 16 bit timers (solution as in LPC11xx), default prescaler 31 for max 28 ms period time

Who changed what in which revision?

UserRevisionLine numberNew contents of line
<> 144:ef7eb2e8f9f7 1 /****************************************************************************************************//**
<> 144:ef7eb2e8f9f7 2 * $Id$ LPC407x_8x_177x_8x.h 2012-04-25
<> 144:ef7eb2e8f9f7 3 *//**
<> 144:ef7eb2e8f9f7 4 * @file LPC407x_8x_177x_8x.h
<> 144:ef7eb2e8f9f7 5 *
<> 144:ef7eb2e8f9f7 6 * @brief CMSIS Cortex-M4 Cortex-M3 Peripheral Access Layer Header File for
<> 144:ef7eb2e8f9f7 7 * NXP LPC407x_8x_177x_8x.
<> 144:ef7eb2e8f9f7 8 * @version V0.7
<> 144:ef7eb2e8f9f7 9 * @date 20. June 2012
<> 144:ef7eb2e8f9f7 10 * @author NXP MCU SW Application Team
<> 144:ef7eb2e8f9f7 11 *
<> 144:ef7eb2e8f9f7 12 * Copyright(C) 2012, NXP Semiconductor
<> 144:ef7eb2e8f9f7 13 * All rights reserved.
<> 144:ef7eb2e8f9f7 14 *
<> 144:ef7eb2e8f9f7 15 ***********************************************************************
<> 144:ef7eb2e8f9f7 16 * Software that is described herein is for illustrative purposes only
<> 144:ef7eb2e8f9f7 17 * which provides customers with programming information regarding the
<> 144:ef7eb2e8f9f7 18 * products. This software is supplied "AS IS" without any warranties.
<> 144:ef7eb2e8f9f7 19 * NXP Semiconductors assumes no responsibility or liability for the
<> 144:ef7eb2e8f9f7 20 * use of the software, conveys no license or title under any patent,
<> 144:ef7eb2e8f9f7 21 * copyright, or mask work right to the product. NXP Semiconductors
<> 144:ef7eb2e8f9f7 22 * reserves the right to make changes in the software without
<> 144:ef7eb2e8f9f7 23 * notification. NXP Semiconductors also make no representation or
<> 144:ef7eb2e8f9f7 24 * warranty that such application will be suitable for the specified
<> 144:ef7eb2e8f9f7 25 * use without further testing or modification.
<> 144:ef7eb2e8f9f7 26 * Permission to use, copy, modify, and distribute this software and its
<> 144:ef7eb2e8f9f7 27 * documentation is hereby granted, under NXP Semiconductors'
<> 144:ef7eb2e8f9f7 28 * relevant copyright in the software, without fee, provided that it
<> 144:ef7eb2e8f9f7 29 * is used in conjunction with NXP Semiconductors microcontrollers. This
<> 144:ef7eb2e8f9f7 30 * copyright, permission, and disclaimer notice must appear in all copies of
<> 144:ef7eb2e8f9f7 31 * this code.
<> 144:ef7eb2e8f9f7 32 **********************************************************************/
<> 144:ef7eb2e8f9f7 33
<> 144:ef7eb2e8f9f7 34 #ifndef __LPC407x_8x_177x_8x_H__
<> 144:ef7eb2e8f9f7 35 #define __LPC407x_8x_177x_8x_H__
<> 144:ef7eb2e8f9f7 36
<> 144:ef7eb2e8f9f7 37 #if defined(__CORTEX_M4) && !defined(CORE_M4)
<> 144:ef7eb2e8f9f7 38 #define CORE_M4
<> 144:ef7eb2e8f9f7 39 #endif
<> 144:ef7eb2e8f9f7 40
<> 144:ef7eb2e8f9f7 41 // ##################
<> 144:ef7eb2e8f9f7 42 // Code Red - excluded extern "C" as unrequired
<> 144:ef7eb2e8f9f7 43 // ##################
<> 144:ef7eb2e8f9f7 44 #if 0
<> 144:ef7eb2e8f9f7 45 #ifdef __cplusplus
<> 144:ef7eb2e8f9f7 46 extern "C" {
<> 144:ef7eb2e8f9f7 47 #endif
<> 144:ef7eb2e8f9f7 48 #endif
<> 144:ef7eb2e8f9f7 49
<> 144:ef7eb2e8f9f7 50
<> 144:ef7eb2e8f9f7 51 /* ------------------------- Interrupt Number Definition ------------------------ */
<> 144:ef7eb2e8f9f7 52
<> 144:ef7eb2e8f9f7 53 typedef enum IRQn
<> 144:ef7eb2e8f9f7 54 {
<> 144:ef7eb2e8f9f7 55 /****** Cortex-M4 Processor Exceptions Numbers ***************************************************/
<> 144:ef7eb2e8f9f7 56 Reset_IRQn = -15, /*!< 1 Reset Vector, invoked on Power up and warm reset */
<> 144:ef7eb2e8f9f7 57 NonMaskableInt_IRQn = -14, /*!< 2 Non Maskable Interrupt */
<> 144:ef7eb2e8f9f7 58 HardFault_IRQn = -13, /*!< 3 Hard Fault, all classes of Fault */
<> 144:ef7eb2e8f9f7 59 MemoryManagement_IRQn = -12, /*!< 4 Cortex-M3 Memory Management Interrupt */
<> 144:ef7eb2e8f9f7 60 BusFault_IRQn = -11, /*!< 5 Cortex-M3 Bus Fault Interrupt */
<> 144:ef7eb2e8f9f7 61 UsageFault_IRQn = -10, /*!< 6 Cortex-M3 Usage Fault Interrupt */
<> 144:ef7eb2e8f9f7 62 SVCall_IRQn = -5, /*!< 11 Cortex-M3 SV Call Interrupt */
<> 144:ef7eb2e8f9f7 63 DebugMonitor_IRQn = -4, /*!< 12 Cortex-M3 Debug Monitor Interrupt */
<> 144:ef7eb2e8f9f7 64 PendSV_IRQn = -2, /*!< 14 Cortex-M3 Pend SV Interrupt */
<> 144:ef7eb2e8f9f7 65 SysTick_IRQn = -1, /*!< 15 Cortex-M3 System Tick Interrupt */
<> 144:ef7eb2e8f9f7 66
<> 144:ef7eb2e8f9f7 67 /****** LPC407x_8x_177x_8x Specific Interrupt Numbers *******************************************************/
<> 144:ef7eb2e8f9f7 68 WDT_IRQn = 0, /*!< Watchdog Timer Interrupt */
<> 144:ef7eb2e8f9f7 69 TIMER0_IRQn = 1, /*!< Timer0 Interrupt */
<> 144:ef7eb2e8f9f7 70 TIMER1_IRQn = 2, /*!< Timer1 Interrupt */
<> 144:ef7eb2e8f9f7 71 TIMER2_IRQn = 3, /*!< Timer2 Interrupt */
<> 144:ef7eb2e8f9f7 72 TIMER3_IRQn = 4, /*!< Timer3 Interrupt */
<> 144:ef7eb2e8f9f7 73 UART0_IRQn = 5, /*!< UART0 Interrupt */
<> 144:ef7eb2e8f9f7 74 UART1_IRQn = 6, /*!< UART1 Interrupt */
<> 144:ef7eb2e8f9f7 75 UART2_IRQn = 7, /*!< UART2 Interrupt */
<> 144:ef7eb2e8f9f7 76 UART3_IRQn = 8, /*!< UART3 Interrupt */
<> 144:ef7eb2e8f9f7 77 PWM1_IRQn = 9, /*!< PWM1 Interrupt */
<> 144:ef7eb2e8f9f7 78 I2C0_IRQn = 10, /*!< I2C0 Interrupt */
<> 144:ef7eb2e8f9f7 79 I2C1_IRQn = 11, /*!< I2C1 Interrupt */
<> 144:ef7eb2e8f9f7 80 I2C2_IRQn = 12, /*!< I2C2 Interrupt */
<> 144:ef7eb2e8f9f7 81 Reserved0_IRQn = 13, /*!< Reserved */
<> 144:ef7eb2e8f9f7 82 SSP0_IRQn = 14, /*!< SSP0 Interrupt */
<> 144:ef7eb2e8f9f7 83 SSP1_IRQn = 15, /*!< SSP1 Interrupt */
<> 144:ef7eb2e8f9f7 84 PLL0_IRQn = 16, /*!< PLL0 Lock (Main PLL) Interrupt */
<> 144:ef7eb2e8f9f7 85 RTC_IRQn = 17, /*!< Real Time Clock Interrupt */
<> 144:ef7eb2e8f9f7 86 EINT0_IRQn = 18, /*!< External Interrupt 0 Interrupt */
<> 144:ef7eb2e8f9f7 87 EINT1_IRQn = 19, /*!< External Interrupt 1 Interrupt */
<> 144:ef7eb2e8f9f7 88 EINT2_IRQn = 20, /*!< External Interrupt 2 Interrupt */
<> 144:ef7eb2e8f9f7 89 EINT3_IRQn = 21, /*!< External Interrupt 3 Interrupt */
<> 144:ef7eb2e8f9f7 90 ADC_IRQn = 22, /*!< A/D Converter Interrupt */
<> 144:ef7eb2e8f9f7 91 BOD_IRQn = 23, /*!< Brown-Out Detect Interrupt */
<> 144:ef7eb2e8f9f7 92 USB_IRQn = 24, /*!< USB Interrupt */
<> 144:ef7eb2e8f9f7 93 CAN_IRQn = 25, /*!< CAN Interrupt */
<> 144:ef7eb2e8f9f7 94 DMA_IRQn = 26, /*!< General Purpose DMA Interrupt */
<> 144:ef7eb2e8f9f7 95 I2S_IRQn = 27, /*!< I2S Interrupt */
<> 144:ef7eb2e8f9f7 96 ENET_IRQn = 28, /*!< Ethernet Interrupt */
<> 144:ef7eb2e8f9f7 97 MCI_IRQn = 29, /*!< SD/MMC card I/F Interrupt */
<> 144:ef7eb2e8f9f7 98 MCPWM_IRQn = 30, /*!< Motor Control PWM Interrupt */
<> 144:ef7eb2e8f9f7 99 QEI_IRQn = 31, /*!< Quadrature Encoder Interface Interrupt */
<> 144:ef7eb2e8f9f7 100 PLL1_IRQn = 32, /*!< PLL1 Lock (USB PLL) Interrupt */
<> 144:ef7eb2e8f9f7 101 USBActivity_IRQn = 33, /*!< USB Activity interrupt */
<> 144:ef7eb2e8f9f7 102 CANActivity_IRQn = 34, /*!< CAN Activity interrupt */
<> 144:ef7eb2e8f9f7 103 UART4_IRQn = 35, /*!< UART4 Interrupt */
<> 144:ef7eb2e8f9f7 104 SSP2_IRQn = 36, /*!< SSP2 Interrupt */
<> 144:ef7eb2e8f9f7 105 LCD_IRQn = 37, /*!< LCD Interrupt */
<> 144:ef7eb2e8f9f7 106 GPIO_IRQn = 38, /*!< GPIO Interrupt */
<> 144:ef7eb2e8f9f7 107 PWM0_IRQn = 39, /*!< 39 PWM0 */
<> 144:ef7eb2e8f9f7 108 EEPROM_IRQn = 40, /*!< 40 EEPROM */
<> 144:ef7eb2e8f9f7 109 CMP0_IRQn = 41, /*!< 41 CMP0 */
<> 144:ef7eb2e8f9f7 110 CMP1_IRQn = 42 /*!< 42 CMP1 */
<> 144:ef7eb2e8f9f7 111 } IRQn_Type;
<> 144:ef7eb2e8f9f7 112
<> 144:ef7eb2e8f9f7 113 /* ================================================================================ */
<> 144:ef7eb2e8f9f7 114 /* ================ Processor and Core Peripheral Section ================ */
<> 144:ef7eb2e8f9f7 115 /* ================================================================================ */
<> 144:ef7eb2e8f9f7 116 #ifdef CORE_M4
<> 144:ef7eb2e8f9f7 117 /* ----------------Configuration of the cm4 Processor and Core Peripherals---------------- */
<> 144:ef7eb2e8f9f7 118 #define __CM4_REV 0x0000 /*!< Cortex-M4 Core Revision */
<> 144:ef7eb2e8f9f7 119 #define __MPU_PRESENT 1 /*!< MPU present or not */
<> 144:ef7eb2e8f9f7 120 #define __NVIC_PRIO_BITS 5 /*!< Number of Bits used for Priority Levels */
<> 144:ef7eb2e8f9f7 121 #define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */
<> 144:ef7eb2e8f9f7 122 #define __FPU_PRESENT 1 /*!< FPU present or not */
<> 144:ef7eb2e8f9f7 123
<> 144:ef7eb2e8f9f7 124
<> 144:ef7eb2e8f9f7 125 #include "core_cm4.h" /*!< Cortex-M4 processor and core peripherals */
<> 144:ef7eb2e8f9f7 126 #else
<> 144:ef7eb2e8f9f7 127 /* Configuration of the Cortex-M3 Processor and Core Peripherals */
<> 144:ef7eb2e8f9f7 128 #define __MPU_PRESENT 1 /*!< MPU present or not */
<> 144:ef7eb2e8f9f7 129 #define __NVIC_PRIO_BITS 5 /*!< Number of Bits used for Priority Levels */
<> 144:ef7eb2e8f9f7 130 #define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */
<> 144:ef7eb2e8f9f7 131
<> 144:ef7eb2e8f9f7 132
<> 144:ef7eb2e8f9f7 133 #include "core_cm3.h" /* Cortex-M3 processor and core peripherals */
<> 144:ef7eb2e8f9f7 134
<> 144:ef7eb2e8f9f7 135 #endif
<> 144:ef7eb2e8f9f7 136
<> 144:ef7eb2e8f9f7 137 #include "system_LPC407x_8x_177x_8x.h" /*!< LPC408x_7x System */
<> 144:ef7eb2e8f9f7 138
<> 144:ef7eb2e8f9f7 139
<> 144:ef7eb2e8f9f7 140
<> 144:ef7eb2e8f9f7 141
<> 144:ef7eb2e8f9f7 142
<> 144:ef7eb2e8f9f7 143
<> 144:ef7eb2e8f9f7 144 /* ================================================================================ */
<> 144:ef7eb2e8f9f7 145 /* ================ Device Specific Peripheral Section ================ */
<> 144:ef7eb2e8f9f7 146 /* ================================================================================ */
<> 144:ef7eb2e8f9f7 147
<> 144:ef7eb2e8f9f7 148 #if defined ( __CC_ARM )
<> 144:ef7eb2e8f9f7 149 #pragma anon_unions
<> 144:ef7eb2e8f9f7 150 #endif
<> 144:ef7eb2e8f9f7 151
<> 144:ef7eb2e8f9f7 152 /*------------- General Purpose Direct Memory Access (GPDMA) -----------------*/
<> 144:ef7eb2e8f9f7 153 typedef struct /* Common Registers */
<> 144:ef7eb2e8f9f7 154 {
<> 144:ef7eb2e8f9f7 155 __I uint32_t IntStat;
<> 144:ef7eb2e8f9f7 156 __I uint32_t IntTCStat;
<> 144:ef7eb2e8f9f7 157 __O uint32_t IntTCClear;
<> 144:ef7eb2e8f9f7 158 __I uint32_t IntErrStat;
<> 144:ef7eb2e8f9f7 159 __O uint32_t IntErrClr;
<> 144:ef7eb2e8f9f7 160 __I uint32_t RawIntTCStat;
<> 144:ef7eb2e8f9f7 161 __I uint32_t RawIntErrStat;
<> 144:ef7eb2e8f9f7 162 __I uint32_t EnbldChns;
<> 144:ef7eb2e8f9f7 163 __IO uint32_t SoftBReq;
<> 144:ef7eb2e8f9f7 164 __IO uint32_t SoftSReq;
<> 144:ef7eb2e8f9f7 165 __IO uint32_t SoftLBReq;
<> 144:ef7eb2e8f9f7 166 __IO uint32_t SoftLSReq;
<> 144:ef7eb2e8f9f7 167 __IO uint32_t Config;
<> 144:ef7eb2e8f9f7 168 __IO uint32_t Sync;
<> 144:ef7eb2e8f9f7 169 } LPC_GPDMA_TypeDef;
<> 144:ef7eb2e8f9f7 170
<> 144:ef7eb2e8f9f7 171 typedef struct /* Channel Registers */
<> 144:ef7eb2e8f9f7 172 {
<> 144:ef7eb2e8f9f7 173 __IO uint32_t CSrcAddr;
<> 144:ef7eb2e8f9f7 174 __IO uint32_t CDestAddr;
<> 144:ef7eb2e8f9f7 175 __IO uint32_t CLLI;
<> 144:ef7eb2e8f9f7 176 __IO uint32_t CControl;
<> 144:ef7eb2e8f9f7 177 __IO uint32_t CConfig;
<> 144:ef7eb2e8f9f7 178 } LPC_GPDMACH_TypeDef;
<> 144:ef7eb2e8f9f7 179
<> 144:ef7eb2e8f9f7 180 /*------------- System Control (SC) ------------------------------------------*/
<> 144:ef7eb2e8f9f7 181 typedef struct
<> 144:ef7eb2e8f9f7 182 {
<> 144:ef7eb2e8f9f7 183 __IO uint32_t FLASHCFG; /*!< Offset: 0x000 (R/W) Flash Accelerator Configuration Register */
<> 144:ef7eb2e8f9f7 184 uint32_t RESERVED0[31];
<> 144:ef7eb2e8f9f7 185 __IO uint32_t PLL0CON; /*!< Offset: 0x080 (R/W) PLL0 Control Register */
<> 144:ef7eb2e8f9f7 186 __IO uint32_t PLL0CFG; /*!< Offset: 0x084 (R/W) PLL0 Configuration Register */
<> 144:ef7eb2e8f9f7 187 __I uint32_t PLL0STAT; /*!< Offset: 0x088 (R/ ) PLL0 Status Register */
<> 144:ef7eb2e8f9f7 188 __O uint32_t PLL0FEED; /*!< Offset: 0x08C ( /W) PLL0 Feed Register */
<> 144:ef7eb2e8f9f7 189 uint32_t RESERVED1[4];
<> 144:ef7eb2e8f9f7 190 __IO uint32_t PLL1CON; /*!< Offset: 0x0A0 (R/W) PLL1 Control Register */
<> 144:ef7eb2e8f9f7 191 __IO uint32_t PLL1CFG; /*!< Offset: 0x0A4 (R/W) PLL1 Configuration Register */
<> 144:ef7eb2e8f9f7 192 __I uint32_t PLL1STAT; /*!< Offset: 0x0A8 (R/ ) PLL1 Status Register */
<> 144:ef7eb2e8f9f7 193 __O uint32_t PLL1FEED; /*!< Offset: 0x0AC ( /W) PLL1 Feed Register */
<> 144:ef7eb2e8f9f7 194 uint32_t RESERVED2[4];
<> 144:ef7eb2e8f9f7 195 __IO uint32_t PCON; /*!< Offset: 0x0C0 (R/W) Power Control Register */
<> 144:ef7eb2e8f9f7 196 __IO uint32_t PCONP; /*!< Offset: 0x0C4 (R/W) Power Control for Peripherals Register */
<> 144:ef7eb2e8f9f7 197 __IO uint32_t PCONP1; /*!< Offset: 0x0C8 (R/W) Power Control for Peripherals Register */
<> 144:ef7eb2e8f9f7 198 uint32_t RESERVED3[13];
<> 144:ef7eb2e8f9f7 199 __IO uint32_t EMCCLKSEL; /*!< Offset: 0x100 (R/W) External Memory Controller Clock Selection Register */
<> 144:ef7eb2e8f9f7 200 __IO uint32_t CCLKSEL; /*!< Offset: 0x104 (R/W) CPU Clock Selection Register */
<> 144:ef7eb2e8f9f7 201 __IO uint32_t USBCLKSEL; /*!< Offset: 0x108 (R/W) USB Clock Selection Register */
<> 144:ef7eb2e8f9f7 202 __IO uint32_t CLKSRCSEL; /*!< Offset: 0x10C (R/W) Clock Source Select Register */
<> 144:ef7eb2e8f9f7 203 __IO uint32_t CANSLEEPCLR; /*!< Offset: 0x110 (R/W) CAN Sleep Clear Register */
<> 144:ef7eb2e8f9f7 204 __IO uint32_t CANWAKEFLAGS; /*!< Offset: 0x114 (R/W) CAN Wake-up Flags Register */
<> 144:ef7eb2e8f9f7 205 uint32_t RESERVED4[10];
<> 144:ef7eb2e8f9f7 206 __IO uint32_t EXTINT; /*!< Offset: 0x140 (R/W) External Interrupt Flag Register */
<> 144:ef7eb2e8f9f7 207 uint32_t RESERVED5[1];
<> 144:ef7eb2e8f9f7 208 __IO uint32_t EXTMODE; /*!< Offset: 0x148 (R/W) External Interrupt Mode Register */
<> 144:ef7eb2e8f9f7 209 __IO uint32_t EXTPOLAR; /*!< Offset: 0x14C (R/W) External Interrupt Polarity Register */
<> 144:ef7eb2e8f9f7 210 uint32_t RESERVED6[12];
<> 144:ef7eb2e8f9f7 211 __IO uint32_t RSID; /*!< Offset: 0x180 (R/W) Reset Source Identification Register */
<> 144:ef7eb2e8f9f7 212 uint32_t RESERVED7[1];
<> 144:ef7eb2e8f9f7 213 __IO uint32_t MATRIXARB; /*!< Offset: 0x188 (R/W) Matrix Arbitration Register */
<> 144:ef7eb2e8f9f7 214 uint32_t RESERVED71[5];
<> 144:ef7eb2e8f9f7 215 __IO uint32_t SCS; /*!< Offset: 0x1A0 (R/W) System Controls and Status Register */
<> 144:ef7eb2e8f9f7 216 __IO uint32_t IRCTRIM; /*!< Offset: 0x1A4 (R/W) Clock Dividers */
<> 144:ef7eb2e8f9f7 217 __IO uint32_t PCLKSEL; /*!< Offset: 0x1A8 (R/W) Peripheral Clock Selection Register */
<> 144:ef7eb2e8f9f7 218 uint32_t RESERVED8;
<> 144:ef7eb2e8f9f7 219 __IO uint32_t PBOOST; /*!< Offset: 0x1B0 (R/W) Power Boost control register */
<> 144:ef7eb2e8f9f7 220 __IO uint32_t SPIFICLKSEL;
<> 144:ef7eb2e8f9f7 221 __IO uint32_t LCD_CFG; /*!< Offset: 0x1B8 (R/W) LCD Configuration and clocking control Register */
<> 144:ef7eb2e8f9f7 222 uint32_t RESERVED10[1];
<> 144:ef7eb2e8f9f7 223 __IO uint32_t USBIntSt; /*!< Offset: 0x1C0 (R/W) USB Interrupt Status Register */
<> 144:ef7eb2e8f9f7 224 __IO uint32_t DMAREQSEL; /*!< Offset: 0x1C4 (R/W) DMA Request Select Register */
<> 144:ef7eb2e8f9f7 225 __IO uint32_t CLKOUTCFG; /*!< Offset: 0x1C8 (R/W) Clock Output Configuration Register */
<> 144:ef7eb2e8f9f7 226 __IO uint32_t RSTCON0; /*!< Offset: 0x1CC (R/W) RESET Control0 Register */
<> 144:ef7eb2e8f9f7 227 __IO uint32_t RSTCON1; /*!< Offset: 0x1D0 (R/W) RESET Control1 Register */
<> 144:ef7eb2e8f9f7 228 uint32_t RESERVED11[2];
<> 144:ef7eb2e8f9f7 229 __IO uint32_t EMCDLYCTL; /*!< Offset: 0x1DC (R/W) SDRAM programmable delays */
<> 144:ef7eb2e8f9f7 230 __IO uint32_t EMCCAL; /*!< Offset: 0x1E0 (R/W) Calibration of programmable delays */
<> 144:ef7eb2e8f9f7 231 } LPC_SC_TypeDef;
<> 144:ef7eb2e8f9f7 232 /*------------- Ethernet Media Access Controller (EMAC) ----------------------*/
<> 144:ef7eb2e8f9f7 233 typedef struct
<> 144:ef7eb2e8f9f7 234 {
<> 144:ef7eb2e8f9f7 235 __IO uint32_t MAC1; /* MAC Registers */
<> 144:ef7eb2e8f9f7 236 __IO uint32_t MAC2;
<> 144:ef7eb2e8f9f7 237 __IO uint32_t IPGT;
<> 144:ef7eb2e8f9f7 238 __IO uint32_t IPGR;
<> 144:ef7eb2e8f9f7 239 __IO uint32_t CLRT;
<> 144:ef7eb2e8f9f7 240 __IO uint32_t MAXF;
<> 144:ef7eb2e8f9f7 241 __IO uint32_t SUPP;
<> 144:ef7eb2e8f9f7 242 __IO uint32_t TEST;
<> 144:ef7eb2e8f9f7 243 __IO uint32_t MCFG;
<> 144:ef7eb2e8f9f7 244 __IO uint32_t MCMD;
<> 144:ef7eb2e8f9f7 245 __IO uint32_t MADR;
<> 144:ef7eb2e8f9f7 246 __O uint32_t MWTD;
<> 144:ef7eb2e8f9f7 247 __I uint32_t MRDD;
<> 144:ef7eb2e8f9f7 248 __I uint32_t MIND;
<> 144:ef7eb2e8f9f7 249 uint32_t RESERVED0[2];
<> 144:ef7eb2e8f9f7 250 __IO uint32_t SA0;
<> 144:ef7eb2e8f9f7 251 __IO uint32_t SA1;
<> 144:ef7eb2e8f9f7 252 __IO uint32_t SA2;
<> 144:ef7eb2e8f9f7 253 uint32_t RESERVED1[45];
<> 144:ef7eb2e8f9f7 254 __IO uint32_t Command; /* Control Registers */
<> 144:ef7eb2e8f9f7 255 __I uint32_t Status;
<> 144:ef7eb2e8f9f7 256 __IO uint32_t RxDescriptor;
<> 144:ef7eb2e8f9f7 257 __IO uint32_t RxStatus;
<> 144:ef7eb2e8f9f7 258 __IO uint32_t RxDescriptorNumber;
<> 144:ef7eb2e8f9f7 259 __I uint32_t RxProduceIndex;
<> 144:ef7eb2e8f9f7 260 __IO uint32_t RxConsumeIndex;
<> 144:ef7eb2e8f9f7 261 __IO uint32_t TxDescriptor;
<> 144:ef7eb2e8f9f7 262 __IO uint32_t TxStatus;
<> 144:ef7eb2e8f9f7 263 __IO uint32_t TxDescriptorNumber;
<> 144:ef7eb2e8f9f7 264 __IO uint32_t TxProduceIndex;
<> 144:ef7eb2e8f9f7 265 __I uint32_t TxConsumeIndex;
<> 144:ef7eb2e8f9f7 266 uint32_t RESERVED2[10];
<> 144:ef7eb2e8f9f7 267 __I uint32_t TSV0;
<> 144:ef7eb2e8f9f7 268 __I uint32_t TSV1;
<> 144:ef7eb2e8f9f7 269 __I uint32_t RSV;
<> 144:ef7eb2e8f9f7 270 uint32_t RESERVED3[3];
<> 144:ef7eb2e8f9f7 271 __IO uint32_t FlowControlCounter;
<> 144:ef7eb2e8f9f7 272 __I uint32_t FlowControlStatus;
<> 144:ef7eb2e8f9f7 273 uint32_t RESERVED4[34];
<> 144:ef7eb2e8f9f7 274 __IO uint32_t RxFilterCtrl; /* Rx Filter Registers */
<> 144:ef7eb2e8f9f7 275 __I uint32_t RxFilterWoLStatus;
<> 144:ef7eb2e8f9f7 276 __O uint32_t RxFilterWoLClear;
<> 144:ef7eb2e8f9f7 277 uint32_t RESERVED5;
<> 144:ef7eb2e8f9f7 278 __IO uint32_t HashFilterL;
<> 144:ef7eb2e8f9f7 279 __IO uint32_t HashFilterH;
<> 144:ef7eb2e8f9f7 280 uint32_t RESERVED6[882];
<> 144:ef7eb2e8f9f7 281 __I uint32_t IntStatus; /* Module Control Registers */
<> 144:ef7eb2e8f9f7 282 __IO uint32_t IntEnable;
<> 144:ef7eb2e8f9f7 283 __O uint32_t IntClear;
<> 144:ef7eb2e8f9f7 284 __O uint32_t IntSet;
<> 144:ef7eb2e8f9f7 285 uint32_t RESERVED7;
<> 144:ef7eb2e8f9f7 286 __IO uint32_t PowerDown;
<> 144:ef7eb2e8f9f7 287 uint32_t RESERVED8;
<> 144:ef7eb2e8f9f7 288 __IO uint32_t Module_ID;
<> 144:ef7eb2e8f9f7 289 } LPC_EMAC_TypeDef;
<> 144:ef7eb2e8f9f7 290
<> 144:ef7eb2e8f9f7 291 /*------------- LCD controller (LCD) -----------------------------------------*/
<> 144:ef7eb2e8f9f7 292 typedef struct
<> 144:ef7eb2e8f9f7 293 {
<> 144:ef7eb2e8f9f7 294 __IO uint32_t TIMH; /* LCD Registers */
<> 144:ef7eb2e8f9f7 295 __IO uint32_t TIMV;
<> 144:ef7eb2e8f9f7 296 __IO uint32_t POL;
<> 144:ef7eb2e8f9f7 297 __IO uint32_t LE;
<> 144:ef7eb2e8f9f7 298 __IO uint32_t UPBASE;
<> 144:ef7eb2e8f9f7 299 __IO uint32_t LPBASE;
<> 144:ef7eb2e8f9f7 300 __IO uint32_t CTRL;
<> 144:ef7eb2e8f9f7 301 __IO uint32_t INTMSK;
<> 144:ef7eb2e8f9f7 302 __I uint32_t INTRAW;
<> 144:ef7eb2e8f9f7 303 __I uint32_t INTSTAT;
<> 144:ef7eb2e8f9f7 304 __O uint32_t INTCLR;
<> 144:ef7eb2e8f9f7 305 __I uint32_t UPCURR;
<> 144:ef7eb2e8f9f7 306 __I uint32_t LPCURR;
<> 144:ef7eb2e8f9f7 307 uint32_t RESERVED0[115];
<> 144:ef7eb2e8f9f7 308 __IO uint32_t PAL[128];
<> 144:ef7eb2e8f9f7 309 uint32_t RESERVED1[256];
<> 144:ef7eb2e8f9f7 310 __IO uint32_t CRSR_IMG[256];
<> 144:ef7eb2e8f9f7 311 __IO uint32_t CRSR_CTRL;
<> 144:ef7eb2e8f9f7 312 __IO uint32_t CRSR_CFG;
<> 144:ef7eb2e8f9f7 313 __IO uint32_t CRSR_PAL0;
<> 144:ef7eb2e8f9f7 314 __IO uint32_t CRSR_PAL1;
<> 144:ef7eb2e8f9f7 315 __IO uint32_t CRSR_XY;
<> 144:ef7eb2e8f9f7 316 __IO uint32_t CRSR_CLIP;
<> 144:ef7eb2e8f9f7 317 uint32_t RESERVED2[2];
<> 144:ef7eb2e8f9f7 318 __IO uint32_t CRSR_INTMSK;
<> 144:ef7eb2e8f9f7 319 __O uint32_t CRSR_INTCLR;
<> 144:ef7eb2e8f9f7 320 __I uint32_t CRSR_INTRAW;
<> 144:ef7eb2e8f9f7 321 __I uint32_t CRSR_INTSTAT;
<> 144:ef7eb2e8f9f7 322 } LPC_LCD_TypeDef;
<> 144:ef7eb2e8f9f7 323
<> 144:ef7eb2e8f9f7 324 /*------------- Universal Serial Bus (USB) -----------------------------------*/
<> 144:ef7eb2e8f9f7 325 typedef struct
<> 144:ef7eb2e8f9f7 326 {
<> 144:ef7eb2e8f9f7 327 __I uint32_t Revision; /* USB Host Registers */
<> 144:ef7eb2e8f9f7 328 __IO uint32_t Control;
<> 144:ef7eb2e8f9f7 329 __IO uint32_t CommandStatus;
<> 144:ef7eb2e8f9f7 330 __IO uint32_t InterruptStatus;
<> 144:ef7eb2e8f9f7 331 __IO uint32_t InterruptEnable;
<> 144:ef7eb2e8f9f7 332 __IO uint32_t InterruptDisable;
<> 144:ef7eb2e8f9f7 333 __IO uint32_t HCCA;
<> 144:ef7eb2e8f9f7 334 __I uint32_t PeriodCurrentED;
<> 144:ef7eb2e8f9f7 335 __IO uint32_t ControlHeadED;
<> 144:ef7eb2e8f9f7 336 __IO uint32_t ControlCurrentED;
<> 144:ef7eb2e8f9f7 337 __IO uint32_t BulkHeadED;
<> 144:ef7eb2e8f9f7 338 __IO uint32_t BulkCurrentED;
<> 144:ef7eb2e8f9f7 339 __I uint32_t DoneHead;
<> 144:ef7eb2e8f9f7 340 __IO uint32_t FmInterval;
<> 144:ef7eb2e8f9f7 341 __I uint32_t FmRemaining;
<> 144:ef7eb2e8f9f7 342 __I uint32_t FmNumber;
<> 144:ef7eb2e8f9f7 343 __IO uint32_t PeriodicStart;
<> 144:ef7eb2e8f9f7 344 __IO uint32_t LSTreshold;
<> 144:ef7eb2e8f9f7 345 __IO uint32_t RhDescriptorA;
<> 144:ef7eb2e8f9f7 346 __IO uint32_t RhDescriptorB;
<> 144:ef7eb2e8f9f7 347 __IO uint32_t RhStatus;
<> 144:ef7eb2e8f9f7 348 __IO uint32_t RhPortStatus1;
<> 144:ef7eb2e8f9f7 349 __IO uint32_t RhPortStatus2;
<> 144:ef7eb2e8f9f7 350 uint32_t RESERVED0[40];
<> 144:ef7eb2e8f9f7 351 __I uint32_t Module_ID;
<> 144:ef7eb2e8f9f7 352
<> 144:ef7eb2e8f9f7 353 __I uint32_t IntSt; /* USB On-The-Go Registers */
<> 144:ef7eb2e8f9f7 354 __IO uint32_t IntEn;
<> 144:ef7eb2e8f9f7 355 __O uint32_t IntSet;
<> 144:ef7eb2e8f9f7 356 __O uint32_t IntClr;
<> 144:ef7eb2e8f9f7 357 __IO uint32_t StCtrl;
<> 144:ef7eb2e8f9f7 358 __IO uint32_t Tmr;
<> 144:ef7eb2e8f9f7 359 uint32_t RESERVED1[58];
<> 144:ef7eb2e8f9f7 360
<> 144:ef7eb2e8f9f7 361 __I uint32_t DevIntSt; /* USB Device Interrupt Registers */
<> 144:ef7eb2e8f9f7 362 __IO uint32_t DevIntEn;
<> 144:ef7eb2e8f9f7 363 __O uint32_t DevIntClr;
<> 144:ef7eb2e8f9f7 364 __O uint32_t DevIntSet;
<> 144:ef7eb2e8f9f7 365
<> 144:ef7eb2e8f9f7 366 __O uint32_t CmdCode; /* USB Device SIE Command Registers */
<> 144:ef7eb2e8f9f7 367 __I uint32_t CmdData;
<> 144:ef7eb2e8f9f7 368
<> 144:ef7eb2e8f9f7 369 __I uint32_t RxData; /* USB Device Transfer Registers */
<> 144:ef7eb2e8f9f7 370 __O uint32_t TxData;
<> 144:ef7eb2e8f9f7 371 __I uint32_t RxPLen;
<> 144:ef7eb2e8f9f7 372 __O uint32_t TxPLen;
<> 144:ef7eb2e8f9f7 373 __IO uint32_t Ctrl;
<> 144:ef7eb2e8f9f7 374 __O uint32_t DevIntPri;
<> 144:ef7eb2e8f9f7 375
<> 144:ef7eb2e8f9f7 376 __I uint32_t EpIntSt; /* USB Device Endpoint Interrupt Regs */
<> 144:ef7eb2e8f9f7 377 __IO uint32_t EpIntEn;
<> 144:ef7eb2e8f9f7 378 __O uint32_t EpIntClr;
<> 144:ef7eb2e8f9f7 379 __O uint32_t EpIntSet;
<> 144:ef7eb2e8f9f7 380 __O uint32_t EpIntPri;
<> 144:ef7eb2e8f9f7 381
<> 144:ef7eb2e8f9f7 382 __IO uint32_t ReEp; /* USB Device Endpoint Realization Reg*/
<> 144:ef7eb2e8f9f7 383 __O uint32_t EpInd;
<> 144:ef7eb2e8f9f7 384 __IO uint32_t MaxPSize;
<> 144:ef7eb2e8f9f7 385
<> 144:ef7eb2e8f9f7 386 __I uint32_t DMARSt; /* USB Device DMA Registers */
<> 144:ef7eb2e8f9f7 387 __O uint32_t DMARClr;
<> 144:ef7eb2e8f9f7 388 __O uint32_t DMARSet;
<> 144:ef7eb2e8f9f7 389 uint32_t RESERVED2[9];
<> 144:ef7eb2e8f9f7 390 __IO uint32_t UDCAH;
<> 144:ef7eb2e8f9f7 391 __I uint32_t EpDMASt;
<> 144:ef7eb2e8f9f7 392 __O uint32_t EpDMAEn;
<> 144:ef7eb2e8f9f7 393 __O uint32_t EpDMADis;
<> 144:ef7eb2e8f9f7 394 __I uint32_t DMAIntSt;
<> 144:ef7eb2e8f9f7 395 __IO uint32_t DMAIntEn;
<> 144:ef7eb2e8f9f7 396 uint32_t RESERVED3[2];
<> 144:ef7eb2e8f9f7 397 __I uint32_t EoTIntSt;
<> 144:ef7eb2e8f9f7 398 __O uint32_t EoTIntClr;
<> 144:ef7eb2e8f9f7 399 __O uint32_t EoTIntSet;
<> 144:ef7eb2e8f9f7 400 __I uint32_t NDDRIntSt;
<> 144:ef7eb2e8f9f7 401 __O uint32_t NDDRIntClr;
<> 144:ef7eb2e8f9f7 402 __O uint32_t NDDRIntSet;
<> 144:ef7eb2e8f9f7 403 __I uint32_t SysErrIntSt;
<> 144:ef7eb2e8f9f7 404 __O uint32_t SysErrIntClr;
<> 144:ef7eb2e8f9f7 405 __O uint32_t SysErrIntSet;
<> 144:ef7eb2e8f9f7 406 uint32_t RESERVED4[15];
<> 144:ef7eb2e8f9f7 407
<> 144:ef7eb2e8f9f7 408 union {
<> 144:ef7eb2e8f9f7 409 __I uint32_t I2C_RX; /* USB OTG I2C Registers */
<> 144:ef7eb2e8f9f7 410 __O uint32_t I2C_TX;
<> 144:ef7eb2e8f9f7 411 };
<> 144:ef7eb2e8f9f7 412 __IO uint32_t I2C_STS;
<> 144:ef7eb2e8f9f7 413 __IO uint32_t I2C_CTL;
<> 144:ef7eb2e8f9f7 414 __IO uint32_t I2C_CLKHI;
<> 144:ef7eb2e8f9f7 415 __O uint32_t I2C_CLKLO;
<> 144:ef7eb2e8f9f7 416 uint32_t RESERVED5[824];
<> 144:ef7eb2e8f9f7 417
<> 144:ef7eb2e8f9f7 418 union {
<> 144:ef7eb2e8f9f7 419 __IO uint32_t USBClkCtrl; /* USB Clock Control Registers */
<> 144:ef7eb2e8f9f7 420 __IO uint32_t OTGClkCtrl;
<> 144:ef7eb2e8f9f7 421 };
<> 144:ef7eb2e8f9f7 422 union {
<> 144:ef7eb2e8f9f7 423 __I uint32_t USBClkSt;
<> 144:ef7eb2e8f9f7 424 __I uint32_t OTGClkSt;
<> 144:ef7eb2e8f9f7 425 };
<> 144:ef7eb2e8f9f7 426 } LPC_USB_TypeDef;
<> 144:ef7eb2e8f9f7 427
<> 144:ef7eb2e8f9f7 428 /*------------- CRC Engine (CRC) -----------------------------------------*/
<> 144:ef7eb2e8f9f7 429 typedef struct
<> 144:ef7eb2e8f9f7 430 {
<> 144:ef7eb2e8f9f7 431 __IO uint32_t MODE;
<> 144:ef7eb2e8f9f7 432 __IO uint32_t SEED;
<> 144:ef7eb2e8f9f7 433 union {
<> 144:ef7eb2e8f9f7 434 __I uint32_t SUM;
<> 144:ef7eb2e8f9f7 435 struct {
<> 144:ef7eb2e8f9f7 436 __O uint32_t DATA;
<> 144:ef7eb2e8f9f7 437 } WR_DATA_DWORD;
<> 144:ef7eb2e8f9f7 438
<> 144:ef7eb2e8f9f7 439 struct {
<> 144:ef7eb2e8f9f7 440 __O uint16_t DATA;
<> 144:ef7eb2e8f9f7 441 uint16_t RESERVED;
<> 144:ef7eb2e8f9f7 442 }WR_DATA_WORD;
<> 144:ef7eb2e8f9f7 443
<> 144:ef7eb2e8f9f7 444 struct {
<> 144:ef7eb2e8f9f7 445 __O uint8_t DATA;
<> 144:ef7eb2e8f9f7 446 uint8_t RESERVED[3];
<> 144:ef7eb2e8f9f7 447 }WR_DATA_BYTE;
<> 144:ef7eb2e8f9f7 448 };
<> 144:ef7eb2e8f9f7 449 } LPC_CRC_TypeDef;
<> 144:ef7eb2e8f9f7 450 /*------------- General Purpose Input/Output (GPIO) --------------------------*/
<> 144:ef7eb2e8f9f7 451 typedef struct
<> 144:ef7eb2e8f9f7 452 {
<> 144:ef7eb2e8f9f7 453 __IO uint32_t DIR;
<> 144:ef7eb2e8f9f7 454 uint32_t RESERVED0[3];
<> 144:ef7eb2e8f9f7 455 __IO uint32_t MASK;
<> 144:ef7eb2e8f9f7 456 __IO uint32_t PIN;
<> 144:ef7eb2e8f9f7 457 __IO uint32_t SET;
<> 144:ef7eb2e8f9f7 458 __O uint32_t CLR;
<> 144:ef7eb2e8f9f7 459 } LPC_GPIO_TypeDef;
<> 144:ef7eb2e8f9f7 460
<> 144:ef7eb2e8f9f7 461 typedef struct
<> 144:ef7eb2e8f9f7 462 {
<> 144:ef7eb2e8f9f7 463 __I uint32_t IntStatus;
<> 144:ef7eb2e8f9f7 464 __I uint32_t IO0IntStatR;
<> 144:ef7eb2e8f9f7 465 __I uint32_t IO0IntStatF;
<> 144:ef7eb2e8f9f7 466 __O uint32_t IO0IntClr;
<> 144:ef7eb2e8f9f7 467 __IO uint32_t IO0IntEnR;
<> 144:ef7eb2e8f9f7 468 __IO uint32_t IO0IntEnF;
<> 144:ef7eb2e8f9f7 469 uint32_t RESERVED0[3];
<> 144:ef7eb2e8f9f7 470 __I uint32_t IO2IntStatR;
<> 144:ef7eb2e8f9f7 471 __I uint32_t IO2IntStatF;
<> 144:ef7eb2e8f9f7 472 __O uint32_t IO2IntClr;
<> 144:ef7eb2e8f9f7 473 __IO uint32_t IO2IntEnR;
<> 144:ef7eb2e8f9f7 474 __IO uint32_t IO2IntEnF;
<> 144:ef7eb2e8f9f7 475 } LPC_GPIOINT_TypeDef;
<> 144:ef7eb2e8f9f7 476
<> 144:ef7eb2e8f9f7 477 /*------------- External Memory Controller (EMC) -----------------------------*/
<> 144:ef7eb2e8f9f7 478 typedef struct
<> 144:ef7eb2e8f9f7 479 {
<> 144:ef7eb2e8f9f7 480 __IO uint32_t Control;
<> 144:ef7eb2e8f9f7 481 __I uint32_t Status;
<> 144:ef7eb2e8f9f7 482 __IO uint32_t Config;
<> 144:ef7eb2e8f9f7 483 uint32_t RESERVED0[5];
<> 144:ef7eb2e8f9f7 484 __IO uint32_t DynamicControl;
<> 144:ef7eb2e8f9f7 485 __IO uint32_t DynamicRefresh;
<> 144:ef7eb2e8f9f7 486 __IO uint32_t DynamicReadConfig;
<> 144:ef7eb2e8f9f7 487 uint32_t RESERVED1[1];
<> 144:ef7eb2e8f9f7 488 __IO uint32_t DynamicRP;
<> 144:ef7eb2e8f9f7 489 __IO uint32_t DynamicRAS;
<> 144:ef7eb2e8f9f7 490 __IO uint32_t DynamicSREX;
<> 144:ef7eb2e8f9f7 491 __IO uint32_t DynamicAPR;
<> 144:ef7eb2e8f9f7 492 __IO uint32_t DynamicDAL;
<> 144:ef7eb2e8f9f7 493 __IO uint32_t DynamicWR;
<> 144:ef7eb2e8f9f7 494 __IO uint32_t DynamicRC;
<> 144:ef7eb2e8f9f7 495 __IO uint32_t DynamicRFC;
<> 144:ef7eb2e8f9f7 496 __IO uint32_t DynamicXSR;
<> 144:ef7eb2e8f9f7 497 __IO uint32_t DynamicRRD;
<> 144:ef7eb2e8f9f7 498 __IO uint32_t DynamicMRD;
<> 144:ef7eb2e8f9f7 499 uint32_t RESERVED2[9];
<> 144:ef7eb2e8f9f7 500 __IO uint32_t StaticExtendedWait;
<> 144:ef7eb2e8f9f7 501 uint32_t RESERVED3[31];
<> 144:ef7eb2e8f9f7 502 __IO uint32_t DynamicConfig0;
<> 144:ef7eb2e8f9f7 503 __IO uint32_t DynamicRasCas0;
<> 144:ef7eb2e8f9f7 504 uint32_t RESERVED4[6];
<> 144:ef7eb2e8f9f7 505 __IO uint32_t DynamicConfig1;
<> 144:ef7eb2e8f9f7 506 __IO uint32_t DynamicRasCas1;
<> 144:ef7eb2e8f9f7 507 uint32_t RESERVED5[6];
<> 144:ef7eb2e8f9f7 508 __IO uint32_t DynamicConfig2;
<> 144:ef7eb2e8f9f7 509 __IO uint32_t DynamicRasCas2;
<> 144:ef7eb2e8f9f7 510 uint32_t RESERVED6[6];
<> 144:ef7eb2e8f9f7 511 __IO uint32_t DynamicConfig3;
<> 144:ef7eb2e8f9f7 512 __IO uint32_t DynamicRasCas3;
<> 144:ef7eb2e8f9f7 513 uint32_t RESERVED7[38];
<> 144:ef7eb2e8f9f7 514 __IO uint32_t StaticConfig0;
<> 144:ef7eb2e8f9f7 515 __IO uint32_t StaticWaitWen0;
<> 144:ef7eb2e8f9f7 516 __IO uint32_t StaticWaitOen0;
<> 144:ef7eb2e8f9f7 517 __IO uint32_t StaticWaitRd0;
<> 144:ef7eb2e8f9f7 518 __IO uint32_t StaticWaitPage0;
<> 144:ef7eb2e8f9f7 519 __IO uint32_t StaticWaitWr0;
<> 144:ef7eb2e8f9f7 520 __IO uint32_t StaticWaitTurn0;
<> 144:ef7eb2e8f9f7 521 uint32_t RESERVED8[1];
<> 144:ef7eb2e8f9f7 522 __IO uint32_t StaticConfig1;
<> 144:ef7eb2e8f9f7 523 __IO uint32_t StaticWaitWen1;
<> 144:ef7eb2e8f9f7 524 __IO uint32_t StaticWaitOen1;
<> 144:ef7eb2e8f9f7 525 __IO uint32_t StaticWaitRd1;
<> 144:ef7eb2e8f9f7 526 __IO uint32_t StaticWaitPage1;
<> 144:ef7eb2e8f9f7 527 __IO uint32_t StaticWaitWr1;
<> 144:ef7eb2e8f9f7 528 __IO uint32_t StaticWaitTurn1;
<> 144:ef7eb2e8f9f7 529 uint32_t RESERVED9[1];
<> 144:ef7eb2e8f9f7 530 __IO uint32_t StaticConfig2;
<> 144:ef7eb2e8f9f7 531 __IO uint32_t StaticWaitWen2;
<> 144:ef7eb2e8f9f7 532 __IO uint32_t StaticWaitOen2;
<> 144:ef7eb2e8f9f7 533 __IO uint32_t StaticWaitRd2;
<> 144:ef7eb2e8f9f7 534 __IO uint32_t StaticWaitPage2;
<> 144:ef7eb2e8f9f7 535 __IO uint32_t StaticWaitWr2;
<> 144:ef7eb2e8f9f7 536 __IO uint32_t StaticWaitTurn2;
<> 144:ef7eb2e8f9f7 537 uint32_t RESERVED10[1];
<> 144:ef7eb2e8f9f7 538 __IO uint32_t StaticConfig3;
<> 144:ef7eb2e8f9f7 539 __IO uint32_t StaticWaitWen3;
<> 144:ef7eb2e8f9f7 540 __IO uint32_t StaticWaitOen3;
<> 144:ef7eb2e8f9f7 541 __IO uint32_t StaticWaitRd3;
<> 144:ef7eb2e8f9f7 542 __IO uint32_t StaticWaitPage3;
<> 144:ef7eb2e8f9f7 543 __IO uint32_t StaticWaitWr3;
<> 144:ef7eb2e8f9f7 544 __IO uint32_t StaticWaitTurn3;
<> 144:ef7eb2e8f9f7 545 } LPC_EMC_TypeDef;
<> 144:ef7eb2e8f9f7 546
<> 144:ef7eb2e8f9f7 547 /*------------- Watchdog Timer (WDT) -----------------------------------------*/
<> 144:ef7eb2e8f9f7 548 typedef struct
<> 144:ef7eb2e8f9f7 549 {
<> 144:ef7eb2e8f9f7 550 __IO uint8_t MOD;
<> 144:ef7eb2e8f9f7 551 uint8_t RESERVED0[3];
<> 144:ef7eb2e8f9f7 552 __IO uint32_t TC;
<> 144:ef7eb2e8f9f7 553 __O uint8_t FEED;
<> 144:ef7eb2e8f9f7 554 uint8_t RESERVED1[3];
<> 144:ef7eb2e8f9f7 555 __I uint32_t TV;
<> 144:ef7eb2e8f9f7 556 uint32_t RESERVED2;
<> 144:ef7eb2e8f9f7 557 __IO uint32_t WARNINT;
<> 144:ef7eb2e8f9f7 558 __IO uint32_t WINDOW;
<> 144:ef7eb2e8f9f7 559 } LPC_WDT_TypeDef;
<> 144:ef7eb2e8f9f7 560
<> 144:ef7eb2e8f9f7 561 /*------------- Timer (TIM) --------------------------------------------------*/
<> 144:ef7eb2e8f9f7 562 typedef struct
<> 144:ef7eb2e8f9f7 563 {
<> 144:ef7eb2e8f9f7 564 __IO uint32_t IR; /*!< Offset: 0x000 Interrupt Register (R/W) */
<> 144:ef7eb2e8f9f7 565 __IO uint32_t TCR; /*!< Offset: 0x004 Timer Control Register (R/W) */
<> 144:ef7eb2e8f9f7 566 __IO uint32_t TC; /*!< Offset: 0x008 Timer Counter Register (R/W) */
<> 144:ef7eb2e8f9f7 567 __IO uint32_t PR; /*!< Offset: 0x00C Prescale Register (R/W) */
<> 144:ef7eb2e8f9f7 568 __IO uint32_t PC; /*!< Offset: 0x010 Prescale Counter Register (R/W) */
<> 144:ef7eb2e8f9f7 569 __IO uint32_t MCR; /*!< Offset: 0x014 Match Control Register (R/W) */
<> 144:ef7eb2e8f9f7 570 __IO uint32_t MR0; /*!< Offset: 0x018 Match Register 0 (R/W) */
<> 144:ef7eb2e8f9f7 571 __IO uint32_t MR1; /*!< Offset: 0x01C Match Register 1 (R/W) */
<> 144:ef7eb2e8f9f7 572 __IO uint32_t MR2; /*!< Offset: 0x020 Match Register 2 (R/W) */
<> 144:ef7eb2e8f9f7 573 __IO uint32_t MR3; /*!< Offset: 0x024 Match Register 3 (R/W) */
<> 144:ef7eb2e8f9f7 574 __IO uint32_t CCR; /*!< Offset: 0x028 Capture Control Register (R/W) */
<> 144:ef7eb2e8f9f7 575 __I uint32_t CR0; /*!< Offset: 0x02C Capture Register 0 (R/ ) */
<> 144:ef7eb2e8f9f7 576 __I uint32_t CR1; /*!< Offset: 0x030 Capture Register 1 (R/ ) */
<> 144:ef7eb2e8f9f7 577 uint32_t RESERVED0[2];
<> 144:ef7eb2e8f9f7 578 __IO uint32_t EMR; /*!< Offset: 0x03C External Match Register (R/W) */
<> 144:ef7eb2e8f9f7 579 uint32_t RESERVED1[12];
<> 144:ef7eb2e8f9f7 580 __IO uint32_t CTCR; /*!< Offset: 0x070 Count Control Register (R/W) */
<> 144:ef7eb2e8f9f7 581 } LPC_TIM_TypeDef;
<> 144:ef7eb2e8f9f7 582
<> 144:ef7eb2e8f9f7 583
<> 144:ef7eb2e8f9f7 584 /*------------- Pulse-Width Modulation (PWM) ---------------------------------*/
<> 144:ef7eb2e8f9f7 585 typedef struct
<> 144:ef7eb2e8f9f7 586 {
<> 144:ef7eb2e8f9f7 587 __IO uint32_t IR; /*!< Offset: 0x000 Interrupt Register (R/W) */
<> 144:ef7eb2e8f9f7 588 __IO uint32_t TCR; /*!< Offset: 0x004 Timer Control Register (R/W) */
<> 144:ef7eb2e8f9f7 589 __IO uint32_t TC; /*!< Offset: 0x008 Timer Counter Register (R/W) */
<> 144:ef7eb2e8f9f7 590 __IO uint32_t PR; /*!< Offset: 0x00C Prescale Register (R/W) */
<> 144:ef7eb2e8f9f7 591 __IO uint32_t PC; /*!< Offset: 0x010 Prescale Counter Register (R/W) */
<> 144:ef7eb2e8f9f7 592 __IO uint32_t MCR; /*!< Offset: 0x014 Match Control Register (R/W) */
<> 144:ef7eb2e8f9f7 593 __IO uint32_t MR0; /*!< Offset: 0x018 Match Register 0 (R/W) */
<> 144:ef7eb2e8f9f7 594 __IO uint32_t MR1; /*!< Offset: 0x01C Match Register 1 (R/W) */
<> 144:ef7eb2e8f9f7 595 __IO uint32_t MR2; /*!< Offset: 0x020 Match Register 2 (R/W) */
<> 144:ef7eb2e8f9f7 596 __IO uint32_t MR3; /*!< Offset: 0x024 Match Register 3 (R/W) */
<> 144:ef7eb2e8f9f7 597 __IO uint32_t CCR; /*!< Offset: 0x028 Capture Control Register (R/W) */
<> 144:ef7eb2e8f9f7 598 __I uint32_t CR0; /*!< Offset: 0x02C Capture Register 0 (R/ ) */
<> 144:ef7eb2e8f9f7 599 __I uint32_t CR1; /*!< Offset: 0x030 Capture Register 1 (R/ ) */
<> 144:ef7eb2e8f9f7 600 __I uint32_t CR2; /*!< Offset: 0x034 Capture Register 2 (R/ ) */
<> 144:ef7eb2e8f9f7 601 __I uint32_t CR3; /*!< Offset: 0x038 Capture Register 3 (R/ ) */
<> 144:ef7eb2e8f9f7 602 uint32_t RESERVED0;
<> 144:ef7eb2e8f9f7 603 __IO uint32_t MR4; /*!< Offset: 0x040 Match Register 4 (R/W) */
<> 144:ef7eb2e8f9f7 604 __IO uint32_t MR5; /*!< Offset: 0x044 Match Register 5 (R/W) */
<> 144:ef7eb2e8f9f7 605 __IO uint32_t MR6; /*!< Offset: 0x048 Match Register 6 (R/W) */
<> 144:ef7eb2e8f9f7 606 __IO uint32_t PCR; /*!< Offset: 0x04C PWM Control Register (R/W) */
<> 144:ef7eb2e8f9f7 607 __IO uint32_t LER; /*!< Offset: 0x050 Load Enable Register (R/W) */
<> 144:ef7eb2e8f9f7 608 uint32_t RESERVED1[7];
<> 144:ef7eb2e8f9f7 609 __IO uint32_t CTCR; /*!< Offset: 0x070 Counter Control Register (R/W) */
<> 144:ef7eb2e8f9f7 610 } LPC_PWM_TypeDef;
<> 144:ef7eb2e8f9f7 611
<> 144:ef7eb2e8f9f7 612 /*------------- Universal Asynchronous Receiver Transmitter (UARTx) -----------*/
<> 144:ef7eb2e8f9f7 613 /* There are three types of UARTs on the chip:
<> 144:ef7eb2e8f9f7 614 (1) UART0,UART2, and UART3 are the standard UART.
<> 144:ef7eb2e8f9f7 615 (2) UART1 is the standard with modem capability.
<> 144:ef7eb2e8f9f7 616 (3) USART(UART4) is the sync/async UART with smart card capability.
<> 144:ef7eb2e8f9f7 617 More details can be found on the Users Manual. */
<> 144:ef7eb2e8f9f7 618
<> 144:ef7eb2e8f9f7 619 #if 0
<> 144:ef7eb2e8f9f7 620 typedef struct
<> 144:ef7eb2e8f9f7 621 {
<> 144:ef7eb2e8f9f7 622 union {
<> 144:ef7eb2e8f9f7 623 __I uint8_t RBR;
<> 144:ef7eb2e8f9f7 624 __O uint8_t THR;
<> 144:ef7eb2e8f9f7 625 __IO uint8_t DLL;
<> 144:ef7eb2e8f9f7 626 uint32_t RESERVED0;
<> 144:ef7eb2e8f9f7 627 };
<> 144:ef7eb2e8f9f7 628 union {
<> 144:ef7eb2e8f9f7 629 __IO uint8_t DLM;
<> 144:ef7eb2e8f9f7 630 __IO uint32_t IER;
<> 144:ef7eb2e8f9f7 631 };
<> 144:ef7eb2e8f9f7 632 union {
<> 144:ef7eb2e8f9f7 633 __I uint32_t IIR;
<> 144:ef7eb2e8f9f7 634 __O uint8_t FCR;
<> 144:ef7eb2e8f9f7 635 };
<> 144:ef7eb2e8f9f7 636 __IO uint8_t LCR;
<> 144:ef7eb2e8f9f7 637 uint8_t RESERVED1[7];
<> 144:ef7eb2e8f9f7 638 __I uint8_t LSR;
<> 144:ef7eb2e8f9f7 639 uint8_t RESERVED2[7];
<> 144:ef7eb2e8f9f7 640 __IO uint8_t SCR;
<> 144:ef7eb2e8f9f7 641 uint8_t RESERVED3[3];
<> 144:ef7eb2e8f9f7 642 __IO uint32_t ACR;
<> 144:ef7eb2e8f9f7 643 __IO uint8_t ICR;
<> 144:ef7eb2e8f9f7 644 uint8_t RESERVED4[3];
<> 144:ef7eb2e8f9f7 645 __IO uint8_t FDR;
<> 144:ef7eb2e8f9f7 646 uint8_t RESERVED5[7];
<> 144:ef7eb2e8f9f7 647 __IO uint8_t TER;
<> 144:ef7eb2e8f9f7 648 uint8_t RESERVED6[39];
<> 144:ef7eb2e8f9f7 649 __I uint8_t FIFOLVL;
<> 144:ef7eb2e8f9f7 650 } LPC_UART_TypeDef;
<> 144:ef7eb2e8f9f7 651 #else
<> 144:ef7eb2e8f9f7 652 typedef struct
<> 144:ef7eb2e8f9f7 653 {
<> 144:ef7eb2e8f9f7 654 union
<> 144:ef7eb2e8f9f7 655 {
<> 144:ef7eb2e8f9f7 656 __I uint8_t RBR;
<> 144:ef7eb2e8f9f7 657 __O uint8_t THR;
<> 144:ef7eb2e8f9f7 658 __IO uint8_t DLL;
<> 144:ef7eb2e8f9f7 659 uint32_t RESERVED0;
<> 144:ef7eb2e8f9f7 660 };
<> 144:ef7eb2e8f9f7 661 union
<> 144:ef7eb2e8f9f7 662 {
<> 144:ef7eb2e8f9f7 663 __IO uint8_t DLM;
<> 144:ef7eb2e8f9f7 664 __IO uint32_t IER;
<> 144:ef7eb2e8f9f7 665 };
<> 144:ef7eb2e8f9f7 666 union
<> 144:ef7eb2e8f9f7 667 {
<> 144:ef7eb2e8f9f7 668 __I uint32_t IIR;
<> 144:ef7eb2e8f9f7 669 __O uint8_t FCR;
<> 144:ef7eb2e8f9f7 670 };
<> 144:ef7eb2e8f9f7 671 __IO uint8_t LCR;
<> 144:ef7eb2e8f9f7 672 uint8_t RESERVED1[7];//Reserved
<> 144:ef7eb2e8f9f7 673 __I uint8_t LSR;
<> 144:ef7eb2e8f9f7 674 uint8_t RESERVED2[7];//Reserved
<> 144:ef7eb2e8f9f7 675 __IO uint8_t SCR;
<> 144:ef7eb2e8f9f7 676 uint8_t RESERVED3[3];//Reserved
<> 144:ef7eb2e8f9f7 677 __IO uint32_t ACR;
<> 144:ef7eb2e8f9f7 678 __IO uint8_t ICR;
<> 144:ef7eb2e8f9f7 679 uint8_t RESERVED4[3];//Reserved
<> 144:ef7eb2e8f9f7 680 __IO uint8_t FDR;
<> 144:ef7eb2e8f9f7 681 uint8_t RESERVED5[7];//Reserved
<> 144:ef7eb2e8f9f7 682 __IO uint8_t TER;
<> 144:ef7eb2e8f9f7 683 uint8_t RESERVED8[27];//Reserved
<> 144:ef7eb2e8f9f7 684 __IO uint8_t RS485CTRL;
<> 144:ef7eb2e8f9f7 685 uint8_t RESERVED9[3];//Reserved
<> 144:ef7eb2e8f9f7 686 __IO uint8_t ADRMATCH;
<> 144:ef7eb2e8f9f7 687 uint8_t RESERVED10[3];//Reserved
<> 144:ef7eb2e8f9f7 688 __IO uint8_t RS485DLY;
<> 144:ef7eb2e8f9f7 689 uint8_t RESERVED11[3];//Reserved
<> 144:ef7eb2e8f9f7 690 __I uint8_t FIFOLVL;
<> 144:ef7eb2e8f9f7 691 }LPC_UART_TypeDef;
<> 144:ef7eb2e8f9f7 692 #endif
<> 144:ef7eb2e8f9f7 693
<> 144:ef7eb2e8f9f7 694
<> 144:ef7eb2e8f9f7 695 typedef struct
<> 144:ef7eb2e8f9f7 696 {
<> 144:ef7eb2e8f9f7 697 union {
<> 144:ef7eb2e8f9f7 698 __I uint8_t RBR;
<> 144:ef7eb2e8f9f7 699 __O uint8_t THR;
<> 144:ef7eb2e8f9f7 700 __IO uint8_t DLL;
<> 144:ef7eb2e8f9f7 701 uint32_t RESERVED0;
<> 144:ef7eb2e8f9f7 702 };
<> 144:ef7eb2e8f9f7 703 union {
<> 144:ef7eb2e8f9f7 704 __IO uint8_t DLM;
<> 144:ef7eb2e8f9f7 705 __IO uint32_t IER;
<> 144:ef7eb2e8f9f7 706 };
<> 144:ef7eb2e8f9f7 707 union {
<> 144:ef7eb2e8f9f7 708 __I uint32_t IIR;
<> 144:ef7eb2e8f9f7 709 __O uint8_t FCR;
<> 144:ef7eb2e8f9f7 710 };
<> 144:ef7eb2e8f9f7 711 __IO uint8_t LCR;
<> 144:ef7eb2e8f9f7 712 uint8_t RESERVED1[3];
<> 144:ef7eb2e8f9f7 713 __IO uint8_t MCR;
<> 144:ef7eb2e8f9f7 714 uint8_t RESERVED2[3];
<> 144:ef7eb2e8f9f7 715 __I uint8_t LSR;
<> 144:ef7eb2e8f9f7 716 uint8_t RESERVED3[3];
<> 144:ef7eb2e8f9f7 717 __I uint8_t MSR;
<> 144:ef7eb2e8f9f7 718 uint8_t RESERVED4[3];
<> 144:ef7eb2e8f9f7 719 __IO uint8_t SCR;
<> 144:ef7eb2e8f9f7 720 uint8_t RESERVED5[3];
<> 144:ef7eb2e8f9f7 721 __IO uint32_t ACR;
<> 144:ef7eb2e8f9f7 722 uint32_t RESERVED6;
<> 144:ef7eb2e8f9f7 723 __IO uint32_t FDR;
<> 144:ef7eb2e8f9f7 724 uint32_t RESERVED7;
<> 144:ef7eb2e8f9f7 725 __IO uint8_t TER;
<> 144:ef7eb2e8f9f7 726 uint8_t RESERVED8[27];
<> 144:ef7eb2e8f9f7 727 __IO uint8_t RS485CTRL;
<> 144:ef7eb2e8f9f7 728 uint8_t RESERVED9[3];
<> 144:ef7eb2e8f9f7 729 __IO uint8_t ADRMATCH;
<> 144:ef7eb2e8f9f7 730 uint8_t RESERVED10[3];
<> 144:ef7eb2e8f9f7 731 __IO uint8_t RS485DLY;
<> 144:ef7eb2e8f9f7 732 uint8_t RESERVED11[3];
<> 144:ef7eb2e8f9f7 733 __I uint8_t FIFOLVL;
<> 144:ef7eb2e8f9f7 734 } LPC_UART1_TypeDef;
<> 144:ef7eb2e8f9f7 735
<> 144:ef7eb2e8f9f7 736 typedef struct
<> 144:ef7eb2e8f9f7 737 {
<> 144:ef7eb2e8f9f7 738 union {
<> 144:ef7eb2e8f9f7 739 __I uint32_t RBR; /*!< Offset: 0x000 Receiver Buffer Register (R/ ) */
<> 144:ef7eb2e8f9f7 740 __O uint32_t THR; /*!< Offset: 0x000 Transmit Holding Register ( /W) */
<> 144:ef7eb2e8f9f7 741 __IO uint32_t DLL; /*!< Offset: 0x000 Divisor Latch LSB (R/W) */
<> 144:ef7eb2e8f9f7 742 };
<> 144:ef7eb2e8f9f7 743 union {
<> 144:ef7eb2e8f9f7 744 __IO uint32_t DLM; /*!< Offset: 0x004 Divisor Latch MSB (R/W) */
<> 144:ef7eb2e8f9f7 745 __IO uint32_t IER; /*!< Offset: 0x000 Interrupt Enable Register (R/W) */
<> 144:ef7eb2e8f9f7 746 };
<> 144:ef7eb2e8f9f7 747 union {
<> 144:ef7eb2e8f9f7 748 __I uint32_t IIR; /*!< Offset: 0x008 Interrupt ID Register (R/ ) */
<> 144:ef7eb2e8f9f7 749 __O uint32_t FCR; /*!< Offset: 0x008 FIFO Control Register ( /W) */
<> 144:ef7eb2e8f9f7 750 };
<> 144:ef7eb2e8f9f7 751 __IO uint32_t LCR; /*!< Offset: 0x00C Line Control Register (R/W) */
<> 144:ef7eb2e8f9f7 752 __IO uint32_t MCR; /*!< Offset: 0x010 Modem control Register (R/W) */
<> 144:ef7eb2e8f9f7 753 __I uint32_t LSR; /*!< Offset: 0x014 Line Status Register (R/ ) */
<> 144:ef7eb2e8f9f7 754 __I uint32_t MSR; /*!< Offset: 0x018 Modem status Register (R/ ) */
<> 144:ef7eb2e8f9f7 755 __IO uint32_t SCR; /*!< Offset: 0x01C Scratch Pad Register (R/W) */
<> 144:ef7eb2e8f9f7 756 __IO uint32_t ACR; /*!< Offset: 0x020 Auto-baud Control Register (R/W) */
<> 144:ef7eb2e8f9f7 757 __IO uint32_t ICR; /*!< Offset: 0x024 irDA Control Register (R/W) */
<> 144:ef7eb2e8f9f7 758 __IO uint32_t FDR; /*!< Offset: 0x028 Fractional Divider Register (R/W) */
<> 144:ef7eb2e8f9f7 759 __IO uint32_t OSR; /*!< Offset: 0x02C Over sampling Register (R/W) */
<> 144:ef7eb2e8f9f7 760 __O uint32_t POP; /*!< Offset: 0x030 NHP Pop Register (W) */
<> 144:ef7eb2e8f9f7 761 __IO uint32_t MODE; /*!< Offset: 0x034 NHP Mode selection Register (W) */
<> 144:ef7eb2e8f9f7 762 uint32_t RESERVED0[2];
<> 144:ef7eb2e8f9f7 763 __IO uint32_t HDEN; /*!< Offset: 0x040 Half duplex Enable Register (R/W) */
<> 144:ef7eb2e8f9f7 764 uint32_t RESERVED1;
<> 144:ef7eb2e8f9f7 765 __IO uint32_t SCI_CTRL; /*!< Offset: 0x048 Smart card Interface Control Register (R/W) */
<> 144:ef7eb2e8f9f7 766 __IO uint32_t RS485CTRL; /*!< Offset: 0x04C RS-485/EIA-485 Control Register (R/W) */
<> 144:ef7eb2e8f9f7 767 __IO uint32_t ADRMATCH; /*!< Offset: 0x050 RS-485/EIA-485 address match Register (R/W) */
<> 144:ef7eb2e8f9f7 768 __IO uint32_t RS485DLY; /*!< Offset: 0x054 RS-485/EIA-485 direction control delay Register (R/W) */
<> 144:ef7eb2e8f9f7 769 __IO uint32_t SYNCCTRL; /*!< Offset: 0x058 Synchronous Mode Control Register (R/W ) */
<> 144:ef7eb2e8f9f7 770 __IO uint32_t TER; /*!< Offset: 0x05C Transmit Enable Register (R/W) */
<> 144:ef7eb2e8f9f7 771 uint32_t RESERVED2[989];
<> 144:ef7eb2e8f9f7 772 __I uint32_t CFG; /*!< Offset: 0xFD4 Configuration Register (R) */
<> 144:ef7eb2e8f9f7 773 __O uint32_t INTCE; /*!< Offset: 0xFD8 Interrupt Clear Enable Register (W) */
<> 144:ef7eb2e8f9f7 774 __O uint32_t INTSE; /*!< Offset: 0xFDC Interrupt Set Enable Register (W) */
<> 144:ef7eb2e8f9f7 775 __I uint32_t INTS; /*!< Offset: 0xFE0 Interrupt Status Register (R) */
<> 144:ef7eb2e8f9f7 776 __I uint32_t INTE; /*!< Offset: 0xFE4 Interrupt Enable Register (R) */
<> 144:ef7eb2e8f9f7 777 __O uint32_t INTCS; /*!< Offset: 0xFE8 Interrupt Clear Status Register (W) */
<> 144:ef7eb2e8f9f7 778 __O uint32_t INTSS; /*!< Offset: 0xFEC Interrupt Set Status Register (W) */
<> 144:ef7eb2e8f9f7 779 uint32_t RESERVED3[3];
<> 144:ef7eb2e8f9f7 780 __I uint32_t MID; /*!< Offset: 0xFFC Module Identification Register (R) */
<> 144:ef7eb2e8f9f7 781 } LPC_UART4_TypeDef;
<> 144:ef7eb2e8f9f7 782 /*------------- Inter-Integrated Circuit (I2C) -------------------------------*/
<> 144:ef7eb2e8f9f7 783 typedef struct
<> 144:ef7eb2e8f9f7 784 {
<> 144:ef7eb2e8f9f7 785 __IO uint32_t CONSET; /*!< Offset: 0x000 I2C Control Set Register (R/W) */
<> 144:ef7eb2e8f9f7 786 __I uint32_t STAT; /*!< Offset: 0x004 I2C Status Register (R/ ) */
<> 144:ef7eb2e8f9f7 787 __IO uint32_t DAT; /*!< Offset: 0x008 I2C Data Register (R/W) */
<> 144:ef7eb2e8f9f7 788 __IO uint32_t ADR0; /*!< Offset: 0x00C I2C Slave Address Register 0 (R/W) */
<> 144:ef7eb2e8f9f7 789 __IO uint32_t SCLH; /*!< Offset: 0x010 SCH Duty Cycle Register High Half Word (R/W) */
<> 144:ef7eb2e8f9f7 790 __IO uint32_t SCLL; /*!< Offset: 0x014 SCL Duty Cycle Register Low Half Word (R/W) */
<> 144:ef7eb2e8f9f7 791 __O uint32_t CONCLR; /*!< Offset: 0x018 I2C Control Clear Register ( /W) */
<> 144:ef7eb2e8f9f7 792 __IO uint32_t MMCTRL; /*!< Offset: 0x01C Monitor mode control register (R/W) */
<> 144:ef7eb2e8f9f7 793 __IO uint32_t ADR1; /*!< Offset: 0x020 I2C Slave Address Register 1 (R/W) */
<> 144:ef7eb2e8f9f7 794 __IO uint32_t ADR2; /*!< Offset: 0x024 I2C Slave Address Register 2 (R/W) */
<> 144:ef7eb2e8f9f7 795 __IO uint32_t ADR3; /*!< Offset: 0x028 I2C Slave Address Register 3 (R/W) */
<> 144:ef7eb2e8f9f7 796 __I uint32_t DATA_BUFFER; /*!< Offset: 0x02C Data buffer register ( /W) */
<> 144:ef7eb2e8f9f7 797 __IO uint32_t MASK0; /*!< Offset: 0x030 I2C Slave address mask register 0 (R/W) */
<> 144:ef7eb2e8f9f7 798 __IO uint32_t MASK1; /*!< Offset: 0x034 I2C Slave address mask register 1 (R/W) */
<> 144:ef7eb2e8f9f7 799 __IO uint32_t MASK2; /*!< Offset: 0x038 I2C Slave address mask register 2 (R/W) */
<> 144:ef7eb2e8f9f7 800 __IO uint32_t MASK3; /*!< Offset: 0x03C I2C Slave address mask register 3 (R/W) */
<> 144:ef7eb2e8f9f7 801 } LPC_I2C_TypeDef;
<> 144:ef7eb2e8f9f7 802
<> 144:ef7eb2e8f9f7 803 /*------------- Real-Time Clock (RTC) ----------------------------------------*/
<> 144:ef7eb2e8f9f7 804 typedef struct
<> 144:ef7eb2e8f9f7 805 {
<> 144:ef7eb2e8f9f7 806 __IO uint8_t ILR;
<> 144:ef7eb2e8f9f7 807 uint8_t RESERVED0[7];
<> 144:ef7eb2e8f9f7 808 __IO uint8_t CCR;
<> 144:ef7eb2e8f9f7 809 uint8_t RESERVED1[3];
<> 144:ef7eb2e8f9f7 810 __IO uint8_t CIIR;
<> 144:ef7eb2e8f9f7 811 uint8_t RESERVED2[3];
<> 144:ef7eb2e8f9f7 812 __IO uint8_t AMR;
<> 144:ef7eb2e8f9f7 813 uint8_t RESERVED3[3];
<> 144:ef7eb2e8f9f7 814 __I uint32_t CTIME0;
<> 144:ef7eb2e8f9f7 815 __I uint32_t CTIME1;
<> 144:ef7eb2e8f9f7 816 __I uint32_t CTIME2;
<> 144:ef7eb2e8f9f7 817 __IO uint8_t SEC;
<> 144:ef7eb2e8f9f7 818 uint8_t RESERVED4[3];
<> 144:ef7eb2e8f9f7 819 __IO uint8_t MIN;
<> 144:ef7eb2e8f9f7 820 uint8_t RESERVED5[3];
<> 144:ef7eb2e8f9f7 821 __IO uint8_t HOUR;
<> 144:ef7eb2e8f9f7 822 uint8_t RESERVED6[3];
<> 144:ef7eb2e8f9f7 823 __IO uint8_t DOM;
<> 144:ef7eb2e8f9f7 824 uint8_t RESERVED7[3];
<> 144:ef7eb2e8f9f7 825 __IO uint8_t DOW;
<> 144:ef7eb2e8f9f7 826 uint8_t RESERVED8[3];
<> 144:ef7eb2e8f9f7 827 __IO uint16_t DOY;
<> 144:ef7eb2e8f9f7 828 uint16_t RESERVED9;
<> 144:ef7eb2e8f9f7 829 __IO uint8_t MONTH;
<> 144:ef7eb2e8f9f7 830 uint8_t RESERVED10[3];
<> 144:ef7eb2e8f9f7 831 __IO uint16_t YEAR;
<> 144:ef7eb2e8f9f7 832 uint16_t RESERVED11;
<> 144:ef7eb2e8f9f7 833 __IO uint32_t CALIBRATION;
<> 144:ef7eb2e8f9f7 834 __IO uint32_t GPREG0;
<> 144:ef7eb2e8f9f7 835 __IO uint32_t GPREG1;
<> 144:ef7eb2e8f9f7 836 __IO uint32_t GPREG2;
<> 144:ef7eb2e8f9f7 837 __IO uint32_t GPREG3;
<> 144:ef7eb2e8f9f7 838 __IO uint32_t GPREG4;
<> 144:ef7eb2e8f9f7 839 __IO uint8_t RTC_AUXEN;
<> 144:ef7eb2e8f9f7 840 uint8_t RESERVED12[3];
<> 144:ef7eb2e8f9f7 841 __IO uint8_t RTC_AUX;
<> 144:ef7eb2e8f9f7 842 uint8_t RESERVED13[3];
<> 144:ef7eb2e8f9f7 843 __IO uint8_t ALSEC;
<> 144:ef7eb2e8f9f7 844 uint8_t RESERVED14[3];
<> 144:ef7eb2e8f9f7 845 __IO uint8_t ALMIN;
<> 144:ef7eb2e8f9f7 846 uint8_t RESERVED15[3];
<> 144:ef7eb2e8f9f7 847 __IO uint8_t ALHOUR;
<> 144:ef7eb2e8f9f7 848 uint8_t RESERVED16[3];
<> 144:ef7eb2e8f9f7 849 __IO uint8_t ALDOM;
<> 144:ef7eb2e8f9f7 850 uint8_t RESERVED17[3];
<> 144:ef7eb2e8f9f7 851 __IO uint8_t ALDOW;
<> 144:ef7eb2e8f9f7 852 uint8_t RESERVED18[3];
<> 144:ef7eb2e8f9f7 853 __IO uint16_t ALDOY;
<> 144:ef7eb2e8f9f7 854 uint16_t RESERVED19;
<> 144:ef7eb2e8f9f7 855 __IO uint8_t ALMON;
<> 144:ef7eb2e8f9f7 856 uint8_t RESERVED20[3];
<> 144:ef7eb2e8f9f7 857 __IO uint16_t ALYEAR;
<> 144:ef7eb2e8f9f7 858 uint16_t RESERVED21;
<> 144:ef7eb2e8f9f7 859 __IO uint32_t ERSTATUS;
<> 144:ef7eb2e8f9f7 860 __IO uint32_t ERCONTROL;
<> 144:ef7eb2e8f9f7 861 __IO uint32_t ERCOUNTERS;
<> 144:ef7eb2e8f9f7 862 uint32_t RESERVED22;
<> 144:ef7eb2e8f9f7 863 __IO uint32_t ERFIRSTSTAMP0;
<> 144:ef7eb2e8f9f7 864 __IO uint32_t ERFIRSTSTAMP1;
<> 144:ef7eb2e8f9f7 865 __IO uint32_t ERFIRSTSTAMP2;
<> 144:ef7eb2e8f9f7 866 uint32_t RESERVED23;
<> 144:ef7eb2e8f9f7 867 __IO uint32_t ERLASTSTAMP0;
<> 144:ef7eb2e8f9f7 868 __IO uint32_t ERLASTSTAMP1;
<> 144:ef7eb2e8f9f7 869 __IO uint32_t ERLASTSTAMP2;
<> 144:ef7eb2e8f9f7 870 } LPC_RTC_TypeDef;
<> 144:ef7eb2e8f9f7 871
<> 144:ef7eb2e8f9f7 872
<> 144:ef7eb2e8f9f7 873
<> 144:ef7eb2e8f9f7 874 /*------------- Pin Connect Block (PINCON) -----------------------------------*/
<> 144:ef7eb2e8f9f7 875 typedef struct
<> 144:ef7eb2e8f9f7 876 {
<> 144:ef7eb2e8f9f7 877 __IO uint32_t P0_0; /* 0x000 */
<> 144:ef7eb2e8f9f7 878 __IO uint32_t P0_1;
<> 144:ef7eb2e8f9f7 879 __IO uint32_t P0_2;
<> 144:ef7eb2e8f9f7 880 __IO uint32_t P0_3;
<> 144:ef7eb2e8f9f7 881 __IO uint32_t P0_4;
<> 144:ef7eb2e8f9f7 882 __IO uint32_t P0_5;
<> 144:ef7eb2e8f9f7 883 __IO uint32_t P0_6;
<> 144:ef7eb2e8f9f7 884 __IO uint32_t P0_7;
<> 144:ef7eb2e8f9f7 885
<> 144:ef7eb2e8f9f7 886 __IO uint32_t P0_8; /* 0x020 */
<> 144:ef7eb2e8f9f7 887 __IO uint32_t P0_9;
<> 144:ef7eb2e8f9f7 888 __IO uint32_t P0_10;
<> 144:ef7eb2e8f9f7 889 __IO uint32_t P0_11;
<> 144:ef7eb2e8f9f7 890 __IO uint32_t P0_12;
<> 144:ef7eb2e8f9f7 891 __IO uint32_t P0_13;
<> 144:ef7eb2e8f9f7 892 __IO uint32_t P0_14;
<> 144:ef7eb2e8f9f7 893 __IO uint32_t P0_15;
<> 144:ef7eb2e8f9f7 894
<> 144:ef7eb2e8f9f7 895 __IO uint32_t P0_16; /* 0x040 */
<> 144:ef7eb2e8f9f7 896 __IO uint32_t P0_17;
<> 144:ef7eb2e8f9f7 897 __IO uint32_t P0_18;
<> 144:ef7eb2e8f9f7 898 __IO uint32_t P0_19;
<> 144:ef7eb2e8f9f7 899 __IO uint32_t P0_20;
<> 144:ef7eb2e8f9f7 900 __IO uint32_t P0_21;
<> 144:ef7eb2e8f9f7 901 __IO uint32_t P0_22;
<> 144:ef7eb2e8f9f7 902 __IO uint32_t P0_23;
<> 144:ef7eb2e8f9f7 903
<> 144:ef7eb2e8f9f7 904 __IO uint32_t P0_24; /* 0x060 */
<> 144:ef7eb2e8f9f7 905 __IO uint32_t P0_25;
<> 144:ef7eb2e8f9f7 906 __IO uint32_t P0_26;
<> 144:ef7eb2e8f9f7 907 __IO uint32_t P0_27;
<> 144:ef7eb2e8f9f7 908 __IO uint32_t P0_28;
<> 144:ef7eb2e8f9f7 909 __IO uint32_t P0_29;
<> 144:ef7eb2e8f9f7 910 __IO uint32_t P0_30;
<> 144:ef7eb2e8f9f7 911 __IO uint32_t P0_31;
<> 144:ef7eb2e8f9f7 912
<> 144:ef7eb2e8f9f7 913 __IO uint32_t P1_0; /* 0x080 */
<> 144:ef7eb2e8f9f7 914 __IO uint32_t P1_1;
<> 144:ef7eb2e8f9f7 915 __IO uint32_t P1_2;
<> 144:ef7eb2e8f9f7 916 __IO uint32_t P1_3;
<> 144:ef7eb2e8f9f7 917 __IO uint32_t P1_4;
<> 144:ef7eb2e8f9f7 918 __IO uint32_t P1_5;
<> 144:ef7eb2e8f9f7 919 __IO uint32_t P1_6;
<> 144:ef7eb2e8f9f7 920 __IO uint32_t P1_7;
<> 144:ef7eb2e8f9f7 921
<> 144:ef7eb2e8f9f7 922 __IO uint32_t P1_8; /* 0x0A0 */
<> 144:ef7eb2e8f9f7 923 __IO uint32_t P1_9;
<> 144:ef7eb2e8f9f7 924 __IO uint32_t P1_10;
<> 144:ef7eb2e8f9f7 925 __IO uint32_t P1_11;
<> 144:ef7eb2e8f9f7 926 __IO uint32_t P1_12;
<> 144:ef7eb2e8f9f7 927 __IO uint32_t P1_13;
<> 144:ef7eb2e8f9f7 928 __IO uint32_t P1_14;
<> 144:ef7eb2e8f9f7 929 __IO uint32_t P1_15;
<> 144:ef7eb2e8f9f7 930
<> 144:ef7eb2e8f9f7 931 __IO uint32_t P1_16; /* 0x0C0 */
<> 144:ef7eb2e8f9f7 932 __IO uint32_t P1_17;
<> 144:ef7eb2e8f9f7 933 __IO uint32_t P1_18;
<> 144:ef7eb2e8f9f7 934 __IO uint32_t P1_19;
<> 144:ef7eb2e8f9f7 935 __IO uint32_t P1_20;
<> 144:ef7eb2e8f9f7 936 __IO uint32_t P1_21;
<> 144:ef7eb2e8f9f7 937 __IO uint32_t P1_22;
<> 144:ef7eb2e8f9f7 938 __IO uint32_t P1_23;
<> 144:ef7eb2e8f9f7 939
<> 144:ef7eb2e8f9f7 940 __IO uint32_t P1_24; /* 0x0E0 */
<> 144:ef7eb2e8f9f7 941 __IO uint32_t P1_25;
<> 144:ef7eb2e8f9f7 942 __IO uint32_t P1_26;
<> 144:ef7eb2e8f9f7 943 __IO uint32_t P1_27;
<> 144:ef7eb2e8f9f7 944 __IO uint32_t P1_28;
<> 144:ef7eb2e8f9f7 945 __IO uint32_t P1_29;
<> 144:ef7eb2e8f9f7 946 __IO uint32_t P1_30;
<> 144:ef7eb2e8f9f7 947 __IO uint32_t P1_31;
<> 144:ef7eb2e8f9f7 948
<> 144:ef7eb2e8f9f7 949 __IO uint32_t P2_0; /* 0x100 */
<> 144:ef7eb2e8f9f7 950 __IO uint32_t P2_1;
<> 144:ef7eb2e8f9f7 951 __IO uint32_t P2_2;
<> 144:ef7eb2e8f9f7 952 __IO uint32_t P2_3;
<> 144:ef7eb2e8f9f7 953 __IO uint32_t P2_4;
<> 144:ef7eb2e8f9f7 954 __IO uint32_t P2_5;
<> 144:ef7eb2e8f9f7 955 __IO uint32_t P2_6;
<> 144:ef7eb2e8f9f7 956 __IO uint32_t P2_7;
<> 144:ef7eb2e8f9f7 957
<> 144:ef7eb2e8f9f7 958 __IO uint32_t P2_8; /* 0x120 */
<> 144:ef7eb2e8f9f7 959 __IO uint32_t P2_9;
<> 144:ef7eb2e8f9f7 960 __IO uint32_t P2_10;
<> 144:ef7eb2e8f9f7 961 __IO uint32_t P2_11;
<> 144:ef7eb2e8f9f7 962 __IO uint32_t P2_12;
<> 144:ef7eb2e8f9f7 963 __IO uint32_t P2_13;
<> 144:ef7eb2e8f9f7 964 __IO uint32_t P2_14;
<> 144:ef7eb2e8f9f7 965 __IO uint32_t P2_15;
<> 144:ef7eb2e8f9f7 966
<> 144:ef7eb2e8f9f7 967 __IO uint32_t P2_16; /* 0x140 */
<> 144:ef7eb2e8f9f7 968 __IO uint32_t P2_17;
<> 144:ef7eb2e8f9f7 969 __IO uint32_t P2_18;
<> 144:ef7eb2e8f9f7 970 __IO uint32_t P2_19;
<> 144:ef7eb2e8f9f7 971 __IO uint32_t P2_20;
<> 144:ef7eb2e8f9f7 972 __IO uint32_t P2_21;
<> 144:ef7eb2e8f9f7 973 __IO uint32_t P2_22;
<> 144:ef7eb2e8f9f7 974 __IO uint32_t P2_23;
<> 144:ef7eb2e8f9f7 975
<> 144:ef7eb2e8f9f7 976 __IO uint32_t P2_24; /* 0x160 */
<> 144:ef7eb2e8f9f7 977 __IO uint32_t P2_25;
<> 144:ef7eb2e8f9f7 978 __IO uint32_t P2_26;
<> 144:ef7eb2e8f9f7 979 __IO uint32_t P2_27;
<> 144:ef7eb2e8f9f7 980 __IO uint32_t P2_28;
<> 144:ef7eb2e8f9f7 981 __IO uint32_t P2_29;
<> 144:ef7eb2e8f9f7 982 __IO uint32_t P2_30;
<> 144:ef7eb2e8f9f7 983 __IO uint32_t P2_31;
<> 144:ef7eb2e8f9f7 984
<> 144:ef7eb2e8f9f7 985 __IO uint32_t P3_0; /* 0x180 */
<> 144:ef7eb2e8f9f7 986 __IO uint32_t P3_1;
<> 144:ef7eb2e8f9f7 987 __IO uint32_t P3_2;
<> 144:ef7eb2e8f9f7 988 __IO uint32_t P3_3;
<> 144:ef7eb2e8f9f7 989 __IO uint32_t P3_4;
<> 144:ef7eb2e8f9f7 990 __IO uint32_t P3_5;
<> 144:ef7eb2e8f9f7 991 __IO uint32_t P3_6;
<> 144:ef7eb2e8f9f7 992 __IO uint32_t P3_7;
<> 144:ef7eb2e8f9f7 993
<> 144:ef7eb2e8f9f7 994 __IO uint32_t P3_8; /* 0x1A0 */
<> 144:ef7eb2e8f9f7 995 __IO uint32_t P3_9;
<> 144:ef7eb2e8f9f7 996 __IO uint32_t P3_10;
<> 144:ef7eb2e8f9f7 997 __IO uint32_t P3_11;
<> 144:ef7eb2e8f9f7 998 __IO uint32_t P3_12;
<> 144:ef7eb2e8f9f7 999 __IO uint32_t P3_13;
<> 144:ef7eb2e8f9f7 1000 __IO uint32_t P3_14;
<> 144:ef7eb2e8f9f7 1001 __IO uint32_t P3_15;
<> 144:ef7eb2e8f9f7 1002
<> 144:ef7eb2e8f9f7 1003 __IO uint32_t P3_16; /* 0x1C0 */
<> 144:ef7eb2e8f9f7 1004 __IO uint32_t P3_17;
<> 144:ef7eb2e8f9f7 1005 __IO uint32_t P3_18;
<> 144:ef7eb2e8f9f7 1006 __IO uint32_t P3_19;
<> 144:ef7eb2e8f9f7 1007 __IO uint32_t P3_20;
<> 144:ef7eb2e8f9f7 1008 __IO uint32_t P3_21;
<> 144:ef7eb2e8f9f7 1009 __IO uint32_t P3_22;
<> 144:ef7eb2e8f9f7 1010 __IO uint32_t P3_23;
<> 144:ef7eb2e8f9f7 1011
<> 144:ef7eb2e8f9f7 1012 __IO uint32_t P3_24; /* 0x1E0 */
<> 144:ef7eb2e8f9f7 1013 __IO uint32_t P3_25;
<> 144:ef7eb2e8f9f7 1014 __IO uint32_t P3_26;
<> 144:ef7eb2e8f9f7 1015 __IO uint32_t P3_27;
<> 144:ef7eb2e8f9f7 1016 __IO uint32_t P3_28;
<> 144:ef7eb2e8f9f7 1017 __IO uint32_t P3_29;
<> 144:ef7eb2e8f9f7 1018 __IO uint32_t P3_30;
<> 144:ef7eb2e8f9f7 1019 __IO uint32_t P3_31;
<> 144:ef7eb2e8f9f7 1020
<> 144:ef7eb2e8f9f7 1021 __IO uint32_t P4_0; /* 0x200 */
<> 144:ef7eb2e8f9f7 1022 __IO uint32_t P4_1;
<> 144:ef7eb2e8f9f7 1023 __IO uint32_t P4_2;
<> 144:ef7eb2e8f9f7 1024 __IO uint32_t P4_3;
<> 144:ef7eb2e8f9f7 1025 __IO uint32_t P4_4;
<> 144:ef7eb2e8f9f7 1026 __IO uint32_t P4_5;
<> 144:ef7eb2e8f9f7 1027 __IO uint32_t P4_6;
<> 144:ef7eb2e8f9f7 1028 __IO uint32_t P4_7;
<> 144:ef7eb2e8f9f7 1029
<> 144:ef7eb2e8f9f7 1030 __IO uint32_t P4_8; /* 0x220 */
<> 144:ef7eb2e8f9f7 1031 __IO uint32_t P4_9;
<> 144:ef7eb2e8f9f7 1032 __IO uint32_t P4_10;
<> 144:ef7eb2e8f9f7 1033 __IO uint32_t P4_11;
<> 144:ef7eb2e8f9f7 1034 __IO uint32_t P4_12;
<> 144:ef7eb2e8f9f7 1035 __IO uint32_t P4_13;
<> 144:ef7eb2e8f9f7 1036 __IO uint32_t P4_14;
<> 144:ef7eb2e8f9f7 1037 __IO uint32_t P4_15;
<> 144:ef7eb2e8f9f7 1038
<> 144:ef7eb2e8f9f7 1039 __IO uint32_t P4_16; /* 0x240 */
<> 144:ef7eb2e8f9f7 1040 __IO uint32_t P4_17;
<> 144:ef7eb2e8f9f7 1041 __IO uint32_t P4_18;
<> 144:ef7eb2e8f9f7 1042 __IO uint32_t P4_19;
<> 144:ef7eb2e8f9f7 1043 __IO uint32_t P4_20;
<> 144:ef7eb2e8f9f7 1044 __IO uint32_t P4_21;
<> 144:ef7eb2e8f9f7 1045 __IO uint32_t P4_22;
<> 144:ef7eb2e8f9f7 1046 __IO uint32_t P4_23;
<> 144:ef7eb2e8f9f7 1047
<> 144:ef7eb2e8f9f7 1048 __IO uint32_t P4_24; /* 0x260 */
<> 144:ef7eb2e8f9f7 1049 __IO uint32_t P4_25;
<> 144:ef7eb2e8f9f7 1050 __IO uint32_t P4_26;
<> 144:ef7eb2e8f9f7 1051 __IO uint32_t P4_27;
<> 144:ef7eb2e8f9f7 1052 __IO uint32_t P4_28;
<> 144:ef7eb2e8f9f7 1053 __IO uint32_t P4_29;
<> 144:ef7eb2e8f9f7 1054 __IO uint32_t P4_30;
<> 144:ef7eb2e8f9f7 1055 __IO uint32_t P4_31;
<> 144:ef7eb2e8f9f7 1056
<> 144:ef7eb2e8f9f7 1057 __IO uint32_t P5_0; /* 0x280 */
<> 144:ef7eb2e8f9f7 1058 __IO uint32_t P5_1;
<> 144:ef7eb2e8f9f7 1059 __IO uint32_t P5_2;
<> 144:ef7eb2e8f9f7 1060 __IO uint32_t P5_3;
<> 144:ef7eb2e8f9f7 1061 __IO uint32_t P5_4; /* 0x290 */
<> 144:ef7eb2e8f9f7 1062 } LPC_IOCON_TypeDef;
<> 144:ef7eb2e8f9f7 1063
<> 144:ef7eb2e8f9f7 1064
<> 144:ef7eb2e8f9f7 1065
<> 144:ef7eb2e8f9f7 1066
<> 144:ef7eb2e8f9f7 1067
<> 144:ef7eb2e8f9f7 1068
<> 144:ef7eb2e8f9f7 1069 /*------------- Synchronous Serial Communication (SSP) -----------------------*/
<> 144:ef7eb2e8f9f7 1070 typedef struct
<> 144:ef7eb2e8f9f7 1071 {
<> 144:ef7eb2e8f9f7 1072 __IO uint32_t CR0; /*!< Offset: 0x000 Control Register 0 (R/W) */
<> 144:ef7eb2e8f9f7 1073 __IO uint32_t CR1; /*!< Offset: 0x004 Control Register 1 (R/W) */
<> 144:ef7eb2e8f9f7 1074 __IO uint32_t DR; /*!< Offset: 0x008 Data Register (R/W) */
<> 144:ef7eb2e8f9f7 1075 __I uint32_t SR; /*!< Offset: 0x00C Status Registe (R/ ) */
<> 144:ef7eb2e8f9f7 1076 __IO uint32_t CPSR; /*!< Offset: 0x010 Clock Prescale Register (R/W) */
<> 144:ef7eb2e8f9f7 1077 __IO uint32_t IMSC; /*!< Offset: 0x014 Interrupt Mask Set and Clear Register (R/W) */
<> 144:ef7eb2e8f9f7 1078 __IO uint32_t RIS; /*!< Offset: 0x018 Raw Interrupt Status Register (R/W) */
<> 144:ef7eb2e8f9f7 1079 __IO uint32_t MIS; /*!< Offset: 0x01C Masked Interrupt Status Register (R/W) */
<> 144:ef7eb2e8f9f7 1080 __IO uint32_t ICR; /*!< Offset: 0x020 SSPICR Interrupt Clear Register (R/W) */
<> 144:ef7eb2e8f9f7 1081 __IO uint32_t DMACR;
<> 144:ef7eb2e8f9f7 1082 } LPC_SSP_TypeDef;
<> 144:ef7eb2e8f9f7 1083
<> 144:ef7eb2e8f9f7 1084 /*------------- Analog-to-Digital Converter (ADC) ----------------------------*/
<> 144:ef7eb2e8f9f7 1085 typedef struct
<> 144:ef7eb2e8f9f7 1086 {
<> 144:ef7eb2e8f9f7 1087 __IO uint32_t CR; /*!< Offset: 0x000 A/D Control Register (R/W) */
<> 144:ef7eb2e8f9f7 1088 __IO uint32_t GDR; /*!< Offset: 0x004 A/D Global Data Register (R/W) */
<> 144:ef7eb2e8f9f7 1089 uint32_t RESERVED0;
<> 144:ef7eb2e8f9f7 1090 __IO uint32_t INTEN; /*!< Offset: 0x00C A/D Interrupt Enable Register (R/W) */
<> 144:ef7eb2e8f9f7 1091 __IO uint32_t DR[8]; /*!< Offset: 0x010-0x02C A/D Channel 0..7 Data Register (R/W) */
<> 144:ef7eb2e8f9f7 1092 __I uint32_t STAT; /*!< Offset: 0x030 A/D Status Register (R/ ) */
<> 144:ef7eb2e8f9f7 1093 __IO uint32_t ADTRM;
<> 144:ef7eb2e8f9f7 1094 } LPC_ADC_TypeDef;
<> 144:ef7eb2e8f9f7 1095
<> 144:ef7eb2e8f9f7 1096 /*------------- Controller Area Network (CAN) --------------------------------*/
<> 144:ef7eb2e8f9f7 1097 typedef struct
<> 144:ef7eb2e8f9f7 1098 {
<> 144:ef7eb2e8f9f7 1099 __IO uint32_t mask[512]; /* ID Masks */
<> 144:ef7eb2e8f9f7 1100 } LPC_CANAF_RAM_TypeDef;
<> 144:ef7eb2e8f9f7 1101
<> 144:ef7eb2e8f9f7 1102 typedef struct /* Acceptance Filter Registers */
<> 144:ef7eb2e8f9f7 1103 {
<> 144:ef7eb2e8f9f7 1104 ///Offset: 0x00000000 - Acceptance Filter Register
<> 144:ef7eb2e8f9f7 1105 __IO uint32_t AFMR;
<> 144:ef7eb2e8f9f7 1106
<> 144:ef7eb2e8f9f7 1107 ///Offset: 0x00000004 - Standard Frame Individual Start Address Register
<> 144:ef7eb2e8f9f7 1108 __IO uint32_t SFF_sa;
<> 144:ef7eb2e8f9f7 1109
<> 144:ef7eb2e8f9f7 1110 ///Offset: 0x00000008 - Standard Frame Group Start Address Register
<> 144:ef7eb2e8f9f7 1111 __IO uint32_t SFF_GRP_sa;
<> 144:ef7eb2e8f9f7 1112
<> 144:ef7eb2e8f9f7 1113 ///Offset: 0x0000000C - Extended Frame Start Address Register
<> 144:ef7eb2e8f9f7 1114 __IO uint32_t EFF_sa;
<> 144:ef7eb2e8f9f7 1115
<> 144:ef7eb2e8f9f7 1116 ///Offset: 0x00000010 - Extended Frame Group Start Address Register
<> 144:ef7eb2e8f9f7 1117 __IO uint32_t EFF_GRP_sa;
<> 144:ef7eb2e8f9f7 1118
<> 144:ef7eb2e8f9f7 1119 ///Offset: 0x00000014 - End of AF Tables register
<> 144:ef7eb2e8f9f7 1120 __IO uint32_t ENDofTable;
<> 144:ef7eb2e8f9f7 1121
<> 144:ef7eb2e8f9f7 1122 ///Offset: 0x00000018 - LUT Error Address register
<> 144:ef7eb2e8f9f7 1123 __I uint32_t LUTerrAd;
<> 144:ef7eb2e8f9f7 1124
<> 144:ef7eb2e8f9f7 1125 ///Offset: 0x0000001C - LUT Error Register
<> 144:ef7eb2e8f9f7 1126 __I uint32_t LUTerr;
<> 144:ef7eb2e8f9f7 1127
<> 144:ef7eb2e8f9f7 1128 ///Offset: 0x00000020 - CAN Central Transmit Status Register
<> 144:ef7eb2e8f9f7 1129 __IO uint32_t FCANIE;
<> 144:ef7eb2e8f9f7 1130
<> 144:ef7eb2e8f9f7 1131 ///Offset: 0x00000024 - FullCAN Interrupt and Capture registers 0
<> 144:ef7eb2e8f9f7 1132 __IO uint32_t FCANIC0;
<> 144:ef7eb2e8f9f7 1133
<> 144:ef7eb2e8f9f7 1134 ///Offset: 0x00000028 - FullCAN Interrupt and Capture registers 1
<> 144:ef7eb2e8f9f7 1135 __IO uint32_t FCANIC1;
<> 144:ef7eb2e8f9f7 1136 } LPC_CANAF_TypeDef;
<> 144:ef7eb2e8f9f7 1137
<> 144:ef7eb2e8f9f7 1138 typedef struct /* Central Registers */
<> 144:ef7eb2e8f9f7 1139 {
<> 144:ef7eb2e8f9f7 1140 __I uint32_t TxSR;
<> 144:ef7eb2e8f9f7 1141 __I uint32_t RxSR;
<> 144:ef7eb2e8f9f7 1142 __I uint32_t MSR;
<> 144:ef7eb2e8f9f7 1143 } LPC_CANCR_TypeDef;
<> 144:ef7eb2e8f9f7 1144
<> 144:ef7eb2e8f9f7 1145 typedef struct /* Controller Registers */
<> 144:ef7eb2e8f9f7 1146 {
<> 144:ef7eb2e8f9f7 1147 ///Offset: 0x00000000 - Controls the operating mode of the CAN Controller
<> 144:ef7eb2e8f9f7 1148 __IO uint32_t MOD;
<> 144:ef7eb2e8f9f7 1149
<> 144:ef7eb2e8f9f7 1150 ///Offset: 0x00000004 - Command bits that affect the state
<> 144:ef7eb2e8f9f7 1151 __O uint32_t CMR;
<> 144:ef7eb2e8f9f7 1152
<> 144:ef7eb2e8f9f7 1153 ///Offset: 0x00000008 - Global Controller Status and Error Counters
<> 144:ef7eb2e8f9f7 1154 __IO uint32_t GSR;
<> 144:ef7eb2e8f9f7 1155
<> 144:ef7eb2e8f9f7 1156 ///Offset: 0x0000000C - Interrupt status, Arbitration Lost Capture, Error Code Capture
<> 144:ef7eb2e8f9f7 1157 __I uint32_t ICR;
<> 144:ef7eb2e8f9f7 1158
<> 144:ef7eb2e8f9f7 1159 ///Offset: 0x00000010 - Interrupt Enable Register
<> 144:ef7eb2e8f9f7 1160 __IO uint32_t IER;
<> 144:ef7eb2e8f9f7 1161
<> 144:ef7eb2e8f9f7 1162 ///Offset: 0x00000014 - Bus Timing Register
<> 144:ef7eb2e8f9f7 1163 __IO uint32_t BTR;
<> 144:ef7eb2e8f9f7 1164
<> 144:ef7eb2e8f9f7 1165 ///Offset: 0x00000018 - Error Warning Limit
<> 144:ef7eb2e8f9f7 1166 __IO uint32_t EWL;
<> 144:ef7eb2e8f9f7 1167
<> 144:ef7eb2e8f9f7 1168 ///Offset: 0x0000001C - Status Register
<> 144:ef7eb2e8f9f7 1169 __I uint32_t SR;
<> 144:ef7eb2e8f9f7 1170
<> 144:ef7eb2e8f9f7 1171 ///Offset: 0x00000020 - Receive frame status
<> 144:ef7eb2e8f9f7 1172 __IO uint32_t RFS;
<> 144:ef7eb2e8f9f7 1173
<> 144:ef7eb2e8f9f7 1174 ///Offset: 0x00000024 - Received Identifier
<> 144:ef7eb2e8f9f7 1175 __IO uint32_t RID;
<> 144:ef7eb2e8f9f7 1176
<> 144:ef7eb2e8f9f7 1177 ///Offset: 0x00000028 - Received data bytes 1-4
<> 144:ef7eb2e8f9f7 1178 __IO uint32_t RDA;
<> 144:ef7eb2e8f9f7 1179
<> 144:ef7eb2e8f9f7 1180 ///Offset: 0x0000002C - Received data bytes 5-8
<> 144:ef7eb2e8f9f7 1181 __IO uint32_t RDB;
<> 144:ef7eb2e8f9f7 1182
<> 144:ef7eb2e8f9f7 1183 ///Offset: 0x00000030 - Transmit frame info (Tx Buffer 1)
<> 144:ef7eb2e8f9f7 1184 __IO uint32_t TFI1;
<> 144:ef7eb2e8f9f7 1185
<> 144:ef7eb2e8f9f7 1186 ///Offset: 0x00000034 - Transmit Identifier (Tx Buffer 1)
<> 144:ef7eb2e8f9f7 1187 __IO uint32_t TID1;
<> 144:ef7eb2e8f9f7 1188
<> 144:ef7eb2e8f9f7 1189 ///Offset: 0x00000038 - Transmit data bytes 1-4 (Tx Buffer 1)
<> 144:ef7eb2e8f9f7 1190 __IO uint32_t TDA1;
<> 144:ef7eb2e8f9f7 1191
<> 144:ef7eb2e8f9f7 1192 ///Offset: 0x0000003C - Transmit data bytes 5-8 (Tx Buffer 1)
<> 144:ef7eb2e8f9f7 1193 __IO uint32_t TDB1;
<> 144:ef7eb2e8f9f7 1194
<> 144:ef7eb2e8f9f7 1195 ///Offset: 0x00000040 - Transmit frame info (Tx Buffer 2)
<> 144:ef7eb2e8f9f7 1196 __IO uint32_t TFI2;
<> 144:ef7eb2e8f9f7 1197
<> 144:ef7eb2e8f9f7 1198 ///Offset: 0x00000044 - Transmit Identifier (Tx Buffer 2)
<> 144:ef7eb2e8f9f7 1199 __IO uint32_t TID2;
<> 144:ef7eb2e8f9f7 1200
<> 144:ef7eb2e8f9f7 1201 ///Offset: 0x00000048 - Transmit data bytes 1-4 (Tx Buffer 2)
<> 144:ef7eb2e8f9f7 1202 __IO uint32_t TDA2;
<> 144:ef7eb2e8f9f7 1203
<> 144:ef7eb2e8f9f7 1204 ///Offset: 0x0000004C - Transmit data bytes 5-8 (Tx Buffer 2)
<> 144:ef7eb2e8f9f7 1205 __IO uint32_t TDB2;
<> 144:ef7eb2e8f9f7 1206
<> 144:ef7eb2e8f9f7 1207 ///Offset: 0x00000050 - Transmit frame info (Tx Buffer 3)
<> 144:ef7eb2e8f9f7 1208 __IO uint32_t TFI3;
<> 144:ef7eb2e8f9f7 1209
<> 144:ef7eb2e8f9f7 1210 ///Offset: 0x00000054 - Transmit Identifier (Tx Buffer 3)
<> 144:ef7eb2e8f9f7 1211 __IO uint32_t TID3;
<> 144:ef7eb2e8f9f7 1212
<> 144:ef7eb2e8f9f7 1213 ///Offset: 0x00000058 - Transmit data bytes 1-4 (Tx Buffer 3)
<> 144:ef7eb2e8f9f7 1214 __IO uint32_t TDA3;
<> 144:ef7eb2e8f9f7 1215
<> 144:ef7eb2e8f9f7 1216 ///Offset: 0x0000005C - Transmit data bytes 5-8 (Tx Buffer 3)
<> 144:ef7eb2e8f9f7 1217 __IO uint32_t TDB3;
<> 144:ef7eb2e8f9f7 1218 } LPC_CAN_TypeDef;
<> 144:ef7eb2e8f9f7 1219
<> 144:ef7eb2e8f9f7 1220 /*------------- Digital-to-Analog Converter (DAC) ----------------------------*/
<> 144:ef7eb2e8f9f7 1221 typedef struct
<> 144:ef7eb2e8f9f7 1222 {
<> 144:ef7eb2e8f9f7 1223 __IO uint32_t CR;
<> 144:ef7eb2e8f9f7 1224 __IO uint32_t CTRL;
<> 144:ef7eb2e8f9f7 1225 __IO uint32_t CNTVAL;
<> 144:ef7eb2e8f9f7 1226 } LPC_DAC_TypeDef;
<> 144:ef7eb2e8f9f7 1227
<> 144:ef7eb2e8f9f7 1228
<> 144:ef7eb2e8f9f7 1229 /*------------- Inter IC Sound (I2S) -----------------------------------------*/
<> 144:ef7eb2e8f9f7 1230 typedef struct
<> 144:ef7eb2e8f9f7 1231 {
<> 144:ef7eb2e8f9f7 1232 __IO uint32_t DAO;
<> 144:ef7eb2e8f9f7 1233 __IO uint32_t DAI;
<> 144:ef7eb2e8f9f7 1234 __O uint32_t TXFIFO;
<> 144:ef7eb2e8f9f7 1235 __I uint32_t RXFIFO;
<> 144:ef7eb2e8f9f7 1236 __I uint32_t STATE;
<> 144:ef7eb2e8f9f7 1237 __IO uint32_t DMA1;
<> 144:ef7eb2e8f9f7 1238 __IO uint32_t DMA2;
<> 144:ef7eb2e8f9f7 1239 __IO uint32_t IRQ;
<> 144:ef7eb2e8f9f7 1240 __IO uint32_t TXRATE;
<> 144:ef7eb2e8f9f7 1241 __IO uint32_t RXRATE;
<> 144:ef7eb2e8f9f7 1242 __IO uint32_t TXBITRATE;
<> 144:ef7eb2e8f9f7 1243 __IO uint32_t RXBITRATE;
<> 144:ef7eb2e8f9f7 1244 __IO uint32_t TXMODE;
<> 144:ef7eb2e8f9f7 1245 __IO uint32_t RXMODE;
<> 144:ef7eb2e8f9f7 1246 } LPC_I2S_TypeDef;
<> 144:ef7eb2e8f9f7 1247
<> 144:ef7eb2e8f9f7 1248
<> 144:ef7eb2e8f9f7 1249
<> 144:ef7eb2e8f9f7 1250
<> 144:ef7eb2e8f9f7 1251
<> 144:ef7eb2e8f9f7 1252
<> 144:ef7eb2e8f9f7 1253 /*------------- Motor Control Pulse-Width Modulation (MCPWM) -----------------*/
<> 144:ef7eb2e8f9f7 1254 typedef struct
<> 144:ef7eb2e8f9f7 1255 {
<> 144:ef7eb2e8f9f7 1256 __I uint32_t CON;
<> 144:ef7eb2e8f9f7 1257 __O uint32_t CON_SET;
<> 144:ef7eb2e8f9f7 1258 __O uint32_t CON_CLR;
<> 144:ef7eb2e8f9f7 1259 __I uint32_t CAPCON;
<> 144:ef7eb2e8f9f7 1260 __O uint32_t CAPCON_SET;
<> 144:ef7eb2e8f9f7 1261 __O uint32_t CAPCON_CLR;
<> 144:ef7eb2e8f9f7 1262 __IO uint32_t TC0;
<> 144:ef7eb2e8f9f7 1263 __IO uint32_t TC1;
<> 144:ef7eb2e8f9f7 1264 __IO uint32_t TC2;
<> 144:ef7eb2e8f9f7 1265 __IO uint32_t LIM0;
<> 144:ef7eb2e8f9f7 1266 __IO uint32_t LIM1;
<> 144:ef7eb2e8f9f7 1267 __IO uint32_t LIM2;
<> 144:ef7eb2e8f9f7 1268 __IO uint32_t MAT0;
<> 144:ef7eb2e8f9f7 1269 __IO uint32_t MAT1;
<> 144:ef7eb2e8f9f7 1270 __IO uint32_t MAT2;
<> 144:ef7eb2e8f9f7 1271 __IO uint32_t DT;
<> 144:ef7eb2e8f9f7 1272 __IO uint32_t CP;
<> 144:ef7eb2e8f9f7 1273 __IO uint32_t CAP0;
<> 144:ef7eb2e8f9f7 1274 __IO uint32_t CAP1;
<> 144:ef7eb2e8f9f7 1275 __IO uint32_t CAP2;
<> 144:ef7eb2e8f9f7 1276 __I uint32_t INTEN;
<> 144:ef7eb2e8f9f7 1277 __O uint32_t INTEN_SET;
<> 144:ef7eb2e8f9f7 1278 __O uint32_t INTEN_CLR;
<> 144:ef7eb2e8f9f7 1279 __I uint32_t CNTCON;
<> 144:ef7eb2e8f9f7 1280 __O uint32_t CNTCON_SET;
<> 144:ef7eb2e8f9f7 1281 __O uint32_t CNTCON_CLR;
<> 144:ef7eb2e8f9f7 1282 __I uint32_t INTF;
<> 144:ef7eb2e8f9f7 1283 __O uint32_t INTF_SET;
<> 144:ef7eb2e8f9f7 1284 __O uint32_t INTF_CLR;
<> 144:ef7eb2e8f9f7 1285 __O uint32_t CAP_CLR;
<> 144:ef7eb2e8f9f7 1286 } LPC_MCPWM_TypeDef;
<> 144:ef7eb2e8f9f7 1287
<> 144:ef7eb2e8f9f7 1288 /*------------- Quadrature Encoder Interface (QEI) ---------------------------*/
<> 144:ef7eb2e8f9f7 1289 typedef struct
<> 144:ef7eb2e8f9f7 1290 {
<> 144:ef7eb2e8f9f7 1291 __O uint32_t CON;
<> 144:ef7eb2e8f9f7 1292 __I uint32_t STAT;
<> 144:ef7eb2e8f9f7 1293 __IO uint32_t CONF;
<> 144:ef7eb2e8f9f7 1294 __I uint32_t POS;
<> 144:ef7eb2e8f9f7 1295 __IO uint32_t MAXPOS;
<> 144:ef7eb2e8f9f7 1296 __IO uint32_t CMPOS0;
<> 144:ef7eb2e8f9f7 1297 __IO uint32_t CMPOS1;
<> 144:ef7eb2e8f9f7 1298 __IO uint32_t CMPOS2;
<> 144:ef7eb2e8f9f7 1299 __I uint32_t INXCNT;
<> 144:ef7eb2e8f9f7 1300 __IO uint32_t INXCMP0;
<> 144:ef7eb2e8f9f7 1301 __IO uint32_t LOAD;
<> 144:ef7eb2e8f9f7 1302 __I uint32_t TIME;
<> 144:ef7eb2e8f9f7 1303 __I uint32_t VEL;
<> 144:ef7eb2e8f9f7 1304 __I uint32_t CAP;
<> 144:ef7eb2e8f9f7 1305 __IO uint32_t VELCOMP;
<> 144:ef7eb2e8f9f7 1306 __IO uint32_t FILTERPHA;
<> 144:ef7eb2e8f9f7 1307 __IO uint32_t FILTERPHB;
<> 144:ef7eb2e8f9f7 1308 __IO uint32_t FILTERINX;
<> 144:ef7eb2e8f9f7 1309 __IO uint32_t WINDOW;
<> 144:ef7eb2e8f9f7 1310 __IO uint32_t INXCMP1;
<> 144:ef7eb2e8f9f7 1311 __IO uint32_t INXCMP2;
<> 144:ef7eb2e8f9f7 1312 uint32_t RESERVED0[993];
<> 144:ef7eb2e8f9f7 1313 __O uint32_t IEC;
<> 144:ef7eb2e8f9f7 1314 __O uint32_t IES;
<> 144:ef7eb2e8f9f7 1315 __I uint32_t INTSTAT;
<> 144:ef7eb2e8f9f7 1316 __I uint32_t IE;
<> 144:ef7eb2e8f9f7 1317 __O uint32_t CLR;
<> 144:ef7eb2e8f9f7 1318 __O uint32_t SET;
<> 144:ef7eb2e8f9f7 1319 } LPC_QEI_TypeDef;
<> 144:ef7eb2e8f9f7 1320
<> 144:ef7eb2e8f9f7 1321 /*------------- SD/MMC card Interface (MCI)-----------------------------------*/
<> 144:ef7eb2e8f9f7 1322 typedef struct
<> 144:ef7eb2e8f9f7 1323 {
<> 144:ef7eb2e8f9f7 1324 __IO uint32_t POWER;
<> 144:ef7eb2e8f9f7 1325 __IO uint32_t CLOCK;
<> 144:ef7eb2e8f9f7 1326 __IO uint32_t ARGUMENT;
<> 144:ef7eb2e8f9f7 1327 __IO uint32_t COMMAND;
<> 144:ef7eb2e8f9f7 1328 __I uint32_t RESP_CMD;
<> 144:ef7eb2e8f9f7 1329 __I uint32_t RESP0;
<> 144:ef7eb2e8f9f7 1330 __I uint32_t RESP1;
<> 144:ef7eb2e8f9f7 1331 __I uint32_t RESP2;
<> 144:ef7eb2e8f9f7 1332 __I uint32_t RESP3;
<> 144:ef7eb2e8f9f7 1333 __IO uint32_t DATATMR;
<> 144:ef7eb2e8f9f7 1334 __IO uint32_t DATALEN;
<> 144:ef7eb2e8f9f7 1335 __IO uint32_t DATACTRL;
<> 144:ef7eb2e8f9f7 1336 __I uint32_t DATACNT;
<> 144:ef7eb2e8f9f7 1337 __I uint32_t STATUS;
<> 144:ef7eb2e8f9f7 1338 __O uint32_t CLEAR;
<> 144:ef7eb2e8f9f7 1339 __IO uint32_t MASK0;
<> 144:ef7eb2e8f9f7 1340 uint32_t RESERVED0[2];
<> 144:ef7eb2e8f9f7 1341 __I uint32_t FIFOCNT;
<> 144:ef7eb2e8f9f7 1342 uint32_t RESERVED1[13];
<> 144:ef7eb2e8f9f7 1343 __IO uint32_t FIFO[16];
<> 144:ef7eb2e8f9f7 1344 } LPC_MCI_TypeDef;
<> 144:ef7eb2e8f9f7 1345
<> 144:ef7eb2e8f9f7 1346
<> 144:ef7eb2e8f9f7 1347
<> 144:ef7eb2e8f9f7 1348
<> 144:ef7eb2e8f9f7 1349
<> 144:ef7eb2e8f9f7 1350
<> 144:ef7eb2e8f9f7 1351
<> 144:ef7eb2e8f9f7 1352
<> 144:ef7eb2e8f9f7 1353
<> 144:ef7eb2e8f9f7 1354
<> 144:ef7eb2e8f9f7 1355 /*------------- EEPROM Controller (EEPROM) -----------------------------------*/
<> 144:ef7eb2e8f9f7 1356 typedef struct
<> 144:ef7eb2e8f9f7 1357 {
<> 144:ef7eb2e8f9f7 1358 __IO uint32_t CMD; /* 0x0080 */
<> 144:ef7eb2e8f9f7 1359 __IO uint32_t ADDR;
<> 144:ef7eb2e8f9f7 1360 __IO uint32_t WDATA;
<> 144:ef7eb2e8f9f7 1361 __IO uint32_t RDATA;
<> 144:ef7eb2e8f9f7 1362 __IO uint32_t WSTATE; /* 0x0090 */
<> 144:ef7eb2e8f9f7 1363 __IO uint32_t CLKDIV;
<> 144:ef7eb2e8f9f7 1364 __IO uint32_t PWRDWN; /* 0x0098 */
<> 144:ef7eb2e8f9f7 1365 uint32_t RESERVED0[975];
<> 144:ef7eb2e8f9f7 1366 __IO uint32_t INT_CLR_ENABLE; /* 0x0FD8 */
<> 144:ef7eb2e8f9f7 1367 __IO uint32_t INT_SET_ENABLE;
<> 144:ef7eb2e8f9f7 1368 __IO uint32_t INT_STATUS; /* 0x0FE0 */
<> 144:ef7eb2e8f9f7 1369 __IO uint32_t INT_ENABLE;
<> 144:ef7eb2e8f9f7 1370 __IO uint32_t INT_CLR_STATUS;
<> 144:ef7eb2e8f9f7 1371 __IO uint32_t INT_SET_STATUS;
<> 144:ef7eb2e8f9f7 1372 } LPC_EEPROM_TypeDef;
<> 144:ef7eb2e8f9f7 1373
<> 144:ef7eb2e8f9f7 1374
<> 144:ef7eb2e8f9f7 1375 /*------------- COMPARATOR ----------------------------------------------------*/
<> 144:ef7eb2e8f9f7 1376
<> 144:ef7eb2e8f9f7 1377 typedef struct { /*!< (@ 0x40020000) COMPARATOR Structure */
<> 144:ef7eb2e8f9f7 1378 __IO uint32_t CTRL; /*!< (@ 0x40020000) Comparator block control register */
<> 144:ef7eb2e8f9f7 1379 __IO uint32_t CTRL0; /*!< (@ 0x40020004) Comparator 0 control register */
<> 144:ef7eb2e8f9f7 1380 __IO uint32_t CTRL1; /*!< (@ 0x40020008) Comparator 1 control register */
<> 144:ef7eb2e8f9f7 1381 } LPC_COMPARATOR_Type;
<> 144:ef7eb2e8f9f7 1382
<> 144:ef7eb2e8f9f7 1383
<> 144:ef7eb2e8f9f7 1384 #if defined ( __CC_ARM )
<> 144:ef7eb2e8f9f7 1385 #pragma no_anon_unions
<> 144:ef7eb2e8f9f7 1386 #endif
<> 144:ef7eb2e8f9f7 1387
<> 144:ef7eb2e8f9f7 1388 /******************************************************************************/
<> 144:ef7eb2e8f9f7 1389 /* Peripheral memory map */
<> 144:ef7eb2e8f9f7 1390 /******************************************************************************/
<> 144:ef7eb2e8f9f7 1391 /* Base addresses */
<> 144:ef7eb2e8f9f7 1392 #define LPC_FLASH_BASE (0x00000000UL)
<> 144:ef7eb2e8f9f7 1393 #define LPC_RAM_BASE (0x10000000UL)
<> 144:ef7eb2e8f9f7 1394 #define LPC_PERI_RAM_BASE (0x20000000UL)
<> 144:ef7eb2e8f9f7 1395 #define LPC_APB0_BASE (0x40000000UL)
<> 144:ef7eb2e8f9f7 1396 #define LPC_APB1_BASE (0x40080000UL)
<> 144:ef7eb2e8f9f7 1397 #define LPC_AHBRAM1_BASE (0x20004000UL)
<> 144:ef7eb2e8f9f7 1398 #define LPC_AHB_BASE (0x20080000UL)
<> 144:ef7eb2e8f9f7 1399 #define LPC_CM3_BASE (0xE0000000UL)
<> 144:ef7eb2e8f9f7 1400
<> 144:ef7eb2e8f9f7 1401 /* APB0 peripherals */
<> 144:ef7eb2e8f9f7 1402 #define LPC_WDT_BASE (LPC_APB0_BASE + 0x00000)
<> 144:ef7eb2e8f9f7 1403 #define LPC_TIM0_BASE (LPC_APB0_BASE + 0x04000)
<> 144:ef7eb2e8f9f7 1404 #define LPC_TIM1_BASE (LPC_APB0_BASE + 0x08000)
<> 144:ef7eb2e8f9f7 1405 #define LPC_UART0_BASE (LPC_APB0_BASE + 0x0C000)
<> 144:ef7eb2e8f9f7 1406 #define LPC_UART1_BASE (LPC_APB0_BASE + 0x10000)
<> 144:ef7eb2e8f9f7 1407 #define LPC_PWM0_BASE (LPC_APB0_BASE + 0x14000)
<> 144:ef7eb2e8f9f7 1408 #define LPC_PWM1_BASE (LPC_APB0_BASE + 0x18000)
<> 144:ef7eb2e8f9f7 1409 #define LPC_I2C0_BASE (LPC_APB0_BASE + 0x1C000)
<> 144:ef7eb2e8f9f7 1410 #define LPC_COMPARATOR_BASE (LPC_APB0_BASE + 0x20000)
<> 144:ef7eb2e8f9f7 1411 #define LPC_RTC_BASE (LPC_APB0_BASE + 0x24000)
<> 144:ef7eb2e8f9f7 1412 #define LPC_GPIOINT_BASE (LPC_APB0_BASE + 0x28080)
<> 144:ef7eb2e8f9f7 1413 #define LPC_IOCON_BASE (LPC_APB0_BASE + 0x2C000)
<> 144:ef7eb2e8f9f7 1414 #define LPC_SSP1_BASE (LPC_APB0_BASE + 0x30000)
<> 144:ef7eb2e8f9f7 1415 #define LPC_ADC_BASE (LPC_APB0_BASE + 0x34000)
<> 144:ef7eb2e8f9f7 1416 #define LPC_CANAF_RAM_BASE (LPC_APB0_BASE + 0x38000)
<> 144:ef7eb2e8f9f7 1417 #define LPC_CANAF_BASE (LPC_APB0_BASE + 0x3C000)
<> 144:ef7eb2e8f9f7 1418 #define LPC_CANCR_BASE (LPC_APB0_BASE + 0x40000)
<> 144:ef7eb2e8f9f7 1419 #define LPC_CAN1_BASE (LPC_APB0_BASE + 0x44000)
<> 144:ef7eb2e8f9f7 1420 #define LPC_CAN2_BASE (LPC_APB0_BASE + 0x48000)
<> 144:ef7eb2e8f9f7 1421 #define LPC_I2C1_BASE (LPC_APB0_BASE + 0x5C000)
<> 144:ef7eb2e8f9f7 1422
<> 144:ef7eb2e8f9f7 1423 /* APB1 peripherals */
<> 144:ef7eb2e8f9f7 1424 #define LPC_SSP0_BASE (LPC_APB1_BASE + 0x08000)
<> 144:ef7eb2e8f9f7 1425 #define LPC_DAC_BASE (LPC_APB1_BASE + 0x0C000)
<> 144:ef7eb2e8f9f7 1426 #define LPC_TIM2_BASE (LPC_APB1_BASE + 0x10000)
<> 144:ef7eb2e8f9f7 1427 #define LPC_TIM3_BASE (LPC_APB1_BASE + 0x14000)
<> 144:ef7eb2e8f9f7 1428 #define LPC_UART2_BASE (LPC_APB1_BASE + 0x18000)
<> 144:ef7eb2e8f9f7 1429 #define LPC_UART3_BASE (LPC_APB1_BASE + 0x1C000)
<> 144:ef7eb2e8f9f7 1430 #define LPC_I2C2_BASE (LPC_APB1_BASE + 0x20000)
<> 144:ef7eb2e8f9f7 1431 #define LPC_UART4_BASE (LPC_APB1_BASE + 0x24000)
<> 144:ef7eb2e8f9f7 1432 #define LPC_I2S_BASE (LPC_APB1_BASE + 0x28000)
<> 144:ef7eb2e8f9f7 1433 #define LPC_SSP2_BASE (LPC_APB1_BASE + 0x2C000)
<> 144:ef7eb2e8f9f7 1434 #define LPC_MCPWM_BASE (LPC_APB1_BASE + 0x38000)
<> 144:ef7eb2e8f9f7 1435 #define LPC_QEI_BASE (LPC_APB1_BASE + 0x3C000)
<> 144:ef7eb2e8f9f7 1436 #define LPC_MCI_BASE (LPC_APB1_BASE + 0x40000)
<> 144:ef7eb2e8f9f7 1437 #define LPC_SC_BASE (LPC_APB1_BASE + 0x7C000)
<> 144:ef7eb2e8f9f7 1438
<> 144:ef7eb2e8f9f7 1439 /* AHB peripherals */
<> 144:ef7eb2e8f9f7 1440 #define LPC_GPDMA_BASE (LPC_AHB_BASE + 0x00000)
<> 144:ef7eb2e8f9f7 1441 #define LPC_GPDMACH0_BASE (LPC_AHB_BASE + 0x00100)
<> 144:ef7eb2e8f9f7 1442 #define LPC_GPDMACH1_BASE (LPC_AHB_BASE + 0x00120)
<> 144:ef7eb2e8f9f7 1443 #define LPC_GPDMACH2_BASE (LPC_AHB_BASE + 0x00140)
<> 144:ef7eb2e8f9f7 1444 #define LPC_GPDMACH3_BASE (LPC_AHB_BASE + 0x00160)
<> 144:ef7eb2e8f9f7 1445 #define LPC_GPDMACH4_BASE (LPC_AHB_BASE + 0x00180)
<> 144:ef7eb2e8f9f7 1446 #define LPC_GPDMACH5_BASE (LPC_AHB_BASE + 0x001A0)
<> 144:ef7eb2e8f9f7 1447 #define LPC_GPDMACH6_BASE (LPC_AHB_BASE + 0x001C0)
<> 144:ef7eb2e8f9f7 1448 #define LPC_GPDMACH7_BASE (LPC_AHB_BASE + 0x001E0)
<> 144:ef7eb2e8f9f7 1449 #define LPC_EMAC_BASE (LPC_AHB_BASE + 0x04000)
<> 144:ef7eb2e8f9f7 1450 #define LPC_LCD_BASE (LPC_AHB_BASE + 0x08000)
<> 144:ef7eb2e8f9f7 1451 #define LPC_USB_BASE (LPC_AHB_BASE + 0x0C000)
<> 144:ef7eb2e8f9f7 1452 #define LPC_CRC_BASE (LPC_AHB_BASE + 0x10000)
<> 144:ef7eb2e8f9f7 1453 #define LPC_GPIO0_BASE (LPC_AHB_BASE + 0x18000)
<> 144:ef7eb2e8f9f7 1454 #define LPC_GPIO1_BASE (LPC_AHB_BASE + 0x18020)
<> 144:ef7eb2e8f9f7 1455 #define LPC_GPIO2_BASE (LPC_AHB_BASE + 0x18040)
<> 144:ef7eb2e8f9f7 1456 #define LPC_GPIO3_BASE (LPC_AHB_BASE + 0x18060)
<> 144:ef7eb2e8f9f7 1457 #define LPC_GPIO4_BASE (LPC_AHB_BASE + 0x18080)
<> 144:ef7eb2e8f9f7 1458 #define LPC_GPIO5_BASE (LPC_AHB_BASE + 0x180A0)
<> 144:ef7eb2e8f9f7 1459 #define LPC_EMC_BASE (LPC_AHB_BASE + 0x1C000)
<> 144:ef7eb2e8f9f7 1460
<> 144:ef7eb2e8f9f7 1461 #define LPC_EEPROM_BASE (LPC_FLASH_BASE+ 0x200080)
<> 144:ef7eb2e8f9f7 1462
<> 144:ef7eb2e8f9f7 1463
<> 144:ef7eb2e8f9f7 1464 /******************************************************************************/
<> 144:ef7eb2e8f9f7 1465 /* Peripheral declaration */
<> 144:ef7eb2e8f9f7 1466 /******************************************************************************/
<> 144:ef7eb2e8f9f7 1467 #define LPC_SC ((LPC_SC_TypeDef *) LPC_SC_BASE )
<> 144:ef7eb2e8f9f7 1468 #define LPC_WDT ((LPC_WDT_TypeDef *) LPC_WDT_BASE )
<> 144:ef7eb2e8f9f7 1469 #define LPC_TIM0 ((LPC_TIM_TypeDef *) LPC_TIM0_BASE )
<> 144:ef7eb2e8f9f7 1470 #define LPC_TIM1 ((LPC_TIM_TypeDef *) LPC_TIM1_BASE )
<> 144:ef7eb2e8f9f7 1471 #define LPC_TIM2 ((LPC_TIM_TypeDef *) LPC_TIM2_BASE )
<> 144:ef7eb2e8f9f7 1472 #define LPC_TIM3 ((LPC_TIM_TypeDef *) LPC_TIM3_BASE )
<> 144:ef7eb2e8f9f7 1473 #define LPC_UART0 ((LPC_UART_TypeDef *) LPC_UART0_BASE )
<> 144:ef7eb2e8f9f7 1474 #define LPC_UART1 ((LPC_UART1_TypeDef *) LPC_UART1_BASE )
<> 144:ef7eb2e8f9f7 1475 #define LPC_UART2 ((LPC_UART_TypeDef *) LPC_UART2_BASE )
<> 144:ef7eb2e8f9f7 1476 #define LPC_UART3 ((LPC_UART_TypeDef *) LPC_UART3_BASE )
<> 144:ef7eb2e8f9f7 1477 #define LPC_UART4 ((LPC_UART4_TypeDef *) LPC_UART4_BASE )
<> 144:ef7eb2e8f9f7 1478 #define LPC_PWM0 ((LPC_PWM_TypeDef *) LPC_PWM0_BASE )
<> 144:ef7eb2e8f9f7 1479 #define LPC_PWM1 ((LPC_PWM_TypeDef *) LPC_PWM1_BASE )
<> 144:ef7eb2e8f9f7 1480 #define LPC_I2C0 ((LPC_I2C_TypeDef *) LPC_I2C0_BASE )
<> 144:ef7eb2e8f9f7 1481 #define LPC_I2C1 ((LPC_I2C_TypeDef *) LPC_I2C1_BASE )
<> 144:ef7eb2e8f9f7 1482 #define LPC_I2C2 ((LPC_I2C_TypeDef *) LPC_I2C2_BASE )
<> 144:ef7eb2e8f9f7 1483 #define LPC_I2S ((LPC_I2S_TypeDef *) LPC_I2S_BASE )
<> 144:ef7eb2e8f9f7 1484 #define LPC_COMPARATOR ((LPC_COMPARATOR_Type *) LPC_COMPARATOR_BASE)
<> 144:ef7eb2e8f9f7 1485 #define LPC_RTC ((LPC_RTC_TypeDef *) LPC_RTC_BASE )
<> 144:ef7eb2e8f9f7 1486 #define LPC_GPIOINT ((LPC_GPIOINT_TypeDef *) LPC_GPIOINT_BASE )
<> 144:ef7eb2e8f9f7 1487 #define LPC_IOCON ((LPC_IOCON_TypeDef *) LPC_IOCON_BASE )
<> 144:ef7eb2e8f9f7 1488 #define LPC_SSP0 ((LPC_SSP_TypeDef *) LPC_SSP0_BASE )
<> 144:ef7eb2e8f9f7 1489 #define LPC_SSP1 ((LPC_SSP_TypeDef *) LPC_SSP1_BASE )
<> 144:ef7eb2e8f9f7 1490 #define LPC_SSP2 ((LPC_SSP_TypeDef *) LPC_SSP2_BASE )
<> 144:ef7eb2e8f9f7 1491 #define LPC_ADC ((LPC_ADC_TypeDef *) LPC_ADC_BASE )
<> 144:ef7eb2e8f9f7 1492 #define LPC_DAC ((LPC_DAC_TypeDef *) LPC_DAC_BASE )
<> 144:ef7eb2e8f9f7 1493 #define LPC_CANAF_RAM ((LPC_CANAF_RAM_TypeDef *) LPC_CANAF_RAM_BASE)
<> 144:ef7eb2e8f9f7 1494 #define LPC_CANAF ((LPC_CANAF_TypeDef *) LPC_CANAF_BASE )
<> 144:ef7eb2e8f9f7 1495 #define LPC_CANCR ((LPC_CANCR_TypeDef *) LPC_CANCR_BASE )
<> 144:ef7eb2e8f9f7 1496 #define LPC_CAN1 ((LPC_CAN_TypeDef *) LPC_CAN1_BASE )
<> 144:ef7eb2e8f9f7 1497 #define LPC_CAN2 ((LPC_CAN_TypeDef *) LPC_CAN2_BASE )
<> 144:ef7eb2e8f9f7 1498 #define LPC_MCPWM ((LPC_MCPWM_TypeDef *) LPC_MCPWM_BASE )
<> 144:ef7eb2e8f9f7 1499 #define LPC_QEI ((LPC_QEI_TypeDef *) LPC_QEI_BASE )
<> 144:ef7eb2e8f9f7 1500 #define LPC_MCI ((LPC_MCI_TypeDef *) LPC_MCI_BASE )
<> 144:ef7eb2e8f9f7 1501 #define LPC_GPDMA ((LPC_GPDMA_TypeDef *) LPC_GPDMA_BASE )
<> 144:ef7eb2e8f9f7 1502 #define LPC_GPDMACH0 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH0_BASE )
<> 144:ef7eb2e8f9f7 1503 #define LPC_GPDMACH1 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH1_BASE )
<> 144:ef7eb2e8f9f7 1504 #define LPC_GPDMACH2 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH2_BASE )
<> 144:ef7eb2e8f9f7 1505 #define LPC_GPDMACH3 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH3_BASE )
<> 144:ef7eb2e8f9f7 1506 #define LPC_GPDMACH4 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH4_BASE )
<> 144:ef7eb2e8f9f7 1507 #define LPC_GPDMACH5 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH5_BASE )
<> 144:ef7eb2e8f9f7 1508 #define LPC_GPDMACH6 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH6_BASE )
<> 144:ef7eb2e8f9f7 1509 #define LPC_GPDMACH7 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH7_BASE )
<> 144:ef7eb2e8f9f7 1510 #define LPC_EMAC ((LPC_EMAC_TypeDef *) LPC_EMAC_BASE )
<> 144:ef7eb2e8f9f7 1511 #define LPC_LCD ((LPC_LCD_TypeDef *) LPC_LCD_BASE )
<> 144:ef7eb2e8f9f7 1512 #define LPC_USB ((LPC_USB_TypeDef *) LPC_USB_BASE )
<> 144:ef7eb2e8f9f7 1513 #define LPC_GPIO0 ((LPC_GPIO_TypeDef *) LPC_GPIO0_BASE )
<> 144:ef7eb2e8f9f7 1514 #define LPC_GPIO1 ((LPC_GPIO_TypeDef *) LPC_GPIO1_BASE )
<> 144:ef7eb2e8f9f7 1515 #define LPC_GPIO2 ((LPC_GPIO_TypeDef *) LPC_GPIO2_BASE )
<> 144:ef7eb2e8f9f7 1516 #define LPC_GPIO3 ((LPC_GPIO_TypeDef *) LPC_GPIO3_BASE )
<> 144:ef7eb2e8f9f7 1517 #define LPC_GPIO4 ((LPC_GPIO_TypeDef *) LPC_GPIO4_BASE )
<> 144:ef7eb2e8f9f7 1518 #define LPC_GPIO5 ((LPC_GPIO_TypeDef *) LPC_GPIO5_BASE )
<> 144:ef7eb2e8f9f7 1519 #define LPC_EMC ((LPC_EMC_TypeDef *) LPC_EMC_BASE )
<> 144:ef7eb2e8f9f7 1520 #define LPC_CRC ((LPC_CRC_TypeDef *) LPC_CRC_BASE )
<> 144:ef7eb2e8f9f7 1521 #define LPC_EEPROM ((LPC_EEPROM_TypeDef *) LPC_EEPROM_BASE )
<> 144:ef7eb2e8f9f7 1522
<> 144:ef7eb2e8f9f7 1523
<> 144:ef7eb2e8f9f7 1524
<> 144:ef7eb2e8f9f7 1525 #endif // __LPC407x_8x_177x_8x_H__