Repostiory containing DAPLink source code with Reset Pin workaround for HANI_IOT board.

Upstream: https://github.com/ARMmbed/DAPLink

Committer:
Pawel Zarembski
Date:
Tue Apr 07 12:55:42 2020 +0200
Revision:
0:01f31e923fe2
hani: DAPLink with reset workaround

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Pawel Zarembski 0:01f31e923fe2 1
Pawel Zarembski 0:01f31e923fe2 2 /****************************************************************************************************//**
Pawel Zarembski 0:01f31e923fe2 3 * @file LPC11Uxx.h
Pawel Zarembski 0:01f31e923fe2 4 *
Pawel Zarembski 0:01f31e923fe2 5 *
Pawel Zarembski 0:01f31e923fe2 6 * @brief CMSIS Cortex-M0 Core Peripheral Access Layer Header File for
Pawel Zarembski 0:01f31e923fe2 7 * default LPC11Uxx Device Series
Pawel Zarembski 0:01f31e923fe2 8 *
Pawel Zarembski 0:01f31e923fe2 9 * @version V0.1
Pawel Zarembski 0:01f31e923fe2 10 * @date 21. March 2011
Pawel Zarembski 0:01f31e923fe2 11 *
Pawel Zarembski 0:01f31e923fe2 12 * @note Generated with SFDGen V2.6 Build 3j (beta) on Thursday, 17.03.2011 13:19:45
Pawel Zarembski 0:01f31e923fe2 13 *
Pawel Zarembski 0:01f31e923fe2 14 * from CMSIS SVD File 'LPC11U1x_svd.xml' Version 0.1,
Pawel Zarembski 0:01f31e923fe2 15 * created on Wednesday, 16.03.2011 20:30:42, last modified on Thursday, 17.03.2011 20:19:40
Pawel Zarembski 0:01f31e923fe2 16 *
Pawel Zarembski 0:01f31e923fe2 17 *******************************************************************************************************/
Pawel Zarembski 0:01f31e923fe2 18
Pawel Zarembski 0:01f31e923fe2 19 // ################################################################################
Pawel Zarembski 0:01f31e923fe2 20 // Minor fix 8 April 2011 - changed LPC_CT32B1_BASE from 0x40014000 to 0x40018000
Pawel Zarembski 0:01f31e923fe2 21 // ################################################################################
Pawel Zarembski 0:01f31e923fe2 22
Pawel Zarembski 0:01f31e923fe2 23 /** @addtogroup NXP
Pawel Zarembski 0:01f31e923fe2 24 * @{
Pawel Zarembski 0:01f31e923fe2 25 */
Pawel Zarembski 0:01f31e923fe2 26
Pawel Zarembski 0:01f31e923fe2 27 /** @addtogroup LPC11Uxx
Pawel Zarembski 0:01f31e923fe2 28 * @{
Pawel Zarembski 0:01f31e923fe2 29 */
Pawel Zarembski 0:01f31e923fe2 30
Pawel Zarembski 0:01f31e923fe2 31 #ifndef __LPC11UXX_H__
Pawel Zarembski 0:01f31e923fe2 32 #define __LPC11UXX_H__
Pawel Zarembski 0:01f31e923fe2 33
Pawel Zarembski 0:01f31e923fe2 34 #ifdef __cplusplus
Pawel Zarembski 0:01f31e923fe2 35 extern "C" {
Pawel Zarembski 0:01f31e923fe2 36 #endif
Pawel Zarembski 0:01f31e923fe2 37
Pawel Zarembski 0:01f31e923fe2 38
Pawel Zarembski 0:01f31e923fe2 39 #if defined ( __CC_ARM )
Pawel Zarembski 0:01f31e923fe2 40 #pragma anon_unions
Pawel Zarembski 0:01f31e923fe2 41 #endif
Pawel Zarembski 0:01f31e923fe2 42
Pawel Zarembski 0:01f31e923fe2 43 /* Interrupt Number Definition */
Pawel Zarembski 0:01f31e923fe2 44
Pawel Zarembski 0:01f31e923fe2 45 typedef enum {
Pawel Zarembski 0:01f31e923fe2 46 // ------------------------- Cortex-M0 Processor Exceptions Numbers -----------------------------
Pawel Zarembski 0:01f31e923fe2 47 Reset_IRQn = -15, /*!< 1 Reset Vector, invoked on Power up and warm reset */
Pawel Zarembski 0:01f31e923fe2 48 NonMaskableInt_IRQn = -14, /*!< 2 Non maskable Interrupt, cannot be stopped or preempted */
Pawel Zarembski 0:01f31e923fe2 49 HardFault_IRQn = -13, /*!< 3 Hard Fault, all classes of Fault */
Pawel Zarembski 0:01f31e923fe2 50 SVCall_IRQn = -5, /*!< 11 System Service Call via SVC instruction */
Pawel Zarembski 0:01f31e923fe2 51 DebugMonitor_IRQn = -4, /*!< 12 Debug Monitor */
Pawel Zarembski 0:01f31e923fe2 52 PendSV_IRQn = -2, /*!< 14 Pendable request for system service */
Pawel Zarembski 0:01f31e923fe2 53 SysTick_IRQn = -1, /*!< 15 System Tick Timer */
Pawel Zarembski 0:01f31e923fe2 54 // --------------------------- LPC11Uxx Specific Interrupt Numbers ------------------------------
Pawel Zarembski 0:01f31e923fe2 55 FLEX_INT0_IRQn = 0, /*!< All I/O pins can be routed to below 8 interrupts. */
Pawel Zarembski 0:01f31e923fe2 56 FLEX_INT1_IRQn = 1,
Pawel Zarembski 0:01f31e923fe2 57 FLEX_INT2_IRQn = 2,
Pawel Zarembski 0:01f31e923fe2 58 FLEX_INT3_IRQn = 3,
Pawel Zarembski 0:01f31e923fe2 59 FLEX_INT4_IRQn = 4,
Pawel Zarembski 0:01f31e923fe2 60 FLEX_INT5_IRQn = 5,
Pawel Zarembski 0:01f31e923fe2 61 FLEX_INT6_IRQn = 6,
Pawel Zarembski 0:01f31e923fe2 62 FLEX_INT7_IRQn = 7,
Pawel Zarembski 0:01f31e923fe2 63 GINT0_IRQn = 8, /*!< Grouped Interrupt 0 */
Pawel Zarembski 0:01f31e923fe2 64 GINT1_IRQn = 9, /*!< Grouped Interrupt 1 */
Pawel Zarembski 0:01f31e923fe2 65 Reserved0_IRQn = 10, /*!< Reserved Interrupt */
Pawel Zarembski 0:01f31e923fe2 66 Reserved1_IRQn = 11,
Pawel Zarembski 0:01f31e923fe2 67 Reserved2_IRQn = 12,
Pawel Zarembski 0:01f31e923fe2 68 Reserved3_IRQn = 13,
Pawel Zarembski 0:01f31e923fe2 69 SSP1_IRQn = 14, /*!< SSP1 Interrupt */
Pawel Zarembski 0:01f31e923fe2 70 I2C_IRQn = 15, /*!< I2C Interrupt */
Pawel Zarembski 0:01f31e923fe2 71 TIMER_16_0_IRQn = 16, /*!< 16-bit Timer0 Interrupt */
Pawel Zarembski 0:01f31e923fe2 72 TIMER_16_1_IRQn = 17, /*!< 16-bit Timer1 Interrupt */
Pawel Zarembski 0:01f31e923fe2 73 TIMER_32_0_IRQn = 18, /*!< 32-bit Timer0 Interrupt */
Pawel Zarembski 0:01f31e923fe2 74 TIMER_32_1_IRQn = 19, /*!< 32-bit Timer1 Interrupt */
Pawel Zarembski 0:01f31e923fe2 75 SSP0_IRQn = 20, /*!< SSP0 Interrupt */
Pawel Zarembski 0:01f31e923fe2 76 UART_IRQn = 21, /*!< UART Interrupt */
Pawel Zarembski 0:01f31e923fe2 77 USB_IRQn = 22, /*!< USB IRQ Interrupt */
Pawel Zarembski 0:01f31e923fe2 78 USB_FIQn = 23, /*!< USB FIQ Interrupt */
Pawel Zarembski 0:01f31e923fe2 79 ADC_IRQn = 24, /*!< A/D Converter Interrupt */
Pawel Zarembski 0:01f31e923fe2 80 WDT_IRQn = 25, /*!< Watchdog timer Interrupt */
Pawel Zarembski 0:01f31e923fe2 81 BOD_IRQn = 26, /*!< Brown Out Detect(BOD) Interrupt */
Pawel Zarembski 0:01f31e923fe2 82 FMC_IRQn = 27, /*!< Flash Memory Controller Interrupt */
Pawel Zarembski 0:01f31e923fe2 83 Reserved4_IRQn = 28, /*!< Reserved Interrupt */
Pawel Zarembski 0:01f31e923fe2 84 Reserved5_IRQn = 29, /*!< Reserved Interrupt */
Pawel Zarembski 0:01f31e923fe2 85 USBWakeup_IRQn = 30, /*!< USB wakeup Interrupt */
Pawel Zarembski 0:01f31e923fe2 86 Reserved6_IRQn = 31, /*!< Reserved Interrupt */
Pawel Zarembski 0:01f31e923fe2 87 } IRQn_Type;
Pawel Zarembski 0:01f31e923fe2 88
Pawel Zarembski 0:01f31e923fe2 89
Pawel Zarembski 0:01f31e923fe2 90 /** @addtogroup Configuration_of_CMSIS
Pawel Zarembski 0:01f31e923fe2 91 * @{
Pawel Zarembski 0:01f31e923fe2 92 */
Pawel Zarembski 0:01f31e923fe2 93
Pawel Zarembski 0:01f31e923fe2 94 /* Processor and Core Peripheral Section */ /* Configuration of the Cortex-M0 Processor and Core Peripherals */
Pawel Zarembski 0:01f31e923fe2 95
Pawel Zarembski 0:01f31e923fe2 96 #define __MPU_PRESENT 0 /*!< MPU present or not */
Pawel Zarembski 0:01f31e923fe2 97 #define __NVIC_PRIO_BITS 3 /*!< Number of Bits used for Priority Levels */
Pawel Zarembski 0:01f31e923fe2 98 #define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */
Pawel Zarembski 0:01f31e923fe2 99 /** @} */ /* End of group Configuration_of_CMSIS */
Pawel Zarembski 0:01f31e923fe2 100
Pawel Zarembski 0:01f31e923fe2 101 #include "core_cm0.h" /*!< Cortex-M0 processor and core peripherals */
Pawel Zarembski 0:01f31e923fe2 102 #include "system_LPC11Uxx.h" /*!< LPC11Uxx System */
Pawel Zarembski 0:01f31e923fe2 103
Pawel Zarembski 0:01f31e923fe2 104 /** @addtogroup Device_Peripheral_Registers
Pawel Zarembski 0:01f31e923fe2 105 * @{
Pawel Zarembski 0:01f31e923fe2 106 */
Pawel Zarembski 0:01f31e923fe2 107
Pawel Zarembski 0:01f31e923fe2 108
Pawel Zarembski 0:01f31e923fe2 109 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 110 // ----- I2C -----
Pawel Zarembski 0:01f31e923fe2 111 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 112
Pawel Zarembski 0:01f31e923fe2 113
Pawel Zarembski 0:01f31e923fe2 114 /**
Pawel Zarembski 0:01f31e923fe2 115 * @brief Product name title=UM10462 Chapter title=LPC11U1x I2C-bus controller Modification date=3/16/2011 Major revision=0 Minor revision=3 (I2C)
Pawel Zarembski 0:01f31e923fe2 116 */
Pawel Zarembski 0:01f31e923fe2 117
Pawel Zarembski 0:01f31e923fe2 118 typedef struct { /*!< (@ 0x40000000) I2C Structure */
Pawel Zarembski 0:01f31e923fe2 119 __IO uint32_t CONSET; /*!< (@ 0x40000000) I2C Control Set Register */
Pawel Zarembski 0:01f31e923fe2 120 __I uint32_t STAT; /*!< (@ 0x40000004) I2C Status Register */
Pawel Zarembski 0:01f31e923fe2 121 __IO uint32_t DAT; /*!< (@ 0x40000008) I2C Data Register. */
Pawel Zarembski 0:01f31e923fe2 122 __IO uint32_t ADR0; /*!< (@ 0x4000000C) I2C Slave Address Register 0 */
Pawel Zarembski 0:01f31e923fe2 123 __IO uint32_t SCLH; /*!< (@ 0x40000010) SCH Duty Cycle Register High Half Word */
Pawel Zarembski 0:01f31e923fe2 124 __IO uint32_t SCLL; /*!< (@ 0x40000014) SCL Duty Cycle Register Low Half Word */
Pawel Zarembski 0:01f31e923fe2 125 __IO uint32_t CONCLR; /*!< (@ 0x40000018) I2C Control Clear Register*/
Pawel Zarembski 0:01f31e923fe2 126 __IO uint32_t MMCTRL; /*!< (@ 0x4000001C) Monitor mode control register*/
Pawel Zarembski 0:01f31e923fe2 127 __IO uint32_t ADR1; /*!< (@ 0x40000020) I2C Slave Address Register 1*/
Pawel Zarembski 0:01f31e923fe2 128 __IO uint32_t ADR2; /*!< (@ 0x40000024) I2C Slave Address Register 2*/
Pawel Zarembski 0:01f31e923fe2 129 __IO uint32_t ADR3; /*!< (@ 0x40000028) I2C Slave Address Register 3*/
Pawel Zarembski 0:01f31e923fe2 130 __I uint32_t DATA_BUFFER; /*!< (@ 0x4000002C) Data buffer register */
Pawel Zarembski 0:01f31e923fe2 131 union{
Pawel Zarembski 0:01f31e923fe2 132 __IO uint32_t MASK[4]; /*!< (@ 0x40000030) I2C Slave address mask register */
Pawel Zarembski 0:01f31e923fe2 133 struct{
Pawel Zarembski 0:01f31e923fe2 134 __IO uint32_t MASK0;
Pawel Zarembski 0:01f31e923fe2 135 __IO uint32_t MASK1;
Pawel Zarembski 0:01f31e923fe2 136 __IO uint32_t MASK2;
Pawel Zarembski 0:01f31e923fe2 137 __IO uint32_t MASK3;
Pawel Zarembski 0:01f31e923fe2 138 };
Pawel Zarembski 0:01f31e923fe2 139 };
Pawel Zarembski 0:01f31e923fe2 140 } LPC_I2C_Type;
Pawel Zarembski 0:01f31e923fe2 141
Pawel Zarembski 0:01f31e923fe2 142
Pawel Zarembski 0:01f31e923fe2 143 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 144 // ----- WWDT -----
Pawel Zarembski 0:01f31e923fe2 145 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 146
Pawel Zarembski 0:01f31e923fe2 147
Pawel Zarembski 0:01f31e923fe2 148 /**
Pawel Zarembski 0:01f31e923fe2 149 * @brief Product name title=UM10462 Chapter title=LPC11U1x Windowed Watchdog Timer (WWDT) Modification date=3/16/2011 Major revision=0 Minor revision=3 (WWDT)
Pawel Zarembski 0:01f31e923fe2 150 */
Pawel Zarembski 0:01f31e923fe2 151
Pawel Zarembski 0:01f31e923fe2 152 typedef struct { /*!< (@ 0x40004000) WWDT Structure */
Pawel Zarembski 0:01f31e923fe2 153 __IO uint32_t MOD; /*!< (@ 0x40004000) Watchdog mode register*/
Pawel Zarembski 0:01f31e923fe2 154 __IO uint32_t TC; /*!< (@ 0x40004004) Watchdog timer constant register */
Pawel Zarembski 0:01f31e923fe2 155 __IO uint32_t FEED; /*!< (@ 0x40004008) Watchdog feed sequence register */
Pawel Zarembski 0:01f31e923fe2 156 __I uint32_t TV; /*!< (@ 0x4000400C) Watchdog timer value register */
Pawel Zarembski 0:01f31e923fe2 157 __IO uint32_t CLKSEL; /*!< (@ 0x40004010) Watchdog clock select register. */
Pawel Zarembski 0:01f31e923fe2 158 __IO uint32_t WARNINT; /*!< (@ 0x40004014) Watchdog Warning Interrupt compare value. */
Pawel Zarembski 0:01f31e923fe2 159 __IO uint32_t WINDOW; /*!< (@ 0x40004018) Watchdog Window compare value. */
Pawel Zarembski 0:01f31e923fe2 160 } LPC_WWDT_Type;
Pawel Zarembski 0:01f31e923fe2 161
Pawel Zarembski 0:01f31e923fe2 162
Pawel Zarembski 0:01f31e923fe2 163 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 164 // ----- USART -----
Pawel Zarembski 0:01f31e923fe2 165 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 166
Pawel Zarembski 0:01f31e923fe2 167
Pawel Zarembski 0:01f31e923fe2 168 /**
Pawel Zarembski 0:01f31e923fe2 169 * @brief Product name title=UM10462 Chapter title=LPC11U1x USART Modification date=3/16/2011 Major revision=0 Minor revision=3 (USART)
Pawel Zarembski 0:01f31e923fe2 170 */
Pawel Zarembski 0:01f31e923fe2 171
Pawel Zarembski 0:01f31e923fe2 172 typedef struct { /*!< (@ 0x40008000) USART Structure */
Pawel Zarembski 0:01f31e923fe2 173
Pawel Zarembski 0:01f31e923fe2 174 union {
Pawel Zarembski 0:01f31e923fe2 175 __IO uint32_t DLL; /*!< (@ 0x40008000) Divisor Latch LSB. Least significant byte of the baud rate divisor value. The full divisor is used to generate a baud rate from the fractional rate divider. (DLAB=1) */
Pawel Zarembski 0:01f31e923fe2 176 __O uint32_t THR; /*!< (@ 0x40008000) Transmit Holding Register. The next character to be transmitted is written here. (DLAB=0) */
Pawel Zarembski 0:01f31e923fe2 177 __I uint32_t RBR; /*!< (@ 0x40008000) Receiver Buffer Register. Contains the next received character to be read. (DLAB=0) */
Pawel Zarembski 0:01f31e923fe2 178 };
Pawel Zarembski 0:01f31e923fe2 179
Pawel Zarembski 0:01f31e923fe2 180 union {
Pawel Zarembski 0:01f31e923fe2 181 __IO uint32_t IER; /*!< (@ 0x40008004) Interrupt Enable Register. Contains individual interrupt enable bits for the 7 potential USART interrupts. (DLAB=0) */
Pawel Zarembski 0:01f31e923fe2 182 __IO uint32_t DLM; /*!< (@ 0x40008004) Divisor Latch MSB. Most significant byte of the baud rate divisor value. The full divisor is used to generate a baud rate from the fractional rate divider. (DLAB=1) */
Pawel Zarembski 0:01f31e923fe2 183 };
Pawel Zarembski 0:01f31e923fe2 184
Pawel Zarembski 0:01f31e923fe2 185 union {
Pawel Zarembski 0:01f31e923fe2 186 __O uint32_t FCR; /*!< (@ 0x40008008) FIFO Control Register. Controls USART FIFO usage and modes. */
Pawel Zarembski 0:01f31e923fe2 187 __I uint32_t IIR; /*!< (@ 0x40008008) Interrupt ID Register. Identifies which interrupt(s) are pending. */
Pawel Zarembski 0:01f31e923fe2 188 };
Pawel Zarembski 0:01f31e923fe2 189 __IO uint32_t LCR; /*!< (@ 0x4000800C) Line Control Register. Contains controls for frame formatting and break generation. */
Pawel Zarembski 0:01f31e923fe2 190 __IO uint32_t MCR; /*!< (@ 0x40008010) Modem Control Register. */
Pawel Zarembski 0:01f31e923fe2 191 __I uint32_t LSR; /*!< (@ 0x40008014) Line Status Register. Contains flags for transmit and receive status, including line errors. */
Pawel Zarembski 0:01f31e923fe2 192 __I uint32_t MSR; /*!< (@ 0x40008018) Modem Status Register. */
Pawel Zarembski 0:01f31e923fe2 193 __IO uint32_t SCR; /*!< (@ 0x4000801C) Scratch Pad Register. Eight-bit temporary storage for software. */
Pawel Zarembski 0:01f31e923fe2 194 __IO uint32_t ACR; /*!< (@ 0x40008020) Auto-baud Control Register. Contains controls for the auto-baud feature. */
Pawel Zarembski 0:01f31e923fe2 195 __IO uint32_t ICR; /*!< (@ 0x40008024) IrDA Control Register. Enables and configures the IrDA (remote control) mode. */
Pawel Zarembski 0:01f31e923fe2 196 __IO uint32_t FDR; /*!< (@ 0x40008028) Fractional Divider Register. Generates a clock input for the baud rate divider. */
Pawel Zarembski 0:01f31e923fe2 197 __IO uint32_t OSR; /*!< (@ 0x4000802C) Oversampling Register. Controls the degree of oversampling during each bit time. */
Pawel Zarembski 0:01f31e923fe2 198 __IO uint32_t TER; /*!< (@ 0x40008030) Transmit Enable Register. Turns off USART transmitter for use with software flow control. */
Pawel Zarembski 0:01f31e923fe2 199 __I uint32_t RESERVED0[3];
Pawel Zarembski 0:01f31e923fe2 200 __IO uint32_t HDEN; /*!< (@ 0x40008040) Half duplex enable register. */
Pawel Zarembski 0:01f31e923fe2 201 __I uint32_t RESERVED1;
Pawel Zarembski 0:01f31e923fe2 202 __IO uint32_t SCICTRL; /*!< (@ 0x40008048) Smart Card Interface Control register. Enables and configures the Smart Card Interface feature. */
Pawel Zarembski 0:01f31e923fe2 203 __IO uint32_t RS485CTRL; /*!< (@ 0x4000804C) RS-485/EIA-485 Control. Contains controls to configure various aspects of RS-485/EIA-485 modes. */
Pawel Zarembski 0:01f31e923fe2 204 __IO uint32_t RS485ADRMATCH; /*!< (@ 0x40008050) RS-485/EIA-485 address match. Contains the address match value for RS-485/EIA-485 mode. */
Pawel Zarembski 0:01f31e923fe2 205 __IO uint32_t RS485DLY; /*!< (@ 0x40008054) RS-485/EIA-485 direction control delay. */
Pawel Zarembski 0:01f31e923fe2 206 __IO uint32_t SYNCCTRL;
Pawel Zarembski 0:01f31e923fe2 207 } LPC_USART_Type;
Pawel Zarembski 0:01f31e923fe2 208
Pawel Zarembski 0:01f31e923fe2 209
Pawel Zarembski 0:01f31e923fe2 210 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 211 // ----- Timer -----
Pawel Zarembski 0:01f31e923fe2 212 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 213
Pawel Zarembski 0:01f31e923fe2 214
Pawel Zarembski 0:01f31e923fe2 215 /**
Pawel Zarembski 0:01f31e923fe2 216 * @brief Product name title=UM10462 Chapter title=LPC11U1x 32-bitcounter/timers CT32B0/1 Modification date=3/16/2011 Major revision=0 Minor revision=3
Pawel Zarembski 0:01f31e923fe2 217 */
Pawel Zarembski 0:01f31e923fe2 218
Pawel Zarembski 0:01f31e923fe2 219 typedef struct { /*!< (@ 0x40014000) CT32B0 Structure */
Pawel Zarembski 0:01f31e923fe2 220 __IO uint32_t IR; /*!< (@ 0x40014000) Interrupt Register */
Pawel Zarembski 0:01f31e923fe2 221 __IO uint32_t TCR; /*!< (@ 0x40014004) Timer Control Register */
Pawel Zarembski 0:01f31e923fe2 222 __IO uint32_t TC; /*!< (@ 0x40014008) Timer Counter */
Pawel Zarembski 0:01f31e923fe2 223 __IO uint32_t PR; /*!< (@ 0x4001400C) Prescale Register */
Pawel Zarembski 0:01f31e923fe2 224 __IO uint32_t PC; /*!< (@ 0x40014010) Prescale Counter */
Pawel Zarembski 0:01f31e923fe2 225 __IO uint32_t MCR; /*!< (@ 0x40014014) Match Control Register */
Pawel Zarembski 0:01f31e923fe2 226 union {
Pawel Zarembski 0:01f31e923fe2 227 __IO uint32_t MR[4]; /*!< (@ 0x40014018) Match Register */
Pawel Zarembski 0:01f31e923fe2 228 struct{
Pawel Zarembski 0:01f31e923fe2 229 __IO uint32_t MR0; /*!< (@ 0x40018018) Match Register. MR0 */
Pawel Zarembski 0:01f31e923fe2 230 __IO uint32_t MR1; /*!< (@ 0x4001801C) Match Register. MR1 */
Pawel Zarembski 0:01f31e923fe2 231 __IO uint32_t MR2; /*!< (@ 0x40018020) Match Register. MR2 */
Pawel Zarembski 0:01f31e923fe2 232 __IO uint32_t MR3; /*!< (@ 0x40018024) Match Register. MR3 */
Pawel Zarembski 0:01f31e923fe2 233 };
Pawel Zarembski 0:01f31e923fe2 234 };
Pawel Zarembski 0:01f31e923fe2 235 __IO uint32_t CCR; /*!< (@ 0x40014028) Capture Control Register */
Pawel Zarembski 0:01f31e923fe2 236 union{
Pawel Zarembski 0:01f31e923fe2 237 __I uint32_t CR[4]; /*!< (@ 0x4001402C) Capture Register */
Pawel Zarembski 0:01f31e923fe2 238 struct{
Pawel Zarembski 0:01f31e923fe2 239 __I uint32_t CR0; /*!< (@ 0x4001802C) Capture Register. CR 0 */
Pawel Zarembski 0:01f31e923fe2 240 __I uint32_t CR1; /*!< (@ 0x40018030) Capture Register. CR 1 */
Pawel Zarembski 0:01f31e923fe2 241 __I uint32_t CR2; /*!< (@ 0x40018034) Capture Register. CR 2 */
Pawel Zarembski 0:01f31e923fe2 242 __I uint32_t CR3; /*!< (@ 0x40018038) Capture Register. CR 3 */
Pawel Zarembski 0:01f31e923fe2 243 };
Pawel Zarembski 0:01f31e923fe2 244 };
Pawel Zarembski 0:01f31e923fe2 245 __IO uint32_t EMR; /*!< (@ 0x4001403C) External Match Register */
Pawel Zarembski 0:01f31e923fe2 246 __I uint32_t RESERVED0[12];
Pawel Zarembski 0:01f31e923fe2 247 __IO uint32_t CTCR; /*!< (@ 0x40014070) Count Control Register */
Pawel Zarembski 0:01f31e923fe2 248 __IO uint32_t PWMC; /*!< (@ 0x40014074) PWM Control Register */
Pawel Zarembski 0:01f31e923fe2 249 } LPC_CTxxBx_Type;
Pawel Zarembski 0:01f31e923fe2 250
Pawel Zarembski 0:01f31e923fe2 251
Pawel Zarembski 0:01f31e923fe2 252
Pawel Zarembski 0:01f31e923fe2 253 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 254 // ----- ADC -----
Pawel Zarembski 0:01f31e923fe2 255 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 256
Pawel Zarembski 0:01f31e923fe2 257
Pawel Zarembski 0:01f31e923fe2 258 /**
Pawel Zarembski 0:01f31e923fe2 259 * @brief Product name title=UM10462 Chapter title=LPC11U1x ADC Modification date=3/16/2011 Major revision=0 Minor revision=3 (ADC)
Pawel Zarembski 0:01f31e923fe2 260 */
Pawel Zarembski 0:01f31e923fe2 261
Pawel Zarembski 0:01f31e923fe2 262 typedef struct { /*!< (@ 0x4001C000) ADC Structure */
Pawel Zarembski 0:01f31e923fe2 263 __IO uint32_t CR; /*!< (@ 0x4001C000) A/D Control Register */
Pawel Zarembski 0:01f31e923fe2 264 __IO uint32_t GDR; /*!< (@ 0x4001C004) A/D Global Data Register */
Pawel Zarembski 0:01f31e923fe2 265 __I uint32_t RESERVED0[1];
Pawel Zarembski 0:01f31e923fe2 266 __IO uint32_t INTEN; /*!< (@ 0x4001C00C) A/D Interrupt Enable Register */
Pawel Zarembski 0:01f31e923fe2 267 union{
Pawel Zarembski 0:01f31e923fe2 268 __I uint32_t DR[8]; /*!< (@ 0x4001C010) A/D Channel Data Register*/
Pawel Zarembski 0:01f31e923fe2 269 struct{
Pawel Zarembski 0:01f31e923fe2 270 __IO uint32_t DR0; /*!< (@ 0x40020010) A/D Channel Data Register 0*/
Pawel Zarembski 0:01f31e923fe2 271 __IO uint32_t DR1; /*!< (@ 0x40020014) A/D Channel Data Register 1*/
Pawel Zarembski 0:01f31e923fe2 272 __IO uint32_t DR2; /*!< (@ 0x40020018) A/D Channel Data Register 2*/
Pawel Zarembski 0:01f31e923fe2 273 __IO uint32_t DR3; /*!< (@ 0x4002001C) A/D Channel Data Register 3*/
Pawel Zarembski 0:01f31e923fe2 274 __IO uint32_t DR4; /*!< (@ 0x40020020) A/D Channel Data Register 4*/
Pawel Zarembski 0:01f31e923fe2 275 __IO uint32_t DR5; /*!< (@ 0x40020024) A/D Channel Data Register 5*/
Pawel Zarembski 0:01f31e923fe2 276 __IO uint32_t DR6; /*!< (@ 0x40020028) A/D Channel Data Register 6*/
Pawel Zarembski 0:01f31e923fe2 277 __IO uint32_t DR7; /*!< (@ 0x4002002C) A/D Channel Data Register 7*/
Pawel Zarembski 0:01f31e923fe2 278 };
Pawel Zarembski 0:01f31e923fe2 279 };
Pawel Zarembski 0:01f31e923fe2 280 __I uint32_t STAT; /*!< (@ 0x4001C030) A/D Status Register. */
Pawel Zarembski 0:01f31e923fe2 281 } LPC_ADC_Type;
Pawel Zarembski 0:01f31e923fe2 282
Pawel Zarembski 0:01f31e923fe2 283
Pawel Zarembski 0:01f31e923fe2 284 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 285 // ----- PMU -----
Pawel Zarembski 0:01f31e923fe2 286 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 287
Pawel Zarembski 0:01f31e923fe2 288
Pawel Zarembski 0:01f31e923fe2 289 /**
Pawel Zarembski 0:01f31e923fe2 290 * @brief Product name title=UM10462 Chapter title=LPC11U1x Power Management Unit (PMU) Modification date=3/16/2011 Major revision=0 Minor revision=3 (PMU)
Pawel Zarembski 0:01f31e923fe2 291 */
Pawel Zarembski 0:01f31e923fe2 292
Pawel Zarembski 0:01f31e923fe2 293 typedef struct { /*!< (@ 0x40038000) PMU Structure */
Pawel Zarembski 0:01f31e923fe2 294 __IO uint32_t PCON; /*!< (@ 0x40038000) Power control register */
Pawel Zarembski 0:01f31e923fe2 295 union{
Pawel Zarembski 0:01f31e923fe2 296 __IO uint32_t GPREG[4]; /*!< (@ 0x40038004) General purpose register 0 */
Pawel Zarembski 0:01f31e923fe2 297 struct{
Pawel Zarembski 0:01f31e923fe2 298 __IO uint32_t GPREG0; /*!< (@ 0x40038004) General purpose register 0 */
Pawel Zarembski 0:01f31e923fe2 299 __IO uint32_t GPREG1; /*!< (@ 0x40038008) General purpose register 1 */
Pawel Zarembski 0:01f31e923fe2 300 __IO uint32_t GPREG2; /*!< (@ 0x4003800C) General purpose register 2 */
Pawel Zarembski 0:01f31e923fe2 301 __IO uint32_t GPREG3; /*!< (@ 0x40038010) General purpose register 3 */
Pawel Zarembski 0:01f31e923fe2 302 };
Pawel Zarembski 0:01f31e923fe2 303 };
Pawel Zarembski 0:01f31e923fe2 304 } LPC_PMU_Type;
Pawel Zarembski 0:01f31e923fe2 305
Pawel Zarembski 0:01f31e923fe2 306
Pawel Zarembski 0:01f31e923fe2 307 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 308 // ----- FLASHCTRL -----
Pawel Zarembski 0:01f31e923fe2 309 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 310
Pawel Zarembski 0:01f31e923fe2 311
Pawel Zarembski 0:01f31e923fe2 312 /**
Pawel Zarembski 0:01f31e923fe2 313 * @brief Product name title=UM10462 Chapter title=LPC11U1x Flash programming firmware Modification date=3/17/2011 Major revision=0 Minor revision=3 (FLASHCTRL)
Pawel Zarembski 0:01f31e923fe2 314 */
Pawel Zarembski 0:01f31e923fe2 315
Pawel Zarembski 0:01f31e923fe2 316 typedef struct { /*!< (@ 0x4003C000) FLASHCTRL Structure */
Pawel Zarembski 0:01f31e923fe2 317 __I uint32_t RESERVED0[4];
Pawel Zarembski 0:01f31e923fe2 318 __IO uint32_t FLASHCFG; /*!< (@ 0x4003C010) Flash memory access time configuration register */
Pawel Zarembski 0:01f31e923fe2 319 __I uint32_t RESERVED1[3];
Pawel Zarembski 0:01f31e923fe2 320 __IO uint32_t FMSSTART; /*!< (@ 0x4003C020) Signature start address register */
Pawel Zarembski 0:01f31e923fe2 321 __IO uint32_t FMSSTOP; /*!< (@ 0x4003C024) Signature stop-address register */
Pawel Zarembski 0:01f31e923fe2 322 __I uint32_t RESERVED2[1];
Pawel Zarembski 0:01f31e923fe2 323 __I uint32_t FMSW0; /*!< (@ 0x4003C02C) Word 0 [31:0] */
Pawel Zarembski 0:01f31e923fe2 324 __I uint32_t FMSW1; /*!< (@ 0x4003C030) Word 1 [63:32] */
Pawel Zarembski 0:01f31e923fe2 325 __I uint32_t FMSW2; /*!< (@ 0x4003C034) Word 2 [95:64] */
Pawel Zarembski 0:01f31e923fe2 326 __I uint32_t FMSW3; /*!< (@ 0x4003C038) Word 3 [127:96] */
Pawel Zarembski 0:01f31e923fe2 327 __I uint32_t RESERVED3[1001];
Pawel Zarembski 0:01f31e923fe2 328 __I uint32_t FMSTAT; /*!< (@ 0x4003CFE0) Signature generation status register */
Pawel Zarembski 0:01f31e923fe2 329 __I uint32_t RESERVED4[1];
Pawel Zarembski 0:01f31e923fe2 330 __IO uint32_t FMSTATCLR; /*!< (@ 0x4003CFE8) Signature generation status clear register */
Pawel Zarembski 0:01f31e923fe2 331 } LPC_FLASHCTRL_Type;
Pawel Zarembski 0:01f31e923fe2 332
Pawel Zarembski 0:01f31e923fe2 333
Pawel Zarembski 0:01f31e923fe2 334 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 335 // ----- SSP0/1 -----
Pawel Zarembski 0:01f31e923fe2 336 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 337
Pawel Zarembski 0:01f31e923fe2 338
Pawel Zarembski 0:01f31e923fe2 339 /**
Pawel Zarembski 0:01f31e923fe2 340 * @brief Product name title=UM10462 Chapter title=LPC11U1x SSP/SPI Modification date=3/16/2011 Major revision=0 Minor revision=3 (SSP0)
Pawel Zarembski 0:01f31e923fe2 341 */
Pawel Zarembski 0:01f31e923fe2 342
Pawel Zarembski 0:01f31e923fe2 343 typedef struct { /*!< (@ 0x40040000) SSP0 Structure */
Pawel Zarembski 0:01f31e923fe2 344 __IO uint32_t CR0; /*!< (@ 0x40040000) Control Register 0. Selects the serial clock rate, bus type, and data size. */
Pawel Zarembski 0:01f31e923fe2 345 __IO uint32_t CR1; /*!< (@ 0x40040004) Control Register 1. Selects master/slave and other modes. */
Pawel Zarembski 0:01f31e923fe2 346 __IO uint32_t DR; /*!< (@ 0x40040008) Data Register. Writes fill the transmit FIFO, and reads empty the receive FIFO. */
Pawel Zarembski 0:01f31e923fe2 347 __I uint32_t SR; /*!< (@ 0x4004000C) Status Register */
Pawel Zarembski 0:01f31e923fe2 348 __IO uint32_t CPSR; /*!< (@ 0x40040010) Clock Prescale Register */
Pawel Zarembski 0:01f31e923fe2 349 __IO uint32_t IMSC; /*!< (@ 0x40040014) Interrupt Mask Set and Clear Register */
Pawel Zarembski 0:01f31e923fe2 350 __I uint32_t RIS; /*!< (@ 0x40040018) Raw Interrupt Status Register */
Pawel Zarembski 0:01f31e923fe2 351 __I uint32_t MIS; /*!< (@ 0x4004001C) Masked Interrupt Status Register */
Pawel Zarembski 0:01f31e923fe2 352 __IO uint32_t ICR; /*!< (@ 0x40040020) SSPICR Interrupt Clear Register */
Pawel Zarembski 0:01f31e923fe2 353 } LPC_SSPx_Type;
Pawel Zarembski 0:01f31e923fe2 354
Pawel Zarembski 0:01f31e923fe2 355
Pawel Zarembski 0:01f31e923fe2 356
Pawel Zarembski 0:01f31e923fe2 357 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 358 // ----- IOCONFIG -----
Pawel Zarembski 0:01f31e923fe2 359 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 360
Pawel Zarembski 0:01f31e923fe2 361
Pawel Zarembski 0:01f31e923fe2 362 /**
Pawel Zarembski 0:01f31e923fe2 363 * @brief Product name title=UM10462 Chapter title=LPC11U1x I/O configuration Modification date=3/16/2011 Major revision=0 Minor revision=3 (IOCONFIG)
Pawel Zarembski 0:01f31e923fe2 364 */
Pawel Zarembski 0:01f31e923fe2 365
Pawel Zarembski 0:01f31e923fe2 366 typedef struct { /*!< (@ 0x40044000) IOCONFIG Structure */
Pawel Zarembski 0:01f31e923fe2 367 __IO uint32_t RESET_PIO0_0; /*!< (@ 0x40044000) I/O configuration for pin RESET/PIO0_0 */
Pawel Zarembski 0:01f31e923fe2 368 __IO uint32_t PIO0_1; /*!< (@ 0x40044004) I/O configuration for pin PIO0_1/CLKOUT/CT32B0_MAT2/USB_FTOGGLE */
Pawel Zarembski 0:01f31e923fe2 369 __IO uint32_t PIO0_2; /*!< (@ 0x40044008) I/O configuration for pin PIO0_2/SSEL0/CT16B0_CAP0 */
Pawel Zarembski 0:01f31e923fe2 370 __IO uint32_t PIO0_3; /*!< (@ 0x4004400C) I/O configuration for pin PIO0_3/USB_VBUS */
Pawel Zarembski 0:01f31e923fe2 371 __IO uint32_t PIO0_4; /*!< (@ 0x40044010) I/O configuration for pin PIO0_4/SCL */
Pawel Zarembski 0:01f31e923fe2 372 __IO uint32_t PIO0_5; /*!< (@ 0x40044014) I/O configuration for pin PIO0_5/SDA */
Pawel Zarembski 0:01f31e923fe2 373 __IO uint32_t PIO0_6; /*!< (@ 0x40044018) I/O configuration for pin PIO0_6/USB_CONNECT/SCK0 */
Pawel Zarembski 0:01f31e923fe2 374 __IO uint32_t PIO0_7; /*!< (@ 0x4004401C) I/O configuration for pin PIO0_7/CTS */
Pawel Zarembski 0:01f31e923fe2 375 __IO uint32_t PIO0_8; /*!< (@ 0x40044020) I/O configuration for pin PIO0_8/MISO0/CT16B0_MAT0 */
Pawel Zarembski 0:01f31e923fe2 376 __IO uint32_t PIO0_9; /*!< (@ 0x40044024) I/O configuration for pin PIO0_9/MOSI0/CT16B0_MAT1 */
Pawel Zarembski 0:01f31e923fe2 377 __IO uint32_t SWCLK_PIO0_10; /*!< (@ 0x40044028) I/O configuration for pin SWCLK/PIO0_10/ SCK0/CT16B0_MAT2 */
Pawel Zarembski 0:01f31e923fe2 378 __IO uint32_t TDI_PIO0_11; /*!< (@ 0x4004402C) I/O configuration for pin TDI/PIO0_11/AD0/CT32B0_MAT3 */
Pawel Zarembski 0:01f31e923fe2 379 __IO uint32_t TMS_PIO0_12; /*!< (@ 0x40044030) I/O configuration for pin TMS/PIO0_12/AD1/CT32B1_CAP0 */
Pawel Zarembski 0:01f31e923fe2 380 __IO uint32_t TDO_PIO0_13; /*!< (@ 0x40044034) I/O configuration for pin TDO/PIO0_13/AD2/CT32B1_MAT0 */
Pawel Zarembski 0:01f31e923fe2 381 __IO uint32_t TRST_PIO0_14; /*!< (@ 0x40044038) I/O configuration for pin TRST/PIO0_14/AD3/CT32B1_MAT1 */
Pawel Zarembski 0:01f31e923fe2 382 __IO uint32_t SWDIO_PIO0_15; /*!< (@ 0x4004403C) I/O configuration for pin SWDIO/PIO0_15/AD4/CT32B1_MAT2 */
Pawel Zarembski 0:01f31e923fe2 383 __IO uint32_t PIO0_16; /*!< (@ 0x40044040) I/O configuration for pin PIO0_16/AD5/CT32B1_MAT3/ WAKEUP */
Pawel Zarembski 0:01f31e923fe2 384 __IO uint32_t PIO0_17; /*!< (@ 0x40044044) I/O configuration for pin PIO0_17/RTS/CT32B0_CAP0/SCLK */
Pawel Zarembski 0:01f31e923fe2 385 __IO uint32_t PIO0_18; /*!< (@ 0x40044048) I/O configuration for pin PIO0_18/RXD/CT32B0_MAT0 */
Pawel Zarembski 0:01f31e923fe2 386 __IO uint32_t PIO0_19; /*!< (@ 0x4004404C) I/O configuration for pin PIO0_19/TXD/CT32B0_MAT1 */
Pawel Zarembski 0:01f31e923fe2 387 __IO uint32_t PIO0_20; /*!< (@ 0x40044050) I/O configuration for pin PIO0_20/CT16B1_CAP0 */
Pawel Zarembski 0:01f31e923fe2 388 __IO uint32_t PIO0_21; /*!< (@ 0x40044054) I/O configuration for pin PIO0_21/CT16B1_MAT0/MOSI1 */
Pawel Zarembski 0:01f31e923fe2 389 __IO uint32_t PIO0_22; /*!< (@ 0x40044058) I/O configuration for pin PIO0_22/AD6/CT16B1_MAT1/MISO1 */
Pawel Zarembski 0:01f31e923fe2 390 __IO uint32_t PIO0_23; /*!< (@ 0x4004405C) I/O configuration for pin PIO0_23/AD7 */
Pawel Zarembski 0:01f31e923fe2 391 __IO uint32_t PIO1_0; /*!< Offset: 0x060 */
Pawel Zarembski 0:01f31e923fe2 392 __IO uint32_t PIO1_1;
Pawel Zarembski 0:01f31e923fe2 393 __IO uint32_t PIO1_2;
Pawel Zarembski 0:01f31e923fe2 394 __IO uint32_t PIO1_3;
Pawel Zarembski 0:01f31e923fe2 395 __IO uint32_t PIO1_4; /*!< Offset: 0x070 */
Pawel Zarembski 0:01f31e923fe2 396 __IO uint32_t PIO1_5; /*!< (@ 0x40044074) I/O configuration for pin PIO1_5/CT32B1_CAP1 */
Pawel Zarembski 0:01f31e923fe2 397 __IO uint32_t PIO1_6;
Pawel Zarembski 0:01f31e923fe2 398 __IO uint32_t PIO1_7;
Pawel Zarembski 0:01f31e923fe2 399 __IO uint32_t PIO1_8; /*!< Offset: 0x080 */
Pawel Zarembski 0:01f31e923fe2 400 __IO uint32_t PIO1_9;
Pawel Zarembski 0:01f31e923fe2 401 __IO uint32_t PIO1_10;
Pawel Zarembski 0:01f31e923fe2 402 __IO uint32_t PIO1_11;
Pawel Zarembski 0:01f31e923fe2 403 __IO uint32_t PIO1_12; /*!< Offset: 0x090 */
Pawel Zarembski 0:01f31e923fe2 404 __IO uint32_t PIO1_13; /*!< (@ 0x40044094) I/O configuration for pin PIO1_13/DTR/CT16B0_MAT0/TXD */
Pawel Zarembski 0:01f31e923fe2 405 __IO uint32_t PIO1_14; /*!< (@ 0x40044098) I/O configuration for pin PIO1_14/DSR/CT16B0_MAT1/RXD */
Pawel Zarembski 0:01f31e923fe2 406 __IO uint32_t PIO1_15; /*!< (@ 0x4004409C) I/O configuration for pin PIO1_15/DCD/ CT16B0_MAT2/SCK1 */
Pawel Zarembski 0:01f31e923fe2 407 __IO uint32_t PIO1_16; /*!< (@ 0x400440A0) I/O configuration for pin PIO1_16/RI/CT16B0_CAP0 */
Pawel Zarembski 0:01f31e923fe2 408 __IO uint32_t PIO1_17;
Pawel Zarembski 0:01f31e923fe2 409 __IO uint32_t PIO1_18;
Pawel Zarembski 0:01f31e923fe2 410 __IO uint32_t PIO1_19; /*!< (@ 0x400440AC) I/O configuration for pin PIO1_19/DTR/SSEL1 */
Pawel Zarembski 0:01f31e923fe2 411 __IO uint32_t PIO1_20; /*!< (@ 0x400440B0) I/O configuration for pin PIO1_20/DSR/SCK1 */
Pawel Zarembski 0:01f31e923fe2 412 __IO uint32_t PIO1_21; /*!< (@ 0x400440B4) I/O configuration for pin PIO1_21/DCD/MISO1 */
Pawel Zarembski 0:01f31e923fe2 413 __IO uint32_t PIO1_22; /*!< (@ 0x400440B8) I/O configuration for pin PIO1_22/RI/MOSI1 */
Pawel Zarembski 0:01f31e923fe2 414 __IO uint32_t PIO1_23; /*!< (@ 0x400440BC) I/O configuration for pin PIO1_23/CT16B1_MAT1/SSEL1 */
Pawel Zarembski 0:01f31e923fe2 415 __IO uint32_t PIO1_24; /*!< (@ 0x400440C0) I/O configuration for pin PIO1_24/ CT32B0_MAT0 */
Pawel Zarembski 0:01f31e923fe2 416 __IO uint32_t PIO1_25; /*!< (@ 0x400440C4) I/O configuration for pin PIO1_25/CT32B0_MAT1 */
Pawel Zarembski 0:01f31e923fe2 417 __IO uint32_t PIO1_26; /*!< (@ 0x400440C8) I/O configuration for pin PIO1_26/CT32B0_MAT2/ RXD */
Pawel Zarembski 0:01f31e923fe2 418 __IO uint32_t PIO1_27; /*!< (@ 0x400440CC) I/O configuration for pin PIO1_27/CT32B0_MAT3/ TXD */
Pawel Zarembski 0:01f31e923fe2 419 __IO uint32_t PIO1_28; /*!< (@ 0x400440D0) I/O configuration for pin PIO1_28/CT32B0_CAP0/ SCLK */
Pawel Zarembski 0:01f31e923fe2 420 __IO uint32_t PIO1_29; /*!< (@ 0x400440D4) I/O configuration for pin PIO1_29/SCK0/ CT32B0_CAP1 */
Pawel Zarembski 0:01f31e923fe2 421 __IO uint32_t PIO1_30;
Pawel Zarembski 0:01f31e923fe2 422 __IO uint32_t PIO1_31; /*!< (@ 0x400440DC) I/O configuration for pin PIO1_31 */
Pawel Zarembski 0:01f31e923fe2 423 } LPC_IOCON_Type;
Pawel Zarembski 0:01f31e923fe2 424
Pawel Zarembski 0:01f31e923fe2 425
Pawel Zarembski 0:01f31e923fe2 426 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 427 // ----- SYSCON -----
Pawel Zarembski 0:01f31e923fe2 428 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 429
Pawel Zarembski 0:01f31e923fe2 430
Pawel Zarembski 0:01f31e923fe2 431 /**
Pawel Zarembski 0:01f31e923fe2 432 * @brief Product name title=UM10462 Chapter title=LPC11U1x System control block Modification date=3/16/2011 Major revision=0 Minor revision=3 (SYSCON)
Pawel Zarembski 0:01f31e923fe2 433 */
Pawel Zarembski 0:01f31e923fe2 434
Pawel Zarembski 0:01f31e923fe2 435 typedef struct { /*!< (@ 0x40048000) SYSCON Structure */
Pawel Zarembski 0:01f31e923fe2 436 __IO uint32_t SYSMEMREMAP; /*!< (@ 0x40048000) System memory remap */
Pawel Zarembski 0:01f31e923fe2 437 __IO uint32_t PRESETCTRL; /*!< (@ 0x40048004) Peripheral reset control */
Pawel Zarembski 0:01f31e923fe2 438 __IO uint32_t SYSPLLCTRL; /*!< (@ 0x40048008) System PLL control */
Pawel Zarembski 0:01f31e923fe2 439 __I uint32_t SYSPLLSTAT; /*!< (@ 0x4004800C) System PLL status */
Pawel Zarembski 0:01f31e923fe2 440 __IO uint32_t USBPLLCTRL; /*!< (@ 0x40048010) USB PLL control */
Pawel Zarembski 0:01f31e923fe2 441 __I uint32_t USBPLLSTAT; /*!< (@ 0x40048014) USB PLL status */
Pawel Zarembski 0:01f31e923fe2 442 __I uint32_t RESERVED0[2];
Pawel Zarembski 0:01f31e923fe2 443 __IO uint32_t SYSOSCCTRL; /*!< (@ 0x40048020) System oscillator control */
Pawel Zarembski 0:01f31e923fe2 444 __IO uint32_t WDTOSCCTRL; /*!< (@ 0x40048024) Watchdog oscillator control */
Pawel Zarembski 0:01f31e923fe2 445 __I uint32_t RESERVED1[2];
Pawel Zarembski 0:01f31e923fe2 446 __IO uint32_t SYSRSTSTAT; /*!< (@ 0x40048030) System reset status register */
Pawel Zarembski 0:01f31e923fe2 447 __I uint32_t RESERVED2[3];
Pawel Zarembski 0:01f31e923fe2 448 __IO uint32_t SYSPLLCLKSEL; /*!< (@ 0x40048040) System PLL clock source select */
Pawel Zarembski 0:01f31e923fe2 449 __IO uint32_t SYSPLLCLKUEN; /*!< (@ 0x40048044) System PLL clock source update enable */
Pawel Zarembski 0:01f31e923fe2 450 __IO uint32_t USBPLLCLKSEL; /*!< (@ 0x40048048) USB PLL clock source select */
Pawel Zarembski 0:01f31e923fe2 451 __IO uint32_t USBPLLCLKUEN; /*!< (@ 0x4004804C) USB PLL clock source update enable */
Pawel Zarembski 0:01f31e923fe2 452 __I uint32_t RESERVED3[8];
Pawel Zarembski 0:01f31e923fe2 453 __IO uint32_t MAINCLKSEL; /*!< (@ 0x40048070) Main clock source select */
Pawel Zarembski 0:01f31e923fe2 454 __IO uint32_t MAINCLKUEN; /*!< (@ 0x40048074) Main clock source update enable */
Pawel Zarembski 0:01f31e923fe2 455 __IO uint32_t SYSAHBCLKDIV; /*!< (@ 0x40048078) System clock divider */
Pawel Zarembski 0:01f31e923fe2 456 __I uint32_t RESERVED4[1];
Pawel Zarembski 0:01f31e923fe2 457 __IO uint32_t SYSAHBCLKCTRL; /*!< (@ 0x40048080) System clock control */
Pawel Zarembski 0:01f31e923fe2 458 __I uint32_t RESERVED5[4];
Pawel Zarembski 0:01f31e923fe2 459 __IO uint32_t SSP0CLKDIV; /*!< (@ 0x40048094) SSP0 clock divider */
Pawel Zarembski 0:01f31e923fe2 460 __IO uint32_t UARTCLKDIV; /*!< (@ 0x40048098) UART clock divider */
Pawel Zarembski 0:01f31e923fe2 461 __IO uint32_t SSP1CLKDIV; /*!< (@ 0x4004809C) SSP1 clock divider */
Pawel Zarembski 0:01f31e923fe2 462 __I uint32_t RESERVED6[8];
Pawel Zarembski 0:01f31e923fe2 463 __IO uint32_t USBCLKSEL; /*!< (@ 0x400480C0) USB clock source select */
Pawel Zarembski 0:01f31e923fe2 464 __IO uint32_t USBCLKUEN; /*!< (@ 0x400480C4) USB clock source update enable */
Pawel Zarembski 0:01f31e923fe2 465 __IO uint32_t USBCLKDIV; /*!< (@ 0x400480C8) USB clock source divider */
Pawel Zarembski 0:01f31e923fe2 466 __I uint32_t RESERVED7[5];
Pawel Zarembski 0:01f31e923fe2 467 __IO uint32_t CLKOUTSEL; /*!< (@ 0x400480E0) CLKOUT clock source select */
Pawel Zarembski 0:01f31e923fe2 468 __IO uint32_t CLKOUTUEN; /*!< (@ 0x400480E4) CLKOUT clock source update enable */
Pawel Zarembski 0:01f31e923fe2 469 __IO uint32_t CLKOUTDIV; /*!< (@ 0x400480E8) CLKOUT clock divider */
Pawel Zarembski 0:01f31e923fe2 470 __I uint32_t RESERVED8[5];
Pawel Zarembski 0:01f31e923fe2 471 __I uint32_t PIOPORCAP0; /*!< (@ 0x40048100) POR captured PIO status 0 */
Pawel Zarembski 0:01f31e923fe2 472 __I uint32_t PIOPORCAP1; /*!< (@ 0x40048104) POR captured PIO status 1 */
Pawel Zarembski 0:01f31e923fe2 473 __I uint32_t RESERVED9[18];
Pawel Zarembski 0:01f31e923fe2 474 __IO uint32_t BODCTRL; /*!< (@ 0x40048150) Brown-Out Detect */
Pawel Zarembski 0:01f31e923fe2 475 __IO uint32_t SYSTCKCAL; /*!< (@ 0x40048154) System tick counter calibration */
Pawel Zarembski 0:01f31e923fe2 476 __I uint32_t RESERVED10[6];
Pawel Zarembski 0:01f31e923fe2 477 __IO uint32_t IRQLATENCY; /*!< (@ 0x40048170) IQR delay */
Pawel Zarembski 0:01f31e923fe2 478 __IO uint32_t NMISRC; /*!< (@ 0x40048174) NMI Source Control */
Pawel Zarembski 0:01f31e923fe2 479 __IO uint32_t PINTSEL[8]; /*!< (@ 0x40048178) GPIO Pin Interrupt Select register 0 */
Pawel Zarembski 0:01f31e923fe2 480 __IO uint32_t USBCLKCTRL; /*!< (@ 0x40048198) USB clock control */
Pawel Zarembski 0:01f31e923fe2 481 __I uint32_t USBCLKST; /*!< (@ 0x4004819C) USB clock status */
Pawel Zarembski 0:01f31e923fe2 482 __I uint32_t RESERVED11[25];
Pawel Zarembski 0:01f31e923fe2 483 __IO uint32_t STARTERP0; /*!< (@ 0x40048204) Start logic 0 interrupt wake-up enable register 0 */
Pawel Zarembski 0:01f31e923fe2 484 __I uint32_t RESERVED12[3];
Pawel Zarembski 0:01f31e923fe2 485 __IO uint32_t STARTERP1; /*!< (@ 0x40048214) Start logic 1 interrupt wake-up enable register 1 */
Pawel Zarembski 0:01f31e923fe2 486 __I uint32_t RESERVED13[6];
Pawel Zarembski 0:01f31e923fe2 487 __IO uint32_t PDSLEEPCFG; /*!< (@ 0x40048230) Power-down states in deep-sleep mode */
Pawel Zarembski 0:01f31e923fe2 488 __IO uint32_t PDAWAKECFG; /*!< (@ 0x40048234) Power-down states for wake-up from deep-sleep */
Pawel Zarembski 0:01f31e923fe2 489 __IO uint32_t PDRUNCFG; /*!< (@ 0x40048238) Power configuration register */
Pawel Zarembski 0:01f31e923fe2 490 __I uint32_t RESERVED14[110];
Pawel Zarembski 0:01f31e923fe2 491 __I uint32_t DEVICE_ID; /*!< (@ 0x400483F4) Device ID */
Pawel Zarembski 0:01f31e923fe2 492 } LPC_SYSCON_Type;
Pawel Zarembski 0:01f31e923fe2 493
Pawel Zarembski 0:01f31e923fe2 494
Pawel Zarembski 0:01f31e923fe2 495 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 496 // ----- GPIO_PIN_INT -----
Pawel Zarembski 0:01f31e923fe2 497 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 498
Pawel Zarembski 0:01f31e923fe2 499
Pawel Zarembski 0:01f31e923fe2 500 /**
Pawel Zarembski 0:01f31e923fe2 501 * @brief Product name title=UM10462 Chapter title=LPC11U1x GPIO Modification date=3/17/2011 Major revision=0 Minor revision=3 (GPIO_PIN_INT)
Pawel Zarembski 0:01f31e923fe2 502 */
Pawel Zarembski 0:01f31e923fe2 503
Pawel Zarembski 0:01f31e923fe2 504 typedef struct { /*!< (@ 0x4004C000) GPIO_PIN_INT Structure */
Pawel Zarembski 0:01f31e923fe2 505 __IO uint32_t ISEL; /*!< (@ 0x4004C000) Pin Interrupt Mode register */
Pawel Zarembski 0:01f31e923fe2 506 __IO uint32_t IENR; /*!< (@ 0x4004C004) Pin Interrupt Enable (Rising) register */
Pawel Zarembski 0:01f31e923fe2 507 __IO uint32_t SIENR; /*!< (@ 0x4004C008) Set Pin Interrupt Enable (Rising) register */
Pawel Zarembski 0:01f31e923fe2 508 __IO uint32_t CIENR; /*!< (@ 0x4004C00C) Clear Pin Interrupt Enable (Rising) register */
Pawel Zarembski 0:01f31e923fe2 509 __IO uint32_t IENF; /*!< (@ 0x4004C010) Pin Interrupt Enable Falling Edge / Active Level register */
Pawel Zarembski 0:01f31e923fe2 510 __IO uint32_t SIENF; /*!< (@ 0x4004C014) Set Pin Interrupt Enable Falling Edge / Active Level register */
Pawel Zarembski 0:01f31e923fe2 511 __IO uint32_t CIENF; /*!< (@ 0x4004C018) Clear Pin Interrupt Enable Falling Edge / Active Level address */
Pawel Zarembski 0:01f31e923fe2 512 __IO uint32_t RISE; /*!< (@ 0x4004C01C) Pin Interrupt Rising Edge register */
Pawel Zarembski 0:01f31e923fe2 513 __IO uint32_t FALL; /*!< (@ 0x4004C020) Pin Interrupt Falling Edge register */
Pawel Zarembski 0:01f31e923fe2 514 __IO uint32_t IST; /*!< (@ 0x4004C024) Pin Interrupt Status register */
Pawel Zarembski 0:01f31e923fe2 515 } LPC_GPIO_PIN_INT_Type;
Pawel Zarembski 0:01f31e923fe2 516
Pawel Zarembski 0:01f31e923fe2 517
Pawel Zarembski 0:01f31e923fe2 518 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 519 // ----- GPIO_GROUP_INT0/1 -----
Pawel Zarembski 0:01f31e923fe2 520 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 521
Pawel Zarembski 0:01f31e923fe2 522
Pawel Zarembski 0:01f31e923fe2 523 /**
Pawel Zarembski 0:01f31e923fe2 524 * @brief Product name title=UM10462 Chapter title=LPC11U1x GPIO Modification date=3/17/2011 Major revision=0 Minor revision=3 (GPIO_GROUP_INT0)
Pawel Zarembski 0:01f31e923fe2 525 */
Pawel Zarembski 0:01f31e923fe2 526
Pawel Zarembski 0:01f31e923fe2 527 typedef struct { /*!< (@ 0x4005C000) GPIO_GROUP_INT0 Structure */
Pawel Zarembski 0:01f31e923fe2 528 __IO uint32_t CTRL; /*!< (@ 0x4005C000) GPIO grouped interrupt control register */
Pawel Zarembski 0:01f31e923fe2 529 __I uint32_t RESERVED0[7];
Pawel Zarembski 0:01f31e923fe2 530 __IO uint32_t PORT_POL[2]; /*!< (@ 0x4005C020) GPIO grouped interrupt port 0 polarity register */
Pawel Zarembski 0:01f31e923fe2 531 __I uint32_t RESERVED1[6];
Pawel Zarembski 0:01f31e923fe2 532 __IO uint32_t PORT_ENA[2]; /*!< (@ 0x4005C040) GPIO grouped interrupt port 0/1 enable register */
Pawel Zarembski 0:01f31e923fe2 533 } LPC_GPIO_GROUP_INTx_Type;
Pawel Zarembski 0:01f31e923fe2 534
Pawel Zarembski 0:01f31e923fe2 535
Pawel Zarembski 0:01f31e923fe2 536
Pawel Zarembski 0:01f31e923fe2 537 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 538 // ----- USB -----
Pawel Zarembski 0:01f31e923fe2 539 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 540
Pawel Zarembski 0:01f31e923fe2 541
Pawel Zarembski 0:01f31e923fe2 542 /**
Pawel Zarembski 0:01f31e923fe2 543 * @brief Product name title=UM10462 Chapter title=LPC11U1x USB2.0device controller Modification date=3/16/2011 Major revision=0 Minor revision=3 (USB)
Pawel Zarembski 0:01f31e923fe2 544 */
Pawel Zarembski 0:01f31e923fe2 545
Pawel Zarembski 0:01f31e923fe2 546 typedef struct { /*!< (@ 0x40080000) USB Structure */
Pawel Zarembski 0:01f31e923fe2 547 __IO uint32_t DEVCMDSTAT; /*!< (@ 0x40080000) USB Device Command/Status register */
Pawel Zarembski 0:01f31e923fe2 548 __IO uint32_t INFO; /*!< (@ 0x40080004) USB Info register */
Pawel Zarembski 0:01f31e923fe2 549 __IO uint32_t EPLISTSTART; /*!< (@ 0x40080008) USB EP Command/Status List start address */
Pawel Zarembski 0:01f31e923fe2 550 __IO uint32_t DATABUFSTART; /*!< (@ 0x4008000C) USB Data buffer start address */
Pawel Zarembski 0:01f31e923fe2 551 __IO uint32_t LPM; /*!< (@ 0x40080010) Link Power Management register */
Pawel Zarembski 0:01f31e923fe2 552 __IO uint32_t EPSKIP; /*!< (@ 0x40080014) USB Endpoint skip */
Pawel Zarembski 0:01f31e923fe2 553 __IO uint32_t EPINUSE; /*!< (@ 0x40080018) USB Endpoint Buffer in use */
Pawel Zarembski 0:01f31e923fe2 554 __IO uint32_t EPBUFCFG; /*!< (@ 0x4008001C) USB Endpoint Buffer Configuration register */
Pawel Zarembski 0:01f31e923fe2 555 __IO uint32_t INTSTAT; /*!< (@ 0x40080020) USB interrupt status register */
Pawel Zarembski 0:01f31e923fe2 556 __IO uint32_t INTEN; /*!< (@ 0x40080024) USB interrupt enable register */
Pawel Zarembski 0:01f31e923fe2 557 __IO uint32_t INTSETSTAT; /*!< (@ 0x40080028) USB set interrupt status register */
Pawel Zarembski 0:01f31e923fe2 558 __IO uint32_t INTROUTING; /*!< (@ 0x4008002C) USB interrupt routing register */
Pawel Zarembski 0:01f31e923fe2 559 __I uint32_t RESERVED0[1];
Pawel Zarembski 0:01f31e923fe2 560 __I uint32_t EPTOGGLE; /*!< (@ 0x40080034) USB Endpoint toggle register */
Pawel Zarembski 0:01f31e923fe2 561 } LPC_USB_Type;
Pawel Zarembski 0:01f31e923fe2 562
Pawel Zarembski 0:01f31e923fe2 563
Pawel Zarembski 0:01f31e923fe2 564 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 565 // ----- GPIO_PORT -----
Pawel Zarembski 0:01f31e923fe2 566 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 567
Pawel Zarembski 0:01f31e923fe2 568
Pawel Zarembski 0:01f31e923fe2 569 /**
Pawel Zarembski 0:01f31e923fe2 570 * @brief Product name title=UM10462 Chapter title=LPC11U1x GPIO Modification date=3/17/2011 Major revision=0 Minor revision=3 (GPIO_PORT)
Pawel Zarembski 0:01f31e923fe2 571 */
Pawel Zarembski 0:01f31e923fe2 572
Pawel Zarembski 0:01f31e923fe2 573 typedef struct {
Pawel Zarembski 0:01f31e923fe2 574 union {
Pawel Zarembski 0:01f31e923fe2 575 struct {
Pawel Zarembski 0:01f31e923fe2 576 __IO uint8_t B0[32]; /*!< (@ 0x50000000) Byte pin registers port 0; pins PIO0_0 to PIO0_31 */
Pawel Zarembski 0:01f31e923fe2 577 __IO uint8_t B1[32]; /*!< (@ 0x50000020) Byte pin registers port 1 */
Pawel Zarembski 0:01f31e923fe2 578 };
Pawel Zarembski 0:01f31e923fe2 579 __IO uint8_t B[64]; /*!< (@ 0x50000000) Byte pin registers port 0/1 */
Pawel Zarembski 0:01f31e923fe2 580 };
Pawel Zarembski 0:01f31e923fe2 581 __I uint32_t RESERVED0[1008];
Pawel Zarembski 0:01f31e923fe2 582 union {
Pawel Zarembski 0:01f31e923fe2 583 struct {
Pawel Zarembski 0:01f31e923fe2 584 __IO uint32_t W0[32]; /*!< (@ 0x50001000) Word pin registers port 0 */
Pawel Zarembski 0:01f31e923fe2 585 __IO uint32_t W1[32]; /*!< (@ 0x50001080) Word pin registers port 1 */
Pawel Zarembski 0:01f31e923fe2 586 };
Pawel Zarembski 0:01f31e923fe2 587 __IO uint32_t W[64]; /*!< (@ 0x50001000) Word pin registers port 0/1 */
Pawel Zarembski 0:01f31e923fe2 588 };
Pawel Zarembski 0:01f31e923fe2 589 uint32_t RESERVED1[960];
Pawel Zarembski 0:01f31e923fe2 590 __IO uint32_t DIR[2]; /* 0x2000 */
Pawel Zarembski 0:01f31e923fe2 591 uint32_t RESERVED2[30];
Pawel Zarembski 0:01f31e923fe2 592 __IO uint32_t MASK[2]; /* 0x2080 */
Pawel Zarembski 0:01f31e923fe2 593 uint32_t RESERVED3[30];
Pawel Zarembski 0:01f31e923fe2 594 __IO uint32_t PIN[2]; /* 0x2100 */
Pawel Zarembski 0:01f31e923fe2 595 uint32_t RESERVED4[30];
Pawel Zarembski 0:01f31e923fe2 596 __IO uint32_t MPIN[2]; /* 0x2180 */
Pawel Zarembski 0:01f31e923fe2 597 uint32_t RESERVED5[30];
Pawel Zarembski 0:01f31e923fe2 598 __IO uint32_t SET[2]; /* 0x2200 */
Pawel Zarembski 0:01f31e923fe2 599 uint32_t RESERVED6[30];
Pawel Zarembski 0:01f31e923fe2 600 __O uint32_t CLR[2]; /* 0x2280 */
Pawel Zarembski 0:01f31e923fe2 601 uint32_t RESERVED7[30];
Pawel Zarembski 0:01f31e923fe2 602 __O uint32_t NOT[2]; /* 0x2300 */
Pawel Zarembski 0:01f31e923fe2 603 } LPC_GPIO_Type;
Pawel Zarembski 0:01f31e923fe2 604
Pawel Zarembski 0:01f31e923fe2 605
Pawel Zarembski 0:01f31e923fe2 606 #if defined ( __CC_ARM )
Pawel Zarembski 0:01f31e923fe2 607 #pragma no_anon_unions
Pawel Zarembski 0:01f31e923fe2 608 #endif
Pawel Zarembski 0:01f31e923fe2 609
Pawel Zarembski 0:01f31e923fe2 610
Pawel Zarembski 0:01f31e923fe2 611 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 612 // ----- Peripheral memory map -----
Pawel Zarembski 0:01f31e923fe2 613 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 614
Pawel Zarembski 0:01f31e923fe2 615 #define LPC_I2C_BASE (0x40000000)
Pawel Zarembski 0:01f31e923fe2 616 #define LPC_WWDT_BASE (0x40004000)
Pawel Zarembski 0:01f31e923fe2 617 #define LPC_USART_BASE (0x40008000)
Pawel Zarembski 0:01f31e923fe2 618 #define LPC_CT16B0_BASE (0x4000C000)
Pawel Zarembski 0:01f31e923fe2 619 #define LPC_CT16B1_BASE (0x40010000)
Pawel Zarembski 0:01f31e923fe2 620 #define LPC_CT32B0_BASE (0x40014000)
Pawel Zarembski 0:01f31e923fe2 621 #define LPC_CT32B1_BASE (0x40018000)
Pawel Zarembski 0:01f31e923fe2 622 #define LPC_ADC_BASE (0x4001C000)
Pawel Zarembski 0:01f31e923fe2 623 #define LPC_PMU_BASE (0x40038000)
Pawel Zarembski 0:01f31e923fe2 624 #define LPC_FLASHCTRL_BASE (0x4003C000)
Pawel Zarembski 0:01f31e923fe2 625 #define LPC_SSP0_BASE (0x40040000)
Pawel Zarembski 0:01f31e923fe2 626 #define LPC_SSP1_BASE (0x40058000)
Pawel Zarembski 0:01f31e923fe2 627 #define LPC_IOCON_BASE (0x40044000)
Pawel Zarembski 0:01f31e923fe2 628 #define LPC_SYSCON_BASE (0x40048000)
Pawel Zarembski 0:01f31e923fe2 629 #define LPC_GPIO_PIN_INT_BASE (0x4004C000)
Pawel Zarembski 0:01f31e923fe2 630 #define LPC_GPIO_GROUP_INT0_BASE (0x4005C000)
Pawel Zarembski 0:01f31e923fe2 631 #define LPC_GPIO_GROUP_INT1_BASE (0x40060000)
Pawel Zarembski 0:01f31e923fe2 632 #define LPC_USB_BASE (0x40080000)
Pawel Zarembski 0:01f31e923fe2 633 #define LPC_GPIO_BASE (0x50000000)
Pawel Zarembski 0:01f31e923fe2 634
Pawel Zarembski 0:01f31e923fe2 635
Pawel Zarembski 0:01f31e923fe2 636 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 637 // ----- Peripheral declaration -----
Pawel Zarembski 0:01f31e923fe2 638 // ------------------------------------------------------------------------------------------------
Pawel Zarembski 0:01f31e923fe2 639
Pawel Zarembski 0:01f31e923fe2 640 #define LPC_I2C ((LPC_I2C_Type *) LPC_I2C_BASE)
Pawel Zarembski 0:01f31e923fe2 641 #define LPC_WWDT ((LPC_WWDT_Type *) LPC_WWDT_BASE)
Pawel Zarembski 0:01f31e923fe2 642 #define LPC_USART ((LPC_USART_Type *) LPC_USART_BASE)
Pawel Zarembski 0:01f31e923fe2 643 #define LPC_CT16B0 ((LPC_CTxxBx_Type *) LPC_CT16B0_BASE)
Pawel Zarembski 0:01f31e923fe2 644 #define LPC_CT16B1 ((LPC_CTxxBx_Type *) LPC_CT16B1_BASE)
Pawel Zarembski 0:01f31e923fe2 645 #define LPC_CT32B0 ((LPC_CTxxBx_Type *) LPC_CT32B0_BASE)
Pawel Zarembski 0:01f31e923fe2 646 #define LPC_CT32B1 ((LPC_CTxxBx_Type *) LPC_CT32B1_BASE)
Pawel Zarembski 0:01f31e923fe2 647 #define LPC_ADC ((LPC_ADC_Type *) LPC_ADC_BASE)
Pawel Zarembski 0:01f31e923fe2 648 #define LPC_PMU ((LPC_PMU_Type *) LPC_PMU_BASE)
Pawel Zarembski 0:01f31e923fe2 649 #define LPC_FLASHCTRL ((LPC_FLASHCTRL_Type *) LPC_FLASHCTRL_BASE)
Pawel Zarembski 0:01f31e923fe2 650 #define LPC_SSP0 ((LPC_SSPx_Type *) LPC_SSP0_BASE)
Pawel Zarembski 0:01f31e923fe2 651 #define LPC_SSP1 ((LPC_SSPx_Type *) LPC_SSP1_BASE)
Pawel Zarembski 0:01f31e923fe2 652 #define LPC_IOCON ((LPC_IOCON_Type *) LPC_IOCON_BASE)
Pawel Zarembski 0:01f31e923fe2 653 #define LPC_SYSCON ((LPC_SYSCON_Type *) LPC_SYSCON_BASE)
Pawel Zarembski 0:01f31e923fe2 654 #define LPC_GPIO_PIN_INT ((LPC_GPIO_PIN_INT_Type *) LPC_GPIO_PIN_INT_BASE)
Pawel Zarembski 0:01f31e923fe2 655 #define LPC_GPIO_GROUP_INT0 ((LPC_GPIO_GROUP_INTx_Type*) LPC_GPIO_GROUP_INT0_BASE)
Pawel Zarembski 0:01f31e923fe2 656 #define LPC_GPIO_GROUP_INT1 ((LPC_GPIO_GROUP_INTx_Type*) LPC_GPIO_GROUP_INT1_BASE)
Pawel Zarembski 0:01f31e923fe2 657 #define LPC_USB ((LPC_USB_Type *) LPC_USB_BASE)
Pawel Zarembski 0:01f31e923fe2 658 #define LPC_GPIO ((LPC_GPIO_Type *) LPC_GPIO_BASE)
Pawel Zarembski 0:01f31e923fe2 659
Pawel Zarembski 0:01f31e923fe2 660
Pawel Zarembski 0:01f31e923fe2 661 /** @} */ /* End of group Device_Peripheral_Registers */
Pawel Zarembski 0:01f31e923fe2 662 /** @} */ /* End of group (null) */
Pawel Zarembski 0:01f31e923fe2 663 /** @} */ /* End of group LPC11Uxx */
Pawel Zarembski 0:01f31e923fe2 664
Pawel Zarembski 0:01f31e923fe2 665 #ifdef __cplusplus
Pawel Zarembski 0:01f31e923fe2 666 }
Pawel Zarembski 0:01f31e923fe2 667 #endif
Pawel Zarembski 0:01f31e923fe2 668
Pawel Zarembski 0:01f31e923fe2 669
Pawel Zarembski 0:01f31e923fe2 670 #endif // __LPC11UXX_H__