123

Dependencies:   mbed

Fork of LG by igor Apu

Committer:
Kovalev_D
Date:
Wed Feb 03 10:44:42 2016 +0300
Revision:
22:12e6183f04d4
[thyz

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kovalev_D 22:12e6183f04d4 1 /******************************************************************************
Kovalev_D 22:12e6183f04d4 2 * @file: LPC17xx.h
Kovalev_D 22:12e6183f04d4 3 * @purpose: CMSIS Cortex-M3 Core Peripheral Access Layer Header File for
Kovalev_D 22:12e6183f04d4 4 * NXP LPC17xx Device Series
Kovalev_D 22:12e6183f04d4 5 * @version: V1.10
Kovalev_D 22:12e6183f04d4 6 * @date: 24. September 2010
Kovalev_D 22:12e6183f04d4 7 *----------------------------------------------------------------------------
Kovalev_D 22:12e6183f04d4 8 *
Kovalev_D 22:12e6183f04d4 9 * @note
Kovalev_D 22:12e6183f04d4 10 * Copyright (C) 2010 ARM Limited. All rights reserved.
Kovalev_D 22:12e6183f04d4 11 *
Kovalev_D 22:12e6183f04d4 12 * @par
Kovalev_D 22:12e6183f04d4 13 * ARM Limited (ARM) is supplying this software for use with Cortex-M3
Kovalev_D 22:12e6183f04d4 14 * processor based microcontrollers. This file can be freely distributed
Kovalev_D 22:12e6183f04d4 15 * within development tools that are supporting such ARM based processors.
Kovalev_D 22:12e6183f04d4 16 *
Kovalev_D 22:12e6183f04d4 17 * @par
Kovalev_D 22:12e6183f04d4 18 * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
Kovalev_D 22:12e6183f04d4 19 * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
Kovalev_D 22:12e6183f04d4 20 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
Kovalev_D 22:12e6183f04d4 21 * ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
Kovalev_D 22:12e6183f04d4 22 * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
Kovalev_D 22:12e6183f04d4 23 *
Kovalev_D 22:12e6183f04d4 24 ******************************************************************************/
Kovalev_D 22:12e6183f04d4 25
Kovalev_D 22:12e6183f04d4 26
Kovalev_D 22:12e6183f04d4 27 #ifndef __LPC17xx_H__
Kovalev_D 22:12e6183f04d4 28 #define __LPC17xx_H__
Kovalev_D 22:12e6183f04d4 29
Kovalev_D 22:12e6183f04d4 30 /*
Kovalev_D 22:12e6183f04d4 31 * ==========================================================================
Kovalev_D 22:12e6183f04d4 32 * ---------- Interrupt Number Definition -----------------------------------
Kovalev_D 22:12e6183f04d4 33 * ==========================================================================
Kovalev_D 22:12e6183f04d4 34 */
Kovalev_D 22:12e6183f04d4 35
Kovalev_D 22:12e6183f04d4 36 /** @addtogroup LPC17xx_System
Kovalev_D 22:12e6183f04d4 37 * @{
Kovalev_D 22:12e6183f04d4 38 */
Kovalev_D 22:12e6183f04d4 39
Kovalev_D 22:12e6183f04d4 40 /** @brief IRQ interrupt source definition */
Kovalev_D 22:12e6183f04d4 41 typedef enum IRQn
Kovalev_D 22:12e6183f04d4 42 {
Kovalev_D 22:12e6183f04d4 43 /****** Cortex-M3 Processor Exceptions Numbers ***************************************************/
Kovalev_D 22:12e6183f04d4 44 NonMaskableInt_IRQn = -14, /*!< 2 Non Maskable Interrupt */
Kovalev_D 22:12e6183f04d4 45 MemoryManagement_IRQn = -12, /*!< 4 Cortex-M3 Memory Management Interrupt */
Kovalev_D 22:12e6183f04d4 46 BusFault_IRQn = -11, /*!< 5 Cortex-M3 Bus Fault Interrupt */
Kovalev_D 22:12e6183f04d4 47 UsageFault_IRQn = -10, /*!< 6 Cortex-M3 Usage Fault Interrupt */
Kovalev_D 22:12e6183f04d4 48 SVCall_IRQn = -5, /*!< 11 Cortex-M3 SV Call Interrupt */
Kovalev_D 22:12e6183f04d4 49 DebugMonitor_IRQn = -4, /*!< 12 Cortex-M3 Debug Monitor Interrupt */
Kovalev_D 22:12e6183f04d4 50 PendSV_IRQn = -2, /*!< 14 Cortex-M3 Pend SV Interrupt */
Kovalev_D 22:12e6183f04d4 51 SysTick_IRQn = -1, /*!< 15 Cortex-M3 System Tick Interrupt */
Kovalev_D 22:12e6183f04d4 52
Kovalev_D 22:12e6183f04d4 53 /****** LPC17xx Specific Interrupt Numbers *******************************************************/
Kovalev_D 22:12e6183f04d4 54 WDT_IRQn = 0, /*!< Watchdog Timer Interrupt */
Kovalev_D 22:12e6183f04d4 55 TIMER0_IRQn = 1, /*!< Timer0 Interrupt */
Kovalev_D 22:12e6183f04d4 56 TIMER1_IRQn = 2, /*!< Timer1 Interrupt */
Kovalev_D 22:12e6183f04d4 57 TIMER2_IRQn = 3, /*!< Timer2 Interrupt */
Kovalev_D 22:12e6183f04d4 58 TIMER3_IRQn = 4, /*!< Timer3 Interrupt */
Kovalev_D 22:12e6183f04d4 59 UART0_IRQn = 5, /*!< UART0 Interrupt */
Kovalev_D 22:12e6183f04d4 60 UART1_IRQn = 6, /*!< UART1 Interrupt */
Kovalev_D 22:12e6183f04d4 61 UART2_IRQn = 7, /*!< UART2 Interrupt */
Kovalev_D 22:12e6183f04d4 62 UART3_IRQn = 8, /*!< UART3 Interrupt */
Kovalev_D 22:12e6183f04d4 63 PWM1_IRQn = 9, /*!< PWM1 Interrupt */
Kovalev_D 22:12e6183f04d4 64 I2C0_IRQn = 10, /*!< I2C0 Interrupt */
Kovalev_D 22:12e6183f04d4 65 I2C1_IRQn = 11, /*!< I2C1 Interrupt */
Kovalev_D 22:12e6183f04d4 66 I2C2_IRQn = 12, /*!< I2C2 Interrupt */
Kovalev_D 22:12e6183f04d4 67 SPI_IRQn = 13, /*!< SPI Interrupt */
Kovalev_D 22:12e6183f04d4 68 SSP0_IRQn = 14, /*!< SSP0 Interrupt */
Kovalev_D 22:12e6183f04d4 69 SSP1_IRQn = 15, /*!< SSP1 Interrupt */
Kovalev_D 22:12e6183f04d4 70 PLL0_IRQn = 16, /*!< PLL0 Lock (Main PLL) Interrupt */
Kovalev_D 22:12e6183f04d4 71 RTC_IRQn = 17, /*!< Real Time Clock Interrupt */
Kovalev_D 22:12e6183f04d4 72 EINT0_IRQn = 18, /*!< External Interrupt 0 Interrupt */
Kovalev_D 22:12e6183f04d4 73 EINT1_IRQn = 19, /*!< External Interrupt 1 Interrupt */
Kovalev_D 22:12e6183f04d4 74 EINT2_IRQn = 20, /*!< External Interrupt 2 Interrupt */
Kovalev_D 22:12e6183f04d4 75 EINT3_IRQn = 21, /*!< External Interrupt 3 Interrupt */
Kovalev_D 22:12e6183f04d4 76 ADC_IRQn = 22, /*!< A/D Converter Interrupt */
Kovalev_D 22:12e6183f04d4 77 BOD_IRQn = 23, /*!< Brown-Out Detect Interrupt */
Kovalev_D 22:12e6183f04d4 78 USB_IRQn = 24, /*!< USB Interrupt */
Kovalev_D 22:12e6183f04d4 79 CAN_IRQn = 25, /*!< CAN Interrupt */
Kovalev_D 22:12e6183f04d4 80 DMA_IRQn = 26, /*!< General Purpose DMA Interrupt */
Kovalev_D 22:12e6183f04d4 81 I2S_IRQn = 27, /*!< I2S Interrupt */
Kovalev_D 22:12e6183f04d4 82 ENET_IRQn = 28, /*!< Ethernet Interrupt */
Kovalev_D 22:12e6183f04d4 83 RIT_IRQn = 29, /*!< Repetitive Interrupt Timer Interrupt */
Kovalev_D 22:12e6183f04d4 84 MCPWM_IRQn = 30, /*!< Motor Control PWM Interrupt */
Kovalev_D 22:12e6183f04d4 85 QEI_IRQn = 31, /*!< Quadrature Encoder Interface Interrupt */
Kovalev_D 22:12e6183f04d4 86 PLL1_IRQn = 32, /*!< PLL1 Lock (USB PLL) Interrupt */
Kovalev_D 22:12e6183f04d4 87 USBActivity_IRQn = 33, /*!< USB Activity Interrupt(For wakeup only) */
Kovalev_D 22:12e6183f04d4 88 CANActivity_IRQn = 34 /*!< CAN Activity Interrupt(For wakeup only) */
Kovalev_D 22:12e6183f04d4 89 } IRQn_Type;
Kovalev_D 22:12e6183f04d4 90
Kovalev_D 22:12e6183f04d4 91
Kovalev_D 22:12e6183f04d4 92 /*
Kovalev_D 22:12e6183f04d4 93 * ==========================================================================
Kovalev_D 22:12e6183f04d4 94 * ----------- Processor and Core Peripheral Section ------------------------
Kovalev_D 22:12e6183f04d4 95 * ==========================================================================
Kovalev_D 22:12e6183f04d4 96 */
Kovalev_D 22:12e6183f04d4 97
Kovalev_D 22:12e6183f04d4 98 /* Configuration of the Cortex-M3 Processor and Core Peripherals */
Kovalev_D 22:12e6183f04d4 99 #define __MPU_PRESENT 1 /*!< MPU present or not */
Kovalev_D 22:12e6183f04d4 100 #define __NVIC_PRIO_BITS 5 /*!< Number of Bits used for Priority Levels */
Kovalev_D 22:12e6183f04d4 101 #define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */
Kovalev_D 22:12e6183f04d4 102
Kovalev_D 22:12e6183f04d4 103
Kovalev_D 22:12e6183f04d4 104 #include "core_cm3.h" /* Cortex-M3 processor and core peripherals */
Kovalev_D 22:12e6183f04d4 105 #include "system_LPC17xx.h" /* System Header */
Kovalev_D 22:12e6183f04d4 106
Kovalev_D 22:12e6183f04d4 107
Kovalev_D 22:12e6183f04d4 108 /******************************************************************************/
Kovalev_D 22:12e6183f04d4 109 /* Device Specific Peripheral registers structures */
Kovalev_D 22:12e6183f04d4 110 /******************************************************************************/
Kovalev_D 22:12e6183f04d4 111
Kovalev_D 22:12e6183f04d4 112 #if defined ( __CC_ARM )
Kovalev_D 22:12e6183f04d4 113 #pragma anon_unions
Kovalev_D 22:12e6183f04d4 114 #endif
Kovalev_D 22:12e6183f04d4 115
Kovalev_D 22:12e6183f04d4 116 /*------------- System Control (SC) ------------------------------------------*/
Kovalev_D 22:12e6183f04d4 117 /** @brief System Control (SC) register structure definition */
Kovalev_D 22:12e6183f04d4 118 typedef struct
Kovalev_D 22:12e6183f04d4 119 {
Kovalev_D 22:12e6183f04d4 120 __IO uint32_t FLASHCFG; /*!< Offset: 0x000 (R/W) Flash Accelerator Configuration Register */
Kovalev_D 22:12e6183f04d4 121 uint32_t RESERVED0[31];
Kovalev_D 22:12e6183f04d4 122 __IO uint32_t PLL0CON; /*!< Offset: 0x080 (R/W) PLL0 Control Register */
Kovalev_D 22:12e6183f04d4 123 __IO uint32_t PLL0CFG; /*!< Offset: 0x084 (R/W) PLL0 Configuration Register */
Kovalev_D 22:12e6183f04d4 124 __I uint32_t PLL0STAT; /*!< Offset: 0x088 (R/ ) PLL0 Status Register */
Kovalev_D 22:12e6183f04d4 125 __O uint32_t PLL0FEED; /*!< Offset: 0x08C ( /W) PLL0 Feed Register */
Kovalev_D 22:12e6183f04d4 126 uint32_t RESERVED1[4];
Kovalev_D 22:12e6183f04d4 127 __IO uint32_t PLL1CON; /*!< Offset: 0x0A0 (R/W) PLL1 Control Register */
Kovalev_D 22:12e6183f04d4 128 __IO uint32_t PLL1CFG; /*!< Offset: 0x0A4 (R/W) PLL1 Configuration Register */
Kovalev_D 22:12e6183f04d4 129 __I uint32_t PLL1STAT; /*!< Offset: 0x0A8 (R/ ) PLL1 Status Register */
Kovalev_D 22:12e6183f04d4 130 __O uint32_t PLL1FEED; /*!< Offset: 0x0AC ( /W) PLL1 Feed Register */
Kovalev_D 22:12e6183f04d4 131 uint32_t RESERVED2[4];
Kovalev_D 22:12e6183f04d4 132 __IO uint32_t PCON; /*!< Offset: 0x0C0 (R/W) Power Control Register */
Kovalev_D 22:12e6183f04d4 133 __IO uint32_t PCONP; /*!< Offset: 0x0C4 (R/W) Power Control for Peripherals Register */
Kovalev_D 22:12e6183f04d4 134 uint32_t RESERVED3[15];
Kovalev_D 22:12e6183f04d4 135 __IO uint32_t CCLKCFG; /*!< Offset: 0x104 (R/W) CPU Clock Configure Register */
Kovalev_D 22:12e6183f04d4 136 __IO uint32_t USBCLKCFG; /*!< Offset: 0x108 (R/W) USB Clock Configure Register */
Kovalev_D 22:12e6183f04d4 137 __IO uint32_t CLKSRCSEL; /*!< Offset: 0x10C (R/W) Clock Source Select Register */
Kovalev_D 22:12e6183f04d4 138 __IO uint32_t CANSLEEPCLR; /*!< Offset: 0x110 (R/W) CAN Sleep Clear Register */
Kovalev_D 22:12e6183f04d4 139 __IO uint32_t CANWAKEFLAGS; /*!< Offset: 0x114 (R/W) CAN Wake-up Flags Register */
Kovalev_D 22:12e6183f04d4 140 uint32_t RESERVED4[10];
Kovalev_D 22:12e6183f04d4 141 __IO uint32_t EXTINT; /*!< Offset: 0x140 (R/W) External Interrupt Flag Register */
Kovalev_D 22:12e6183f04d4 142 uint32_t RESERVED5[1];
Kovalev_D 22:12e6183f04d4 143 __IO uint32_t EXTMODE; /*!< Offset: 0x148 (R/W) External Interrupt Mode Register */
Kovalev_D 22:12e6183f04d4 144 __IO uint32_t EXTPOLAR; /*!< Offset: 0x14C (R/W) External Interrupt Polarity Register */
Kovalev_D 22:12e6183f04d4 145 uint32_t RESERVED6[12];
Kovalev_D 22:12e6183f04d4 146 __IO uint32_t RSID; /*!< Offset: 0x180 (R/W) Reset Source Identification Register */
Kovalev_D 22:12e6183f04d4 147 uint32_t RESERVED7[7];
Kovalev_D 22:12e6183f04d4 148 __IO uint32_t SCS; /*!< Offset: 0x1A0 (R/W) System Controls and Status Register */
Kovalev_D 22:12e6183f04d4 149 __IO uint32_t IRCTRIM; /* Clock Dividers */
Kovalev_D 22:12e6183f04d4 150 __IO uint32_t PCLKSEL0; /*!< Offset: 0x1A8 (R/W) Peripheral Clock Select 0 Register */
Kovalev_D 22:12e6183f04d4 151 __IO uint32_t PCLKSEL1; /*!< Offset: 0x1AC (R/W) Peripheral Clock Select 1 Register */
Kovalev_D 22:12e6183f04d4 152 uint32_t RESERVED8[4];
Kovalev_D 22:12e6183f04d4 153 __IO uint32_t USBIntSt; /*!< Offset: 0x1C0 (R/W) USB Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 154 __IO uint32_t DMAREQSEL; /*!< Offset: 0x1C4 (R/W) DMA Request Select Register */
Kovalev_D 22:12e6183f04d4 155 __IO uint32_t CLKOUTCFG; /*!< Offset: 0x1C8 (R/W) Clock Output Configuration Register */
Kovalev_D 22:12e6183f04d4 156
Kovalev_D 22:12e6183f04d4 157 } LPC_SC_TypeDef;
Kovalev_D 22:12e6183f04d4 158
Kovalev_D 22:12e6183f04d4 159 /*------------- Pin Connect Block (PINCON) -----------------------------------*/
Kovalev_D 22:12e6183f04d4 160 /** @brief Pin Connect Block (PINCON) register structure definition */
Kovalev_D 22:12e6183f04d4 161 typedef struct
Kovalev_D 22:12e6183f04d4 162 {
Kovalev_D 22:12e6183f04d4 163 __IO uint32_t PINSEL0; /* !< Offset: 0x000 PIN Select0 (R/W) */
Kovalev_D 22:12e6183f04d4 164 __IO uint32_t PINSEL1; /* !< Offset: 0x004 PIN Select1 (R/W) */
Kovalev_D 22:12e6183f04d4 165 __IO uint32_t PINSEL2; /* !< Offset: 0x008 PIN Select2 (R/W) */
Kovalev_D 22:12e6183f04d4 166 __IO uint32_t PINSEL3; /* !< Offset: 0x00C PIN Select3 (R/W) */
Kovalev_D 22:12e6183f04d4 167 __IO uint32_t PINSEL4; /* !< Offset: 0x010 PIN Select4 (R/W) */
Kovalev_D 22:12e6183f04d4 168 __IO uint32_t PINSEL5; /* !< Offset: 0x014 PIN Select5 (R/W) */
Kovalev_D 22:12e6183f04d4 169 __IO uint32_t PINSEL6; /* !< Offset: 0x018 PIN Select6 (R/W) */
Kovalev_D 22:12e6183f04d4 170 __IO uint32_t PINSEL7; /* !< Offset: 0x01C PIN Select7 (R/W) */
Kovalev_D 22:12e6183f04d4 171 __IO uint32_t PINSEL8; /* !< Offset: 0x020 PIN Select8 (R/W) */
Kovalev_D 22:12e6183f04d4 172 __IO uint32_t PINSEL9; /* !< Offset: 0x024 PIN Select9 (R/W) */
Kovalev_D 22:12e6183f04d4 173 __IO uint32_t PINSEL10; /* !< Offset: 0x028 PIN Select20 (R/W) */
Kovalev_D 22:12e6183f04d4 174 uint32_t RESERVED0[5];
Kovalev_D 22:12e6183f04d4 175 __IO uint32_t PINMODE0; /* !< Offset: 0x040 PIN Mode0 (R/W) */
Kovalev_D 22:12e6183f04d4 176 __IO uint32_t PINMODE1; /* !< Offset: 0x044 PIN Mode1 (R/W) */
Kovalev_D 22:12e6183f04d4 177 __IO uint32_t PINMODE2; /* !< Offset: 0x048 PIN Mode2 (R/W) */
Kovalev_D 22:12e6183f04d4 178 __IO uint32_t PINMODE3; /* !< Offset: 0x04C PIN Mode3 (R/W) */
Kovalev_D 22:12e6183f04d4 179 __IO uint32_t PINMODE4; /* !< Offset: 0x050 PIN Mode4 (R/W) */
Kovalev_D 22:12e6183f04d4 180 __IO uint32_t PINMODE5; /* !< Offset: 0x054 PIN Mode5 (R/W) */
Kovalev_D 22:12e6183f04d4 181 __IO uint32_t PINMODE6; /* !< Offset: 0x058 PIN Mode6 (R/W) */
Kovalev_D 22:12e6183f04d4 182 __IO uint32_t PINMODE7; /* !< Offset: 0x05C PIN Mode7 (R/W) */
Kovalev_D 22:12e6183f04d4 183 __IO uint32_t PINMODE8; /* !< Offset: 0x060 PIN Mode8 (R/W) */
Kovalev_D 22:12e6183f04d4 184 __IO uint32_t PINMODE9; /* !< Offset: 0x064 PIN Mode9 (R/W) */
Kovalev_D 22:12e6183f04d4 185 __IO uint32_t PINMODE_OD0; /* !< Offset: 0x068 Open Drain PIN Mode0 (R/W) */
Kovalev_D 22:12e6183f04d4 186 __IO uint32_t PINMODE_OD1; /* !< Offset: 0x06C Open Drain PIN Mode1 (R/W) */
Kovalev_D 22:12e6183f04d4 187 __IO uint32_t PINMODE_OD2; /* !< Offset: 0x070 Open Drain PIN Mode2 (R/W) */
Kovalev_D 22:12e6183f04d4 188 __IO uint32_t PINMODE_OD3; /* !< Offset: 0x074 Open Drain PIN Mode3 (R/W) */
Kovalev_D 22:12e6183f04d4 189 __IO uint32_t PINMODE_OD4; /* !< Offset: 0x078 Open Drain PIN Mode4 (R/W) */
Kovalev_D 22:12e6183f04d4 190 __IO uint32_t I2CPADCFG; /* !< Offset: 0x07C I2C Pad Configure (R/W) */
Kovalev_D 22:12e6183f04d4 191 } LPC_PINCON_TypeDef;
Kovalev_D 22:12e6183f04d4 192
Kovalev_D 22:12e6183f04d4 193 /*------------- General Purpose Input/Output (GPIO) --------------------------*/
Kovalev_D 22:12e6183f04d4 194 /** @brief General Purpose Input/Output (GPIO) register structure definition */
Kovalev_D 22:12e6183f04d4 195 typedef struct
Kovalev_D 22:12e6183f04d4 196 {
Kovalev_D 22:12e6183f04d4 197 union {
Kovalev_D 22:12e6183f04d4 198 __IO uint32_t FIODIR; /* !< Offset: 0x00 Port direction (R/W) */
Kovalev_D 22:12e6183f04d4 199 struct {
Kovalev_D 22:12e6183f04d4 200 __IO uint16_t FIODIRL;
Kovalev_D 22:12e6183f04d4 201 __IO uint16_t FIODIRH;
Kovalev_D 22:12e6183f04d4 202 };
Kovalev_D 22:12e6183f04d4 203 struct {
Kovalev_D 22:12e6183f04d4 204 __IO uint8_t FIODIR0;
Kovalev_D 22:12e6183f04d4 205 __IO uint8_t FIODIR1;
Kovalev_D 22:12e6183f04d4 206 __IO uint8_t FIODIR2;
Kovalev_D 22:12e6183f04d4 207 __IO uint8_t FIODIR3;
Kovalev_D 22:12e6183f04d4 208 };
Kovalev_D 22:12e6183f04d4 209 };
Kovalev_D 22:12e6183f04d4 210 uint32_t RESERVED0[3];
Kovalev_D 22:12e6183f04d4 211 union {
Kovalev_D 22:12e6183f04d4 212 __IO uint32_t FIOMASK; /* !< Offset: 0x10 Port mask (R/W) */
Kovalev_D 22:12e6183f04d4 213 struct {
Kovalev_D 22:12e6183f04d4 214 __IO uint16_t FIOMASKL;
Kovalev_D 22:12e6183f04d4 215 __IO uint16_t FIOMASKH;
Kovalev_D 22:12e6183f04d4 216 };
Kovalev_D 22:12e6183f04d4 217 struct {
Kovalev_D 22:12e6183f04d4 218 __IO uint8_t FIOMASK0;
Kovalev_D 22:12e6183f04d4 219 __IO uint8_t FIOMASK1;
Kovalev_D 22:12e6183f04d4 220 __IO uint8_t FIOMASK2;
Kovalev_D 22:12e6183f04d4 221 __IO uint8_t FIOMASK3;
Kovalev_D 22:12e6183f04d4 222 };
Kovalev_D 22:12e6183f04d4 223 };
Kovalev_D 22:12e6183f04d4 224 union {
Kovalev_D 22:12e6183f04d4 225 __IO uint32_t FIOPIN; /* !< Offset: 0x14 Port value (R/W) */
Kovalev_D 22:12e6183f04d4 226 struct {
Kovalev_D 22:12e6183f04d4 227 __IO uint16_t FIOPINL;
Kovalev_D 22:12e6183f04d4 228 __IO uint16_t FIOPINH;
Kovalev_D 22:12e6183f04d4 229 };
Kovalev_D 22:12e6183f04d4 230 struct {
Kovalev_D 22:12e6183f04d4 231 __IO uint8_t FIOPIN0;
Kovalev_D 22:12e6183f04d4 232 __IO uint8_t FIOPIN1;
Kovalev_D 22:12e6183f04d4 233 __IO uint8_t FIOPIN2;
Kovalev_D 22:12e6183f04d4 234 __IO uint8_t FIOPIN3;
Kovalev_D 22:12e6183f04d4 235 };
Kovalev_D 22:12e6183f04d4 236 };
Kovalev_D 22:12e6183f04d4 237 union {
Kovalev_D 22:12e6183f04d4 238 __IO uint32_t FIOSET; /* !< Offset: 0x18 Port output set (R/W) */
Kovalev_D 22:12e6183f04d4 239 struct {
Kovalev_D 22:12e6183f04d4 240 __IO uint16_t FIOSETL;
Kovalev_D 22:12e6183f04d4 241 __IO uint16_t FIOSETH;
Kovalev_D 22:12e6183f04d4 242 };
Kovalev_D 22:12e6183f04d4 243 struct {
Kovalev_D 22:12e6183f04d4 244 __IO uint8_t FIOSET0;
Kovalev_D 22:12e6183f04d4 245 __IO uint8_t FIOSET1;
Kovalev_D 22:12e6183f04d4 246 __IO uint8_t FIOSET2;
Kovalev_D 22:12e6183f04d4 247 __IO uint8_t FIOSET3;
Kovalev_D 22:12e6183f04d4 248 };
Kovalev_D 22:12e6183f04d4 249 };
Kovalev_D 22:12e6183f04d4 250 union {
Kovalev_D 22:12e6183f04d4 251 __O uint32_t FIOCLR; /* !< Offset: 0x1C Port output clear (R/W) */
Kovalev_D 22:12e6183f04d4 252 struct {
Kovalev_D 22:12e6183f04d4 253 __O uint16_t FIOCLRL;
Kovalev_D 22:12e6183f04d4 254 __O uint16_t FIOCLRH;
Kovalev_D 22:12e6183f04d4 255 };
Kovalev_D 22:12e6183f04d4 256 struct {
Kovalev_D 22:12e6183f04d4 257 __O uint8_t FIOCLR0;
Kovalev_D 22:12e6183f04d4 258 __O uint8_t FIOCLR1;
Kovalev_D 22:12e6183f04d4 259 __O uint8_t FIOCLR2;
Kovalev_D 22:12e6183f04d4 260 __O uint8_t FIOCLR3;
Kovalev_D 22:12e6183f04d4 261 };
Kovalev_D 22:12e6183f04d4 262 };
Kovalev_D 22:12e6183f04d4 263 } LPC_GPIO_TypeDef;
Kovalev_D 22:12e6183f04d4 264
Kovalev_D 22:12e6183f04d4 265 /** @brief General Purpose Input/Output interrupt (GPIOINT) register structure definition */
Kovalev_D 22:12e6183f04d4 266 typedef struct
Kovalev_D 22:12e6183f04d4 267 {
Kovalev_D 22:12e6183f04d4 268 __I uint32_t IntStatus; /*!< Offset: 0x000 (R/ ) GPIO overall Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 269 __I uint32_t IO0IntStatR; /*!< Offset: 0x004 (R/ ) GPIO Interrupt Status Register 0 for Rising edge */
Kovalev_D 22:12e6183f04d4 270 __I uint32_t IO0IntStatF; /*!< Offset: 0x008 (R/ ) GPIO Interrupt Status Register 0 for Falling edge */
Kovalev_D 22:12e6183f04d4 271 __O uint32_t IO0IntClr; /*!< Offset: 0x00C (R/W) GPIO Interrupt Clear Register 0 */
Kovalev_D 22:12e6183f04d4 272 __IO uint32_t IO0IntEnR; /*!< Offset: 0x010 ( /W) GPIO Interrupt Enable Register 0 for Rising edge */
Kovalev_D 22:12e6183f04d4 273 __IO uint32_t IO0IntEnF; /*!< Offset: 0x014 (R/W) GPIO Interrupt Enable Register 0 for Falling edge */
Kovalev_D 22:12e6183f04d4 274 uint32_t RESERVED0[3];
Kovalev_D 22:12e6183f04d4 275 __I uint32_t IO2IntStatR; /*!< Offset: 0x000 (R/ ) GPIO Interrupt Status Register 2 for Rising edge */
Kovalev_D 22:12e6183f04d4 276 __I uint32_t IO2IntStatF; /*!< Offset: 0x000 (R/ ) GPIO Interrupt Status Register 2 for Falling edge */
Kovalev_D 22:12e6183f04d4 277 __O uint32_t IO2IntClr; /*!< Offset: 0x000 ( /W) GPIO Interrupt Clear Register 2 */
Kovalev_D 22:12e6183f04d4 278 __IO uint32_t IO2IntEnR; /*!< Offset: 0x000 (R/W) GPIO Interrupt Enable Register 2 for Rising edge */
Kovalev_D 22:12e6183f04d4 279 __IO uint32_t IO2IntEnF; /*!< Offset: 0x000 (R/W) GPIO Interrupt Enable Register 2 for Falling edge */
Kovalev_D 22:12e6183f04d4 280 } LPC_GPIOINT_TypeDef;
Kovalev_D 22:12e6183f04d4 281
Kovalev_D 22:12e6183f04d4 282 /*------------- Timer (TIM) --------------------------------------------------*/
Kovalev_D 22:12e6183f04d4 283 /** @brief Timer (TIM) register structure definition */
Kovalev_D 22:12e6183f04d4 284 typedef struct
Kovalev_D 22:12e6183f04d4 285 {
Kovalev_D 22:12e6183f04d4 286 __IO uint32_t IR; /*!< Offset: 0x000 (R/W) Interrupt Register */
Kovalev_D 22:12e6183f04d4 287 __IO uint32_t TCR; /*!< Offset: 0x004 (R/W) Timer Control Register */
Kovalev_D 22:12e6183f04d4 288 __IO uint32_t TC; /*!< Offset: 0x008 (R/W) Timer Counter Register */
Kovalev_D 22:12e6183f04d4 289 __IO uint32_t PR; /*!< Offset: 0x00C (R/W) Prescale Register */
Kovalev_D 22:12e6183f04d4 290 __IO uint32_t PC; /*!< Offset: 0x010 (R/W) Prescale Counter Register */
Kovalev_D 22:12e6183f04d4 291 __IO uint32_t MCR; /*!< Offset: 0x014 (R/W) Match Control Register */
Kovalev_D 22:12e6183f04d4 292 __IO uint32_t MR0; /*!< Offset: 0x018 (R/W) Match Register 0 */
Kovalev_D 22:12e6183f04d4 293 __IO uint32_t MR1; /*!< Offset: 0x01C (R/W) Match Register 1 */
Kovalev_D 22:12e6183f04d4 294 __IO uint32_t MR2; /*!< Offset: 0x020 (R/W) Match Register 2 */
Kovalev_D 22:12e6183f04d4 295 __IO uint32_t MR3; /*!< Offset: 0x024 (R/W) Match Register 3 */
Kovalev_D 22:12e6183f04d4 296 __IO uint32_t CCR; /*!< Offset: 0x028 (R/W) Capture Control Register */
Kovalev_D 22:12e6183f04d4 297 __I uint32_t CR0; /*!< Offset: 0x02C (R/ ) Capture Register 0 */
Kovalev_D 22:12e6183f04d4 298 __I uint32_t CR1; /*!< Offset: 0x030 (R/ ) Capture Register */
Kovalev_D 22:12e6183f04d4 299 uint32_t RESERVED0[2];
Kovalev_D 22:12e6183f04d4 300 __IO uint32_t EMR; /*!< Offset: 0x03C (R/W) External Match Register */
Kovalev_D 22:12e6183f04d4 301 uint32_t RESERVED1[12];
Kovalev_D 22:12e6183f04d4 302 __IO uint32_t CTCR; /*!< Offset: 0x070 (R/W) Count Control Register */
Kovalev_D 22:12e6183f04d4 303 } LPC_TIM_TypeDef;
Kovalev_D 22:12e6183f04d4 304
Kovalev_D 22:12e6183f04d4 305 /*------------- Pulse-Width Modulation (PWM) ---------------------------------*/
Kovalev_D 22:12e6183f04d4 306 /** @brief Pulse-Width Modulation (PWM) register structure definition */
Kovalev_D 22:12e6183f04d4 307 typedef struct
Kovalev_D 22:12e6183f04d4 308 {
Kovalev_D 22:12e6183f04d4 309 __IO uint32_t IR; /*!< Offset: 0x000 (R/W) Interrupt Register */
Kovalev_D 22:12e6183f04d4 310 __IO uint32_t TCR; /*!< Offset: 0x004 (R/W) Timer Control Register. Register */
Kovalev_D 22:12e6183f04d4 311 __IO uint32_t TC; /*!< Offset: 0x008 (R/W) Timer Counter Register */
Kovalev_D 22:12e6183f04d4 312 __IO uint32_t PR; /*!< Offset: 0x00C (R/W) Prescale Register */
Kovalev_D 22:12e6183f04d4 313 __IO uint32_t PC; /*!< Offset: 0x010 (R/W) Prescale Counter Register */
Kovalev_D 22:12e6183f04d4 314 __IO uint32_t MCR; /*!< Offset: 0x014 (R/W) Match Control Register */
Kovalev_D 22:12e6183f04d4 315 __IO uint32_t MR0; /*!< Offset: 0x018 (R/W) Match Register 0 */
Kovalev_D 22:12e6183f04d4 316 __IO uint32_t MR1; /*!< Offset: 0x01C (R/W) Match Register 1 */
Kovalev_D 22:12e6183f04d4 317 __IO uint32_t MR2; /*!< Offset: 0x020 (R/W) Match Register 2 */
Kovalev_D 22:12e6183f04d4 318 __IO uint32_t MR3; /*!< Offset: 0x024 (R/W) Match Register 3 */
Kovalev_D 22:12e6183f04d4 319 __IO uint32_t CCR; /*!< Offset: 0x028 (R/W) Capture Control Register */
Kovalev_D 22:12e6183f04d4 320 __I uint32_t CR0; /*!< Offset: 0x02C (R/ ) Capture Register 0 */
Kovalev_D 22:12e6183f04d4 321 __I uint32_t CR1; /*!< Offset: 0x030 (R/ ) Capture Register 1 */
Kovalev_D 22:12e6183f04d4 322 __I uint32_t CR2; /*!< Offset: 0x034 (R/ ) Capture Register 2 */
Kovalev_D 22:12e6183f04d4 323 __I uint32_t CR3; /*!< Offset: 0x038 (R/ ) Capture Register 3 */
Kovalev_D 22:12e6183f04d4 324 uint32_t RESERVED0;
Kovalev_D 22:12e6183f04d4 325 __IO uint32_t MR4; /*!< Offset: 0x040 (R/W) Match Register 4 */
Kovalev_D 22:12e6183f04d4 326 __IO uint32_t MR5; /*!< Offset: 0x044 (R/W) Match Register 5 */
Kovalev_D 22:12e6183f04d4 327 __IO uint32_t MR6; /*!< Offset: 0x048 (R/W) Match Register 6 */
Kovalev_D 22:12e6183f04d4 328 __IO uint32_t PCR; /*!< Offset: 0x04C (R/W) PWM Control Register */
Kovalev_D 22:12e6183f04d4 329 __IO uint32_t LER; /*!< Offset: 0x050 (R/W) Load Enable Register */
Kovalev_D 22:12e6183f04d4 330 uint32_t RESERVED1[7];
Kovalev_D 22:12e6183f04d4 331 __IO uint32_t CTCR; /*!< Offset: 0x070 (R/W) Count Control Register */
Kovalev_D 22:12e6183f04d4 332 } LPC_PWM_TypeDef;
Kovalev_D 22:12e6183f04d4 333
Kovalev_D 22:12e6183f04d4 334 /*------------- Universal Asynchronous Receiver Transmitter (UART) -----------*/
Kovalev_D 22:12e6183f04d4 335 /** @brief Universal Asynchronous Receiver Transmitter (UART) register structure definition */
Kovalev_D 22:12e6183f04d4 336 typedef struct
Kovalev_D 22:12e6183f04d4 337 {
Kovalev_D 22:12e6183f04d4 338 union {
Kovalev_D 22:12e6183f04d4 339 __I uint32_t RBR; /*!< Offset: 0x000 Receiver Buffer Register (R/ ) */
Kovalev_D 22:12e6183f04d4 340 __O uint32_t THR; /*!< Offset: 0x000 Transmit Holding Register ( /W) */
Kovalev_D 22:12e6183f04d4 341 __IO uint32_t DLL; /*!< Offset: 0x000 Divisor Latch LSB (R/W) */
Kovalev_D 22:12e6183f04d4 342 };
Kovalev_D 22:12e6183f04d4 343 union {
Kovalev_D 22:12e6183f04d4 344 __IO uint32_t DLM; /*!< Offset: 0x004 Divisor Latch MSB (R/W) */
Kovalev_D 22:12e6183f04d4 345 __IO uint32_t IER; /*!< Offset: 0x004 Interrupt Enable Register (R/W) */
Kovalev_D 22:12e6183f04d4 346 };
Kovalev_D 22:12e6183f04d4 347 union {
Kovalev_D 22:12e6183f04d4 348 __I uint32_t IIR; /*!< Offset: 0x008 Interrupt ID Register (R/ ) */
Kovalev_D 22:12e6183f04d4 349 __O uint32_t FCR; /*!< Offset: 0x008 FIFO Control Register ( /W) */
Kovalev_D 22:12e6183f04d4 350 };
Kovalev_D 22:12e6183f04d4 351 __IO uint32_t LCR; /*!< Offset: 0x00C Line Control Register (R/W) */
Kovalev_D 22:12e6183f04d4 352 uint32_t RESERVED0;
Kovalev_D 22:12e6183f04d4 353 __I uint32_t LSR; /*!< Offset: 0x014 Line Status Register (R/ ) */
Kovalev_D 22:12e6183f04d4 354 uint32_t RESERVED1;
Kovalev_D 22:12e6183f04d4 355 __IO uint32_t SCR; /*!< Offset: 0x01C Scratch Pad Register (R/W) */
Kovalev_D 22:12e6183f04d4 356 __IO uint32_t ACR; /*!< Offset: 0x020 Auto-baud Control Register (R/W) */
Kovalev_D 22:12e6183f04d4 357 __IO uint32_t ICR; /*!< Offset: 0x024 IrDA Control Register (R/W) */
Kovalev_D 22:12e6183f04d4 358 __IO uint32_t FDR; /*!< Offset: 0x028 Fractional Divider Register (R/W) */
Kovalev_D 22:12e6183f04d4 359 uint32_t RESERVED2;
Kovalev_D 22:12e6183f04d4 360 __IO uint32_t TER; /*!< Offset: 0x030 Transmit Enable Register (R/W) */
Kovalev_D 22:12e6183f04d4 361 } LPC_UART_TypeDef;
Kovalev_D 22:12e6183f04d4 362
Kovalev_D 22:12e6183f04d4 363 /** @brief Universal Asynchronous Receiver Transmitter 0 (UART0) register structure definition */
Kovalev_D 22:12e6183f04d4 364 typedef struct
Kovalev_D 22:12e6183f04d4 365 {
Kovalev_D 22:12e6183f04d4 366 union {
Kovalev_D 22:12e6183f04d4 367 __I uint32_t RBR; /*!< Offset: 0x000 Receiver Buffer Register (R/ ) */
Kovalev_D 22:12e6183f04d4 368 __O uint32_t THR; /*!< Offset: 0x000 Transmit Holding Register ( /W) */
Kovalev_D 22:12e6183f04d4 369 __IO uint32_t DLL; /*!< Offset: 0x000 Divisor Latch LSB (R/W) */
Kovalev_D 22:12e6183f04d4 370 };
Kovalev_D 22:12e6183f04d4 371 union {
Kovalev_D 22:12e6183f04d4 372 __IO uint32_t DLM; /*!< Offset: 0x004 Divisor Latch MSB (R/W) */
Kovalev_D 22:12e6183f04d4 373 __IO uint32_t IER; /*!< Offset: 0x000 Interrupt Enable Register (R/W) */
Kovalev_D 22:12e6183f04d4 374 };
Kovalev_D 22:12e6183f04d4 375 union {
Kovalev_D 22:12e6183f04d4 376 __I uint32_t IIR; /*!< Offset: 0x008 Interrupt ID Register (R/ ) */
Kovalev_D 22:12e6183f04d4 377 __O uint32_t FCR; /*!< Offset: 0x008 FIFO Control Register ( /W) */
Kovalev_D 22:12e6183f04d4 378 };
Kovalev_D 22:12e6183f04d4 379 __IO uint32_t LCR; /*!< Offset: 0x00C Line Control Register (R/W) */
Kovalev_D 22:12e6183f04d4 380 __IO uint32_t MCR; /*!< Offset: 0x010 Modem control Register (R/W) */
Kovalev_D 22:12e6183f04d4 381 __I uint32_t LSR; /*!< Offset: 0x014 Line Status Register (R/ ) */
Kovalev_D 22:12e6183f04d4 382 __I uint32_t MSR; /*!< Offset: 0x018 Modem status Register (R/ ) */
Kovalev_D 22:12e6183f04d4 383 __IO uint32_t SCR; /*!< Offset: 0x01C Scratch Pad Register (R/W) */
Kovalev_D 22:12e6183f04d4 384 __IO uint32_t ACR; /*!< Offset: 0x020 Auto-baud Control Register (R/W) */
Kovalev_D 22:12e6183f04d4 385 uint32_t RESERVED0;
Kovalev_D 22:12e6183f04d4 386 __IO uint32_t FDR; /*!< Offset: 0x028 Fractional Divider Register (R/W) */
Kovalev_D 22:12e6183f04d4 387 uint32_t RESERVED1;
Kovalev_D 22:12e6183f04d4 388 __IO uint32_t TER; /*!< Offset: 0x030 Transmit Enable Register (R/W) */
Kovalev_D 22:12e6183f04d4 389 uint32_t RESERVED2[6];
Kovalev_D 22:12e6183f04d4 390 __IO uint32_t RS485CTRL; /*!< Offset: 0x04C RS-485/EIA-485 Control Register (R/W) */
Kovalev_D 22:12e6183f04d4 391 __IO uint32_t ADRMATCH; /*!< Offset: 0x050 RS-485/EIA-485 address match Register (R/W) */
Kovalev_D 22:12e6183f04d4 392 __IO uint32_t RS485DLY; /*!< Offset: 0x054 RS-485/EIA-485 direction control delay Register (R/W) */
Kovalev_D 22:12e6183f04d4 393 } LPC_UART1_TypeDef;
Kovalev_D 22:12e6183f04d4 394
Kovalev_D 22:12e6183f04d4 395 /*------------- Serial Peripheral Interface (SPI) ----------------------------*/
Kovalev_D 22:12e6183f04d4 396 /** @brief Serial Peripheral Interface (SPI) register structure definition */
Kovalev_D 22:12e6183f04d4 397 typedef struct
Kovalev_D 22:12e6183f04d4 398 {
Kovalev_D 22:12e6183f04d4 399 __IO uint32_t SPCR; /*!< Offset: 0x000 SPI Control Register (R/W) */
Kovalev_D 22:12e6183f04d4 400 __I uint32_t SPSR; /*!< Offset: 0x004 SPI Status Register (R/) */
Kovalev_D 22:12e6183f04d4 401 __IO uint32_t SPDR; /*!< Offset: 0x008 SPI Data Register (R/W) */
Kovalev_D 22:12e6183f04d4 402 __IO uint32_t SPCCR; /*!< Offset: 0x00C SPI Clock Counter Register (R/W) */
Kovalev_D 22:12e6183f04d4 403 uint32_t RESERVED0[3];
Kovalev_D 22:12e6183f04d4 404 __IO uint32_t SPINT; /*!< Offset: 0x01C SPI Interrupt Flag Register (R/W) */
Kovalev_D 22:12e6183f04d4 405 } LPC_SPI_TypeDef;
Kovalev_D 22:12e6183f04d4 406
Kovalev_D 22:12e6183f04d4 407 /*------------- Synchronous Serial Communication (SSP) -----------------------*/
Kovalev_D 22:12e6183f04d4 408 /** @brief Synchronous Serial Communication (SSP) register structure definition */
Kovalev_D 22:12e6183f04d4 409 typedef struct
Kovalev_D 22:12e6183f04d4 410 {
Kovalev_D 22:12e6183f04d4 411 __IO uint32_t CR0; /*!< Offset: 0x000 (R/W) Control Register 0 */
Kovalev_D 22:12e6183f04d4 412 __IO uint32_t CR1; /*!< Offset: 0x004 (R/W) Control Register 1 */
Kovalev_D 22:12e6183f04d4 413 __IO uint32_t DR; /*!< Offset: 0x008 (R/W) Data Register */
Kovalev_D 22:12e6183f04d4 414 __I uint32_t SR; /*!< Offset: 0x00C (R/ ) Status Register */
Kovalev_D 22:12e6183f04d4 415 __IO uint32_t CPSR; /*!< Offset: 0x010 (R/W) Clock Prescale Register */
Kovalev_D 22:12e6183f04d4 416 __IO uint32_t IMSC; /*!< Offset: 0x014 (R/W) Interrupt Mask Set and Clear Register */
Kovalev_D 22:12e6183f04d4 417 __IO uint32_t RIS; /*!< Offset: 0x018 (R/W) Raw Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 418 __IO uint32_t MIS; /*!< Offset: 0x01C (R/W) Masked Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 419 __IO uint32_t ICR; /*!< Offset: 0x020 (R/W) SSPICR Interrupt Clear Register */
Kovalev_D 22:12e6183f04d4 420 __IO uint32_t DMACR; /*!< Offset: 0x024 (R/W) DMA Control Register */
Kovalev_D 22:12e6183f04d4 421 } LPC_SSP_TypeDef;
Kovalev_D 22:12e6183f04d4 422
Kovalev_D 22:12e6183f04d4 423 /*------------- Inter-Integrated Circuit (I2C) -------------------------------*/
Kovalev_D 22:12e6183f04d4 424 /** @brief Inter-Integrated Circuit (I2C) register structure definition */
Kovalev_D 22:12e6183f04d4 425 typedef struct
Kovalev_D 22:12e6183f04d4 426 {
Kovalev_D 22:12e6183f04d4 427 __IO uint32_t CONSET; /*!< Offset: 0x000 (R/W) I2C Control Set Register */
Kovalev_D 22:12e6183f04d4 428 __I uint32_t STAT; /*!< Offset: 0x004 (R/ ) I2C Status Register */
Kovalev_D 22:12e6183f04d4 429 __IO uint32_t DAT; /*!< Offset: 0x008 (R/W) I2C Data Register */
Kovalev_D 22:12e6183f04d4 430 __IO uint32_t ADR0; /*!< Offset: 0x00C (R/W) I2C Slave Address Register 0 */
Kovalev_D 22:12e6183f04d4 431 __IO uint32_t SCLH; /*!< Offset: 0x010 (R/W) SCH Duty Cycle Register High Half Word */
Kovalev_D 22:12e6183f04d4 432 __IO uint32_t SCLL; /*!< Offset: 0x014 (R/W) SCL Duty Cycle Register Low Half Word */
Kovalev_D 22:12e6183f04d4 433 __O uint32_t CONCLR; /*!< Offset: 0x018 (R/W) I2C Control Clear Register */
Kovalev_D 22:12e6183f04d4 434 __IO uint32_t MMCTRL; /*!< Offset: 0x01C (R/W) Monitor mode control register */
Kovalev_D 22:12e6183f04d4 435 __IO uint32_t ADR1; /*!< Offset: 0x020 (R/W) I2C Slave Address Register 1 */
Kovalev_D 22:12e6183f04d4 436 __IO uint32_t ADR2; /*!< Offset: 0x024 (R/W) I2C Slave Address Register 2 */
Kovalev_D 22:12e6183f04d4 437 __IO uint32_t ADR3; /*!< Offset: 0x028 (R/W) I2C Slave Address Register 3 */
Kovalev_D 22:12e6183f04d4 438 __I uint32_t DATA_BUFFER; /*!< Offset: 0x02C (R/ ) Data buffer Register */
Kovalev_D 22:12e6183f04d4 439 __IO uint32_t MASK0; /*!< Offset: 0x030 (R/W) I2C Slave address mask register 0 */
Kovalev_D 22:12e6183f04d4 440 __IO uint32_t MASK1; /*!< Offset: 0x034 (R/W) I2C Slave address mask register 1 */
Kovalev_D 22:12e6183f04d4 441 __IO uint32_t MASK2; /*!< Offset: 0x038 (R/W) I2C Slave address mask register 2 */
Kovalev_D 22:12e6183f04d4 442 __IO uint32_t MASK3; /*!< Offset: 0x03C (R/W) I2C Slave address mask register 3 */
Kovalev_D 22:12e6183f04d4 443 } LPC_I2C_TypeDef;
Kovalev_D 22:12e6183f04d4 444
Kovalev_D 22:12e6183f04d4 445 /*------------- Inter IC Sound (I2S) -----------------------------------------*/
Kovalev_D 22:12e6183f04d4 446 /** @brief Inter IC Sound (I2S) register structure definition */
Kovalev_D 22:12e6183f04d4 447 typedef struct
Kovalev_D 22:12e6183f04d4 448 {
Kovalev_D 22:12e6183f04d4 449 __IO uint32_t DAO; /*!< Offset: 0x000 (R/W) Digital Audio Output Register */
Kovalev_D 22:12e6183f04d4 450 __IO uint32_t DAI; /*!< Offset: 0x004 (R/W) Digital Audio Input Register */
Kovalev_D 22:12e6183f04d4 451 __O uint32_t TXFIFO; /*!< Offset: 0x008 ( /W) Transmit FIFO */
Kovalev_D 22:12e6183f04d4 452 __I uint32_t RXFIFO; /*!< Offset: 0x00C (R/ ) Receive FIFO */
Kovalev_D 22:12e6183f04d4 453 __I uint32_t STATE; /*!< Offset: 0x010 (R/W) Status Feedback Register */
Kovalev_D 22:12e6183f04d4 454 __IO uint32_t DMA1; /*!< Offset: 0x014 (R/W) DMA Configuration Register 1 */
Kovalev_D 22:12e6183f04d4 455 __IO uint32_t DMA2; /*!< Offset: 0x018 (R/W) DMA Configuration Register 2 */
Kovalev_D 22:12e6183f04d4 456 __IO uint32_t IRQ; /*!< Offset: 0x01C (R/W) Interrupt Request Control Register */
Kovalev_D 22:12e6183f04d4 457 __IO uint32_t TXRATE; /*!< Offset: 0x020 (R/W) Transmit reference clock divider Register */
Kovalev_D 22:12e6183f04d4 458 __IO uint32_t RXRATE; /*!< Offset: 0x024 (R/W) Receive reference clock divider Register */
Kovalev_D 22:12e6183f04d4 459 __IO uint32_t TXBITRATE; /*!< Offset: 0x028 (R/W) Transmit bit rate divider Register */
Kovalev_D 22:12e6183f04d4 460 __IO uint32_t RXBITRATE; /*!< Offset: 0x02C (R/W) Receive bit rate divider Register */
Kovalev_D 22:12e6183f04d4 461 __IO uint32_t TXMODE; /*!< Offset: 0x030 (R/W) Transmit mode control Register */
Kovalev_D 22:12e6183f04d4 462 __IO uint32_t RXMODE; /*!< Offset: 0x034 (R/W) Receive mode control Register */
Kovalev_D 22:12e6183f04d4 463 } LPC_I2S_TypeDef;
Kovalev_D 22:12e6183f04d4 464
Kovalev_D 22:12e6183f04d4 465 /*------------- Repetitive Interrupt Timer (RIT) -----------------------------*/
Kovalev_D 22:12e6183f04d4 466 /** @brief Repetitive Interrupt Timer (RIT) register structure definition */
Kovalev_D 22:12e6183f04d4 467 typedef struct
Kovalev_D 22:12e6183f04d4 468 {
Kovalev_D 22:12e6183f04d4 469 __IO uint32_t RICOMPVAL;
Kovalev_D 22:12e6183f04d4 470 __IO uint32_t RIMASK;
Kovalev_D 22:12e6183f04d4 471 __IO uint32_t RICTRL;
Kovalev_D 22:12e6183f04d4 472 __IO uint32_t RICOUNTER;
Kovalev_D 22:12e6183f04d4 473 } LPC_RIT_TypeDef;
Kovalev_D 22:12e6183f04d4 474
Kovalev_D 22:12e6183f04d4 475 /*------------- Real-Time Clock (RTC) ----------------------------------------*/
Kovalev_D 22:12e6183f04d4 476 /** @brief Real-Time Clock (RTC) register structure definition */
Kovalev_D 22:12e6183f04d4 477 typedef struct
Kovalev_D 22:12e6183f04d4 478 {
Kovalev_D 22:12e6183f04d4 479 __IO uint32_t ILR; /*!< Offset: 0x000 (R/W) Interrupt Location Register */
Kovalev_D 22:12e6183f04d4 480 uint32_t RESERVED0;
Kovalev_D 22:12e6183f04d4 481 __IO uint32_t CCR; /*!< Offset: 0x008 (R/W) Clock Control Register */
Kovalev_D 22:12e6183f04d4 482 __IO uint32_t CIIR; /*!< Offset: 0x00C (R/W) Counter Increment Interrupt Register */
Kovalev_D 22:12e6183f04d4 483 __IO uint32_t AMR; /*!< Offset: 0x010 (R/W) Alarm Mask Register */
Kovalev_D 22:12e6183f04d4 484 __I uint32_t CTIME0; /*!< Offset: 0x014 (R/ ) Consolidated Time Register 0 */
Kovalev_D 22:12e6183f04d4 485 __I uint32_t CTIME1; /*!< Offset: 0x018 (R/ ) Consolidated Time Register 1 */
Kovalev_D 22:12e6183f04d4 486 __I uint32_t CTIME2; /*!< Offset: 0x01C (R/ ) Consolidated Time Register 2 */
Kovalev_D 22:12e6183f04d4 487 __IO uint32_t SEC; /*!< Offset: 0x020 (R/W) Seconds Counter Register */
Kovalev_D 22:12e6183f04d4 488 __IO uint32_t MIN; /*!< Offset: 0x024 (R/W) Minutes Register */
Kovalev_D 22:12e6183f04d4 489 __IO uint32_t HOUR; /*!< Offset: 0x028 (R/W) Hours Register */
Kovalev_D 22:12e6183f04d4 490 __IO uint32_t DOM; /*!< Offset: 0x02C (R/W) Day of Month Register */
Kovalev_D 22:12e6183f04d4 491 __IO uint32_t DOW; /*!< Offset: 0x030 (R/W) Day of Week Register */
Kovalev_D 22:12e6183f04d4 492 __IO uint32_t DOY; /*!< Offset: 0x034 (R/W) Day of Year Register */
Kovalev_D 22:12e6183f04d4 493 __IO uint32_t MONTH; /*!< Offset: 0x038 (R/W) Months Register */
Kovalev_D 22:12e6183f04d4 494 __IO uint32_t YEAR; /*!< Offset: 0x03C (R/W) Years Register */
Kovalev_D 22:12e6183f04d4 495 __IO uint32_t CALIBRATION; /*!< Offset: 0x040 (R/W) Calibration Value Register */
Kovalev_D 22:12e6183f04d4 496 __IO uint32_t GPREG0; /*!< Offset: 0x044 (R/W) General Purpose Register 0 */
Kovalev_D 22:12e6183f04d4 497 __IO uint32_t GPREG1; /*!< Offset: 0x048 (R/W) General Purpose Register 1 */
Kovalev_D 22:12e6183f04d4 498 __IO uint32_t GPREG2; /*!< Offset: 0x04C (R/W) General Purpose Register 2 */
Kovalev_D 22:12e6183f04d4 499 __IO uint32_t GPREG3; /*!< Offset: 0x050 (R/W) General Purpose Register 3 */
Kovalev_D 22:12e6183f04d4 500 __IO uint32_t GPREG4; /*!< Offset: 0x054 (R/W) General Purpose Register 4 */
Kovalev_D 22:12e6183f04d4 501 __IO uint32_t RTC_AUXEN; /*!< Offset: 0x058 (R/W) RTC Auxiliary Enable Register */
Kovalev_D 22:12e6183f04d4 502 __IO uint32_t RTC_AUX; /*!< Offset: 0x05C (R/W) RTC Auxiliary Control Register */
Kovalev_D 22:12e6183f04d4 503 __IO uint32_t ALSEC; /*!< Offset: 0x060 (R/W) Alarm value for Seconds */
Kovalev_D 22:12e6183f04d4 504 __IO uint32_t ALMIN; /*!< Offset: 0x064 (R/W) Alarm value for Minutes */
Kovalev_D 22:12e6183f04d4 505 __IO uint32_t ALHOUR; /*!< Offset: 0x068 (R/W) Alarm value for Hours */
Kovalev_D 22:12e6183f04d4 506 __IO uint32_t ALDOM; /*!< Offset: 0x06C (R/W) Alarm value for Day of Month */
Kovalev_D 22:12e6183f04d4 507 __IO uint32_t ALDOW; /*!< Offset: 0x070 (R/W) Alarm value for Day of Week */
Kovalev_D 22:12e6183f04d4 508 __IO uint32_t ALDOY; /*!< Offset: 0x074 (R/W) Alarm value for Day of Year */
Kovalev_D 22:12e6183f04d4 509 __IO uint32_t ALMON; /*!< Offset: 0x078 (R/W) Alarm value for Months */
Kovalev_D 22:12e6183f04d4 510 __IO uint32_t ALYEAR; /*!< Offset: 0x07C (R/W) Alarm value for Year */
Kovalev_D 22:12e6183f04d4 511 } LPC_RTC_TypeDef;
Kovalev_D 22:12e6183f04d4 512
Kovalev_D 22:12e6183f04d4 513 /*------------- Watchdog Timer (WDT) -----------------------------------------*/
Kovalev_D 22:12e6183f04d4 514 /** @brief Watchdog Timer (WDT) register structure definition */
Kovalev_D 22:12e6183f04d4 515 typedef struct
Kovalev_D 22:12e6183f04d4 516 {
Kovalev_D 22:12e6183f04d4 517 __IO uint32_t MOD; /*!< Offset: 0x000 (R/W) Watchdog mode Register */
Kovalev_D 22:12e6183f04d4 518 __IO uint32_t TC; /*!< Offset: 0x004 (R/W) Watchdog timer constant Register */
Kovalev_D 22:12e6183f04d4 519 __O uint32_t FEED; /*!< Offset: 0x008 ( /W) Watchdog feed sequence Register */
Kovalev_D 22:12e6183f04d4 520 __I uint32_t TV; /*!< Offset: 0x00C (R/ ) Watchdog timer value Register */
Kovalev_D 22:12e6183f04d4 521 __IO uint32_t WDCLKSEL;
Kovalev_D 22:12e6183f04d4 522 } LPC_WDT_TypeDef;
Kovalev_D 22:12e6183f04d4 523
Kovalev_D 22:12e6183f04d4 524 /*------------- Analog-to-Digital Converter (ADC) ----------------------------*/
Kovalev_D 22:12e6183f04d4 525 /** @brief Analog-to-Digital Converter (ADC) register structure definition */
Kovalev_D 22:12e6183f04d4 526 typedef struct
Kovalev_D 22:12e6183f04d4 527 {
Kovalev_D 22:12e6183f04d4 528 __IO uint32_t CR; /*!< Offset: 0x000 (R/W) A/D Control Register */
Kovalev_D 22:12e6183f04d4 529 __IO uint32_t GDR; /*!< Offset: 0x004 (R/W) A/D Global Data Register */
Kovalev_D 22:12e6183f04d4 530 uint32_t RESERVED0;
Kovalev_D 22:12e6183f04d4 531 __IO uint32_t INTEN; /*!< Offset: 0x00C (R/W) A/D Interrupt Enable Register */
Kovalev_D 22:12e6183f04d4 532 __I uint32_t DR[8]; /*!< Offset: 0x010 (R/ ) A/D Channel # Data Register */
Kovalev_D 22:12e6183f04d4 533 __I uint32_t STAT; /*!< Offset: 0x030 (R/ ) A/D Status Register */
Kovalev_D 22:12e6183f04d4 534 __IO uint32_t ADTRM; /*!< Offset: 0x034 (R/W) ADC trim Register */
Kovalev_D 22:12e6183f04d4 535 } LPC_ADC_TypeDef;
Kovalev_D 22:12e6183f04d4 536
Kovalev_D 22:12e6183f04d4 537 /*------------- Digital-to-Analog Converter (DAC) ----------------------------*/
Kovalev_D 22:12e6183f04d4 538 /** @brief Digital-to-Analog Converter (DAC) register structure definition */
Kovalev_D 22:12e6183f04d4 539 typedef struct
Kovalev_D 22:12e6183f04d4 540 {
Kovalev_D 22:12e6183f04d4 541 __IO uint32_t CR; /*!< Offset: 0x000 (R/W) D/A Converter Register */
Kovalev_D 22:12e6183f04d4 542 __IO uint32_t CTRL; /*!< Offset: 0x004 (R/W) DAC Control register */
Kovalev_D 22:12e6183f04d4 543 __IO uint32_t CNTVAL; /*!< Offset: 0x008 (R/W) DAC Counter Value Register */
Kovalev_D 22:12e6183f04d4 544 } LPC_DAC_TypeDef;
Kovalev_D 22:12e6183f04d4 545
Kovalev_D 22:12e6183f04d4 546 /*------------- Motor Control Pulse-Width Modulation (MCPWM) -----------------*/
Kovalev_D 22:12e6183f04d4 547 /** @brief Motor Control Pulse-Width Modulation (MCPWM) register structure definition */
Kovalev_D 22:12e6183f04d4 548 typedef struct
Kovalev_D 22:12e6183f04d4 549 {
Kovalev_D 22:12e6183f04d4 550 __I uint32_t CON; /*!< Offset: 0x000 (R/ ) PWM Control read address Register */
Kovalev_D 22:12e6183f04d4 551 __O uint32_t CON_SET; /*!< Offset: 0x004 ( /W) PWM Control set address Register */
Kovalev_D 22:12e6183f04d4 552 __O uint32_t CON_CLR; /*!< Offset: 0x008 ( /W) PWM Control clear address Register */
Kovalev_D 22:12e6183f04d4 553 __I uint32_t CAPCON; /*!< Offset: 0x00C (R/ ) Capture Control read address Register */
Kovalev_D 22:12e6183f04d4 554 __O uint32_t CAPCON_SET; /*!< Offset: 0x010 ( /W) Capture Control set address Register */
Kovalev_D 22:12e6183f04d4 555 __O uint32_t CAPCON_CLR; /*!< Offset: 0x014 ( /W) Event Control clear address Register */
Kovalev_D 22:12e6183f04d4 556 __IO uint32_t TC0; /*!< Offset: 0x018 (R/W) Timer Counter Register, channel 0 */
Kovalev_D 22:12e6183f04d4 557 __IO uint32_t TC1; /*!< Offset: 0x01C (R/W) Timer Counter Register, channel 1 */
Kovalev_D 22:12e6183f04d4 558 __IO uint32_t TC2; /*!< Offset: 0x020 (R/W) Timer Counter Register, channel 2 */
Kovalev_D 22:12e6183f04d4 559 __IO uint32_t LIM0; /*!< Offset: 0x024 (R/W) Limit Register, channel 0 */
Kovalev_D 22:12e6183f04d4 560 __IO uint32_t LIM1; /*!< Offset: 0x028 (R/W) Limit Register, channel 1 */
Kovalev_D 22:12e6183f04d4 561 __IO uint32_t LIM2; /*!< Offset: 0x02C (R/W) Limit Register, channel 2 */
Kovalev_D 22:12e6183f04d4 562 __IO uint32_t MAT0; /*!< Offset: 0x030 (R/W) Match Register, channel 0 */
Kovalev_D 22:12e6183f04d4 563 __IO uint32_t MAT1; /*!< Offset: 0x034 (R/W) Match Register, channel 1 */
Kovalev_D 22:12e6183f04d4 564 __IO uint32_t MAT2; /*!< Offset: 0x038 (R/W) Match Register, channel 2 */
Kovalev_D 22:12e6183f04d4 565 __IO uint32_t DT; /*!< Offset: 0x03C (R/W) Dead time Register */
Kovalev_D 22:12e6183f04d4 566 __IO uint32_t CP; /*!< Offset: 0x040 (R/W) Commutation Pattern Register */
Kovalev_D 22:12e6183f04d4 567 __IO uint32_t CAP0; /*!< Offset: 0x044 (R/W) Capture Register, channel 0 */
Kovalev_D 22:12e6183f04d4 568 __IO uint32_t CAP1; /*!< Offset: 0x048 (R/W) Capture Register, channel 1 */
Kovalev_D 22:12e6183f04d4 569 __IO uint32_t CAP2; /*!< Offset: 0x04C (R/W) Capture Register, channel 2 */
Kovalev_D 22:12e6183f04d4 570 __I uint32_t INTEN; /*!< Offset: 0x050 (R/ ) Interrupt Enable read Register */
Kovalev_D 22:12e6183f04d4 571 __O uint32_t INTEN_SET; /*!< Offset: 0x054 ( /W) Interrupt Enable set address Register */
Kovalev_D 22:12e6183f04d4 572 __O uint32_t INTEN_CLR; /*!< Offset: 0x058 ( /W) Interrupt Enable clear address Register */
Kovalev_D 22:12e6183f04d4 573 __I uint32_t CNTCON; /*!< Offset: 0x05C (R/ ) Count Control read address Register */
Kovalev_D 22:12e6183f04d4 574 __O uint32_t CNTCON_SET; /*!< Offset: 0x060 ( /W) Count Control set address Register */
Kovalev_D 22:12e6183f04d4 575 __O uint32_t CNTCON_CLR; /*!< Offset: 0x064 ( /W) Count Control clear address Register */
Kovalev_D 22:12e6183f04d4 576 __I uint32_t INTF; /*!< Offset: 0x068 (R/ ) Interrupt flags read address Register */
Kovalev_D 22:12e6183f04d4 577 __O uint32_t INTF_SET; /*!< Offset: 0x06C ( /W) Interrupt flags set address Register */
Kovalev_D 22:12e6183f04d4 578 __O uint32_t INTF_CLR; /*!< Offset: 0x070 ( /W) Interrupt flags clear address Register */
Kovalev_D 22:12e6183f04d4 579 __O uint32_t CAP_CLR; /*!< Offset: 0x074 ( /W) Capture clear address Register */
Kovalev_D 22:12e6183f04d4 580 } LPC_MCPWM_TypeDef;
Kovalev_D 22:12e6183f04d4 581
Kovalev_D 22:12e6183f04d4 582 /*------------- Quadrature Encoder Interface (QEI) ---------------------------*/
Kovalev_D 22:12e6183f04d4 583 /** @brief Quadrature Encoder Interface (QEI) register structure definition */
Kovalev_D 22:12e6183f04d4 584 typedef struct
Kovalev_D 22:12e6183f04d4 585 {
Kovalev_D 22:12e6183f04d4 586 __O uint32_t CON; /*!< Offset: 0x000 ( /W) Control Register */
Kovalev_D 22:12e6183f04d4 587 __I uint32_t STAT; /*!< Offset: 0x004 (R/ ) Encoder Status Register */
Kovalev_D 22:12e6183f04d4 588 __IO uint32_t CONF; /*!< Offset: 0x008 (R/W) Configuration Register */
Kovalev_D 22:12e6183f04d4 589 __I uint32_t POS; /*!< Offset: 0x00C (R/ ) Position Register */
Kovalev_D 22:12e6183f04d4 590 __IO uint32_t MAXPOS; /*!< Offset: 0x010 (R/W) Maximum position Register */
Kovalev_D 22:12e6183f04d4 591 __IO uint32_t CMPOS0; /*!< Offset: 0x014 (R/W) Position compare Register 0 */
Kovalev_D 22:12e6183f04d4 592 __IO uint32_t CMPOS1; /*!< Offset: 0x018 (R/W) Position compare Register 1 */
Kovalev_D 22:12e6183f04d4 593 __IO uint32_t CMPOS2; /*!< Offset: 0x01C (R/W) Position compare Register 2 */
Kovalev_D 22:12e6183f04d4 594 __I uint32_t INXCNT; /*!< Offset: 0x020 (R/ ) Index count Register */
Kovalev_D 22:12e6183f04d4 595 __IO uint32_t INXCMP0; /*!< Offset: 0x024 (R/W) Index compare Register 0 */
Kovalev_D 22:12e6183f04d4 596 __IO uint32_t LOAD; /*!< Offset: 0x028 (R/W) Velocity timer reload Register */
Kovalev_D 22:12e6183f04d4 597 __I uint32_t TIME; /*!< Offset: 0x02C (R/ ) Velocity timer Register */
Kovalev_D 22:12e6183f04d4 598 __I uint32_t VEL; /*!< Offset: 0x030 (R/ ) Velocity counter Register */
Kovalev_D 22:12e6183f04d4 599 __I uint32_t CAP; /*!< Offset: 0x034 (R/ ) Velocity capture Register */
Kovalev_D 22:12e6183f04d4 600 __IO uint32_t VELCOMP; /*!< Offset: 0x038 (R/W) Velocity compare Register */
Kovalev_D 22:12e6183f04d4 601 __IO uint32_t FILTER;
Kovalev_D 22:12e6183f04d4 602 uint32_t RESERVED0[998];
Kovalev_D 22:12e6183f04d4 603 __O uint32_t IEC; /*!< Offset: 0xFD8 ( /W) Interrupt enable clear Register */
Kovalev_D 22:12e6183f04d4 604 __O uint32_t IES; /*!< Offset: 0xFDC ( /W) Interrupt enable set Register */
Kovalev_D 22:12e6183f04d4 605 __I uint32_t INTSTAT; /*!< Offset: 0xFE0 (R/ ) Interrupt status Register */
Kovalev_D 22:12e6183f04d4 606 __I uint32_t IE; /*!< Offset: 0xFE4 (R/ ) Interrupt enable Register */
Kovalev_D 22:12e6183f04d4 607 __O uint32_t CLR; /*!< Offset: 0xFE8 ( /W) Interrupt status clear Register */
Kovalev_D 22:12e6183f04d4 608 __O uint32_t SET; /*!< Offset: 0xFEC ( /W) Interrupt status set Register */
Kovalev_D 22:12e6183f04d4 609 } LPC_QEI_TypeDef;
Kovalev_D 22:12e6183f04d4 610
Kovalev_D 22:12e6183f04d4 611 /*------------- Controller Area Network (CAN) --------------------------------*/
Kovalev_D 22:12e6183f04d4 612 /** @brief Controller Area Network Acceptance Filter RAM (CANAF_RAM)structure definition */
Kovalev_D 22:12e6183f04d4 613 typedef struct
Kovalev_D 22:12e6183f04d4 614 {
Kovalev_D 22:12e6183f04d4 615 __IO uint32_t mask[512]; /*!< Offset: 0x000 (R/W) Acceptance Filter RAM */
Kovalev_D 22:12e6183f04d4 616 } LPC_CANAF_RAM_TypeDef;
Kovalev_D 22:12e6183f04d4 617
Kovalev_D 22:12e6183f04d4 618 /** @brief Controller Area Network Acceptance Filter(CANAF) register structure definition */
Kovalev_D 22:12e6183f04d4 619 typedef struct /* Acceptance Filter Registers */
Kovalev_D 22:12e6183f04d4 620 {
Kovalev_D 22:12e6183f04d4 621 __IO uint32_t AFMR; /*!< Offset: 0x000 (R/W) Acceptance Filter Register */
Kovalev_D 22:12e6183f04d4 622 __IO uint32_t SFF_sa; /*!< Offset: 0x004 (R/W) Standard Frame Individual Start Address Register */
Kovalev_D 22:12e6183f04d4 623 __IO uint32_t SFF_GRP_sa; /*!< Offset: 0x008 (R/W) Standard Frame Group Start Address Register */
Kovalev_D 22:12e6183f04d4 624 __IO uint32_t EFF_sa; /*!< Offset: 0x00C (R/W) Extended Frame Start Address Register */
Kovalev_D 22:12e6183f04d4 625 __IO uint32_t EFF_GRP_sa; /*!< Offset: 0x010 (R/W) Extended Frame Group Start Address Register */
Kovalev_D 22:12e6183f04d4 626 __IO uint32_t ENDofTable; /*!< Offset: 0x014 (R/W) End of AF Tables Register */
Kovalev_D 22:12e6183f04d4 627 __I uint32_t LUTerrAd; /*!< Offset: 0x018 (R/ ) LUT Error Address Register */
Kovalev_D 22:12e6183f04d4 628 __I uint32_t LUTerr; /*!< Offset: 0x01C (R/ ) LUT Error Register */
Kovalev_D 22:12e6183f04d4 629 __IO uint32_t FCANIE; /*!< Offset: 0x020 (R/W) Global FullCANInterrupt Enable Register */
Kovalev_D 22:12e6183f04d4 630 __IO uint32_t FCANIC0; /*!< Offset: 0x024 (R/W) FullCAN Interrupt and Capture Register 0 */
Kovalev_D 22:12e6183f04d4 631 __IO uint32_t FCANIC1; /*!< Offset: 0x028 (R/W) FullCAN Interrupt and Capture Register 1 */
Kovalev_D 22:12e6183f04d4 632 } LPC_CANAF_TypeDef;
Kovalev_D 22:12e6183f04d4 633
Kovalev_D 22:12e6183f04d4 634 /** @brief Controller Area Network Central (CANCR) register structure definition */
Kovalev_D 22:12e6183f04d4 635 typedef struct /* Central Registers */
Kovalev_D 22:12e6183f04d4 636 {
Kovalev_D 22:12e6183f04d4 637 __I uint32_t TxSR; /*!< Offset: 0x000 (R/ ) CAN Central Transmit Status Register */
Kovalev_D 22:12e6183f04d4 638 __I uint32_t RxSR; /*!< Offset: 0x004 (R/ ) CAN Central Receive Status Register */
Kovalev_D 22:12e6183f04d4 639 __I uint32_t MSR; /*!< Offset: 0x008 (R/ ) CAN Central Miscellaneous Register */
Kovalev_D 22:12e6183f04d4 640 } LPC_CANCR_TypeDef;
Kovalev_D 22:12e6183f04d4 641
Kovalev_D 22:12e6183f04d4 642 /** @brief Controller Area Network Controller (CAN) register structure definition */
Kovalev_D 22:12e6183f04d4 643 typedef struct /* Controller Registers */
Kovalev_D 22:12e6183f04d4 644 {
Kovalev_D 22:12e6183f04d4 645 __IO uint32_t MOD; /*!< Offset: 0x000 (R/W) CAN Mode Register */
Kovalev_D 22:12e6183f04d4 646 __O uint32_t CMR; /*!< Offset: 0x004 ( /W) CAN Command Register */
Kovalev_D 22:12e6183f04d4 647 __IO uint32_t GSR; /*!< Offset: 0x008 (R/W) CAN Global Status Register */
Kovalev_D 22:12e6183f04d4 648 __I uint32_t ICR; /*!< Offset: 0x00C (R/ ) CAN Interrupt and Capture Register */
Kovalev_D 22:12e6183f04d4 649 __IO uint32_t IER; /*!< Offset: 0x010 (R/W) CAN Interrupt Enable Register */
Kovalev_D 22:12e6183f04d4 650 __IO uint32_t BTR; /*!< Offset: 0x014 (R/W) CAN Bus Timing Register */
Kovalev_D 22:12e6183f04d4 651 __IO uint32_t EWL; /*!< Offset: 0x018 (R/W) CAN Error Warning Limit Register */
Kovalev_D 22:12e6183f04d4 652 __I uint32_t SR; /*!< Offset: 0x01C (R/ ) CAN Status Register */
Kovalev_D 22:12e6183f04d4 653 __IO uint32_t RFS; /*!< Offset: 0x020 (R/W) CAN Receive Frame Status Register */
Kovalev_D 22:12e6183f04d4 654 __IO uint32_t RID; /*!< Offset: 0x024 (R/W) CAN Receive Identifier Register */
Kovalev_D 22:12e6183f04d4 655 __IO uint32_t RDA; /*!< Offset: 0x028 (R/W) CAN Receive Data Register A */
Kovalev_D 22:12e6183f04d4 656 __IO uint32_t RDB; /*!< Offset: 0x02C (R/W) CAN Receive Data Register B */
Kovalev_D 22:12e6183f04d4 657 __IO uint32_t TFI1; /*!< Offset: 0x030 (R/W) CAN Transmit Frame Information Register 1 */
Kovalev_D 22:12e6183f04d4 658 __IO uint32_t TID1; /*!< Offset: 0x034 (R/W) CAN Transmit Identifier Register 1 */
Kovalev_D 22:12e6183f04d4 659 __IO uint32_t TDA1; /*!< Offset: 0x038 (R/W) CAN Transmit Data Register A 1 */
Kovalev_D 22:12e6183f04d4 660 __IO uint32_t TDB1; /*!< Offset: 0x03C (R/W) CAN Transmit Data Register B 1 */
Kovalev_D 22:12e6183f04d4 661 __IO uint32_t TFI2; /*!< Offset: 0x040 (R/W) CAN Transmit Frame Information Register 2 */
Kovalev_D 22:12e6183f04d4 662 __IO uint32_t TID2; /*!< Offset: 0x044 (R/W) CAN Transmit Identifier Register 2 */
Kovalev_D 22:12e6183f04d4 663 __IO uint32_t TDA2; /*!< Offset: 0x048 (R/W) CAN Transmit Data Register A 2 */
Kovalev_D 22:12e6183f04d4 664 __IO uint32_t TDB2; /*!< Offset: 0x04C (R/W) CAN Transmit Data Register B 2 */
Kovalev_D 22:12e6183f04d4 665 __IO uint32_t TFI3; /*!< Offset: 0x050 (R/W) CAN Transmit Frame Information Register 3 */
Kovalev_D 22:12e6183f04d4 666 __IO uint32_t TID3; /*!< Offset: 0x054 (R/W) CAN Transmit Identifier Register 3 */
Kovalev_D 22:12e6183f04d4 667 __IO uint32_t TDA3; /*!< Offset: 0x058 (R/W) CAN Transmit Data Register A 3 */
Kovalev_D 22:12e6183f04d4 668 __IO uint32_t TDB3; /*!< Offset: 0x05C (R/W) CAN Transmit Data Register B 3 */
Kovalev_D 22:12e6183f04d4 669 } LPC_CAN_TypeDef;
Kovalev_D 22:12e6183f04d4 670
Kovalev_D 22:12e6183f04d4 671 /*------------- General Purpose Direct Memory Access (GPDMA) -----------------*/
Kovalev_D 22:12e6183f04d4 672 /** @brief General Purpose Direct Memory Access (GPDMA) register structure definition */
Kovalev_D 22:12e6183f04d4 673 typedef struct /* Common Registers */
Kovalev_D 22:12e6183f04d4 674 {
Kovalev_D 22:12e6183f04d4 675 __I uint32_t IntStat; /*!< Offset: 0x000 (R/ ) DMA Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 676 __I uint32_t IntTCStat; /*!< Offset: 0x004 (R/ ) DMA Interrupt Terminal Count Request Status Register */
Kovalev_D 22:12e6183f04d4 677 __O uint32_t IntTCClear; /*!< Offset: 0x008 ( /W) DMA Interrupt Terminal Count Request Clear Register */
Kovalev_D 22:12e6183f04d4 678 __I uint32_t IntErrStat; /*!< Offset: 0x00C (R/ ) DMA Interrupt Error Status Register */
Kovalev_D 22:12e6183f04d4 679 __O uint32_t IntErrClr; /*!< Offset: 0x010 ( /W) DMA Interrupt Error Clear Register */
Kovalev_D 22:12e6183f04d4 680 __I uint32_t RawIntTCStat; /*!< Offset: 0x014 (R/ ) DMA Raw Interrupt Terminal Count Status Register */
Kovalev_D 22:12e6183f04d4 681 __I uint32_t RawIntErrStat; /*!< Offset: 0x018 (R/ ) DMA Raw Error Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 682 __I uint32_t EnbldChns; /*!< Offset: 0x01C (R/ ) DMA Enabled Channel Register */
Kovalev_D 22:12e6183f04d4 683 __IO uint32_t SoftBReq; /*!< Offset: 0x020 (R/W) DMA Software Burst Request Register */
Kovalev_D 22:12e6183f04d4 684 __IO uint32_t SoftSReq; /*!< Offset: 0x024 (R/W) DMA Software Single Request Register */
Kovalev_D 22:12e6183f04d4 685 __IO uint32_t SoftLBReq; /*!< Offset: 0x028 (R/W) DMA Software Last Burst Request Register */
Kovalev_D 22:12e6183f04d4 686 __IO uint32_t SoftLSReq; /*!< Offset: 0x02C (R/W) DMA Software Last Single Request Register */
Kovalev_D 22:12e6183f04d4 687 __IO uint32_t Config; /*!< Offset: 0x030 (R/W) DMA Configuration Register */
Kovalev_D 22:12e6183f04d4 688 __IO uint32_t Sync; /*!< Offset: 0x034 (R/W) DMA Synchronization Register */
Kovalev_D 22:12e6183f04d4 689 } LPC_GPDMA_TypeDef;
Kovalev_D 22:12e6183f04d4 690
Kovalev_D 22:12e6183f04d4 691 /** @brief General Purpose Direct Memory Access Channel (GPDMACH) register structure definition */
Kovalev_D 22:12e6183f04d4 692 typedef struct /* Channel Registers */
Kovalev_D 22:12e6183f04d4 693 {
Kovalev_D 22:12e6183f04d4 694 __IO uint32_t CSrcAddr; /*!< Offset: 0x000 (R/W) DMA Channel # Source Address Register */
Kovalev_D 22:12e6183f04d4 695 __IO uint32_t CDestAddr; /*!< Offset: 0x004 (R/W) DMA Channel # Destination Address Register */
Kovalev_D 22:12e6183f04d4 696 __IO uint32_t CLLI; /*!< Offset: 0x008 (R/W) DMA Channel # Linked List Item Register */
Kovalev_D 22:12e6183f04d4 697 __IO uint32_t CControl; /*!< Offset: 0x00C (R/W) DMA Channel # Control Register */
Kovalev_D 22:12e6183f04d4 698 __IO uint32_t CConfig; /*!< Offset: 0x010 (R/W) DMA Channel # Configuration Register */
Kovalev_D 22:12e6183f04d4 699 } LPC_GPDMACH_TypeDef;
Kovalev_D 22:12e6183f04d4 700
Kovalev_D 22:12e6183f04d4 701 /*------------- Universal Serial Bus (USB) -----------------------------------*/
Kovalev_D 22:12e6183f04d4 702 /** @brief Universal Serial Bus (USB) register structure definition */
Kovalev_D 22:12e6183f04d4 703 typedef struct
Kovalev_D 22:12e6183f04d4 704 {
Kovalev_D 22:12e6183f04d4 705 __I uint32_t Revision; /*!< Offset: 0x000 (R/ ) Revision Register */
Kovalev_D 22:12e6183f04d4 706 __IO uint32_t Control; /*!< Offset: 0x004 (R/W) Control Register */
Kovalev_D 22:12e6183f04d4 707 __IO uint32_t CommandStatus; /*!< Offset: 0x008 (R/W) Command / Status Register */
Kovalev_D 22:12e6183f04d4 708 __IO uint32_t InterruptStatus; /*!< Offset: 0x00C (R/W) Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 709 __IO uint32_t InterruptEnable; /*!< Offset: 0x010 (R/W) Interrupt Enable Register */
Kovalev_D 22:12e6183f04d4 710 __IO uint32_t InterruptDisable; /*!< Offset: 0x014 (R/W) Interrupt Disable Register */
Kovalev_D 22:12e6183f04d4 711 __IO uint32_t HCCA; /*!< Offset: 0x018 (R/W) Host Controller communication Area Register */
Kovalev_D 22:12e6183f04d4 712 __I uint32_t PeriodCurrentED; /*!< Offset: 0x01C (R/ ) Register */
Kovalev_D 22:12e6183f04d4 713 __IO uint32_t ControlHeadED; /*!< Offset: 0x020 (R/W) Register */
Kovalev_D 22:12e6183f04d4 714 __IO uint32_t ControlCurrentED; /*!< Offset: 0x024 (R/W) Register */
Kovalev_D 22:12e6183f04d4 715 __IO uint32_t BulkHeadED; /*!< Offset: 0x028 (R/W) Register */
Kovalev_D 22:12e6183f04d4 716 __IO uint32_t BulkCurrentED; /*!< Offset: 0x02C (R/W) Register */
Kovalev_D 22:12e6183f04d4 717 __I uint32_t DoneHead; /*!< Offset: 0x030 (R/ ) Register */
Kovalev_D 22:12e6183f04d4 718 __IO uint32_t FmInterval; /*!< Offset: 0x034 (R/W) Register */
Kovalev_D 22:12e6183f04d4 719 __I uint32_t FmRemaining; /*!< Offset: 0x038 (R/ ) Register */
Kovalev_D 22:12e6183f04d4 720 __I uint32_t FmNumber; /*!< Offset: 0x03C (R/ ) Register */
Kovalev_D 22:12e6183f04d4 721 __IO uint32_t PeriodicStart; /*!< Offset: 0x040 (R/W) Register */
Kovalev_D 22:12e6183f04d4 722 __IO uint32_t LSTreshold; /*!< Offset: 0x044 (R/W) Register */
Kovalev_D 22:12e6183f04d4 723 __IO uint32_t RhDescriptorA; /*!< Offset: 0x048 (R/W) Register */
Kovalev_D 22:12e6183f04d4 724 __IO uint32_t RhDescriptorB; /*!< Offset: 0x04C (R/W) Register */
Kovalev_D 22:12e6183f04d4 725 __IO uint32_t RhStatus; /*!< Offset: 0x050 (R/W) Register */
Kovalev_D 22:12e6183f04d4 726 __IO uint32_t RhPortStatus1; /*!< Offset: 0x054 (R/W) Register */
Kovalev_D 22:12e6183f04d4 727 __IO uint32_t RhPortStatus2; /*!< Offset: 0x05C (R/W) Register */
Kovalev_D 22:12e6183f04d4 728 uint32_t RESERVED0[40];
Kovalev_D 22:12e6183f04d4 729 __I uint32_t Module_ID; /*!< Offset: 0x0FC (R/ ) Module ID / Version Reverence ID Register */
Kovalev_D 22:12e6183f04d4 730 /* USB On-The-Go Registers */
Kovalev_D 22:12e6183f04d4 731 __I uint32_t IntSt; /*!< Offset: 0x100 (R/ ) OTG Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 732 __IO uint32_t IntEn; /*!< Offset: 0x104 (R/W) OTG Interrupt Enable Register */
Kovalev_D 22:12e6183f04d4 733 __O uint32_t IntSet; /*!< Offset: 0x108 ( /W) OTG Interrupt Set Register */
Kovalev_D 22:12e6183f04d4 734 __O uint32_t IntClr; /*!< Offset: 0x10C ( /W) OTG Interrupt Clear Register */
Kovalev_D 22:12e6183f04d4 735 __IO uint32_t StCtrl; /*!< Offset: 0x110 (R/W) OTG Status and Control Register */
Kovalev_D 22:12e6183f04d4 736 __IO uint32_t Tmr; /*!< Offset: 0x114 (R/W) OTG Timer Register */
Kovalev_D 22:12e6183f04d4 737 uint32_t RESERVED1[58];
Kovalev_D 22:12e6183f04d4 738 /* USB Device Interrupt Registers */
Kovalev_D 22:12e6183f04d4 739 __I uint32_t DevIntSt; /*!< Offset: 0x200 (R/ ) USB Device Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 740 __IO uint32_t DevIntEn; /*!< Offset: 0x204 (R/W) USB Device Interrupt Enable Register */
Kovalev_D 22:12e6183f04d4 741 __O uint32_t DevIntClr; /*!< Offset: 0x208 ( /W) USB Device Interrupt Clear Register */
Kovalev_D 22:12e6183f04d4 742 __O uint32_t DevIntSet; /*!< Offset: 0x20C ( /W) USB Device Interrupt Set Register */
Kovalev_D 22:12e6183f04d4 743 /* USB Device SIE Command Registers */
Kovalev_D 22:12e6183f04d4 744 __O uint32_t CmdCode; /*!< Offset: 0x210 (R/W) USB Command Code Register */
Kovalev_D 22:12e6183f04d4 745 __I uint32_t CmdData; /*!< Offset: 0x214 (R/W) USB Command Data Register */
Kovalev_D 22:12e6183f04d4 746 /* USB Device Transfer Registers */
Kovalev_D 22:12e6183f04d4 747 __I uint32_t RxData; /*!< Offset: 0x218 (R/ ) USB Receive Data Register */
Kovalev_D 22:12e6183f04d4 748 __O uint32_t TxData; /*!< Offset: 0x21C ( /W) USB Transmit Data Register */
Kovalev_D 22:12e6183f04d4 749 __I uint32_t RxPLen; /*!< Offset: 0x220 (R/ ) USB Receive Packet Length Register */
Kovalev_D 22:12e6183f04d4 750 __O uint32_t TxPLen; /*!< Offset: 0x224 ( /W) USB Transmit Packet Length Register */
Kovalev_D 22:12e6183f04d4 751 __IO uint32_t Ctrl; /*!< Offset: 0x228 (R/W) USB Control Register */
Kovalev_D 22:12e6183f04d4 752 __O uint32_t DevIntPri; /*!< Offset: 0x22C (R/W) USB Device Interrupt Priority Register */
Kovalev_D 22:12e6183f04d4 753 /* USB Device Endpoint Interrupt Regs */
Kovalev_D 22:12e6183f04d4 754 __I uint32_t EpIntSt; /*!< Offset: 0x230 (R/ ) USB Endpoint Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 755 __IO uint32_t EpIntEn; /*!< Offset: 0x234 (R/W) USB Endpoint Interrupt Enable Register */
Kovalev_D 22:12e6183f04d4 756 __O uint32_t EpIntClr; /*!< Offset: 0x238 ( /W) USB Endpoint Interrupt Clear Register */
Kovalev_D 22:12e6183f04d4 757 __O uint32_t EpIntSet; /*!< Offset: 0x23C ( /W) USB Endpoint Interrupt Set Register */
Kovalev_D 22:12e6183f04d4 758 __O uint32_t EpIntPri; /*!< Offset: 0x240 ( /W) USB Endpoint Interrupt Priority Register */
Kovalev_D 22:12e6183f04d4 759 /* USB Device Endpoint Realization Reg*/
Kovalev_D 22:12e6183f04d4 760 __IO uint32_t ReEp; /*!< Offset: 0x244 (R/W) USB Realize Endpoint Register */
Kovalev_D 22:12e6183f04d4 761 __O uint32_t EpInd; /*!< Offset: 0x248 ( /W) USB Endpoint Index Register */
Kovalev_D 22:12e6183f04d4 762 __IO uint32_t MaxPSize; /*!< Offset: 0x24C (R/W) USB MaxPacketSize Register */
Kovalev_D 22:12e6183f04d4 763 /* USB Device DMA Registers */
Kovalev_D 22:12e6183f04d4 764 __I uint32_t DMARSt; /*!< Offset: 0x250 (R/ ) USB DMA Request Status Register */
Kovalev_D 22:12e6183f04d4 765 __O uint32_t DMARClr; /*!< Offset: 0x254 ( /W) USB DMA Request Clear Register */
Kovalev_D 22:12e6183f04d4 766 __O uint32_t DMARSet; /*!< Offset: 0x258 ( /W) USB DMA Request Set Register */
Kovalev_D 22:12e6183f04d4 767 uint32_t RESERVED2[9];
Kovalev_D 22:12e6183f04d4 768 __IO uint32_t UDCAH; /*!< Offset: 0x280 (R/W) USB UDCA Head Register */
Kovalev_D 22:12e6183f04d4 769 __I uint32_t EpDMASt; /*!< Offset: 0x284 (R/ ) USB EP DMA Status Register */
Kovalev_D 22:12e6183f04d4 770 __O uint32_t EpDMAEn; /*!< Offset: 0x288 ( /W) USB EP DMA Enable Register */
Kovalev_D 22:12e6183f04d4 771 __O uint32_t EpDMADis; /*!< Offset: 0x28C ( /W) USB EP DMA Disable Register */
Kovalev_D 22:12e6183f04d4 772 __I uint32_t DMAIntSt; /*!< Offset: 0x290 (R/ ) USB DMA Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 773 __IO uint32_t DMAIntEn; /*!< Offset: 0x294 (R/W) USB DMA Interrupt Enable Register */
Kovalev_D 22:12e6183f04d4 774 uint32_t RESERVED3[2];
Kovalev_D 22:12e6183f04d4 775 __I uint32_t EoTIntSt; /*!< Offset: 0x2A0 (R/ ) USB End of Transfer Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 776 __O uint32_t EoTIntClr; /*!< Offset: 0x2A4 ( /W) USB End of Transfer Interrupt Clear Register */
Kovalev_D 22:12e6183f04d4 777 __O uint32_t EoTIntSet; /*!< Offset: 0x2A8 ( /W) USB End of Transfer Interrupt Set Register */
Kovalev_D 22:12e6183f04d4 778 __I uint32_t NDDRIntSt; /*!< Offset: 0x2AC (R/ ) USB New DD Request Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 779 __O uint32_t NDDRIntClr; /*!< Offset: 0x2B0 ( /W) USB New DD Request Interrupt Clear Register */
Kovalev_D 22:12e6183f04d4 780 __O uint32_t NDDRIntSet; /*!< Offset: 0x2B4 ( /W) USB New DD Request Interrupt Set Register */
Kovalev_D 22:12e6183f04d4 781 __I uint32_t SysErrIntSt; /*!< Offset: 0x2B8 (R/ ) USB System Error Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 782 __O uint32_t SysErrIntClr; /*!< Offset: 0x2BC ( /W) USB System Error Interrupt Clear Register */
Kovalev_D 22:12e6183f04d4 783 __O uint32_t SysErrIntSet; /*!< Offset: 0x2C0 ( /W) USB System Error Interrupt Set Register */
Kovalev_D 22:12e6183f04d4 784 uint32_t RESERVED4[15];
Kovalev_D 22:12e6183f04d4 785 /* USB OTG I2C Registers */
Kovalev_D 22:12e6183f04d4 786 union {
Kovalev_D 22:12e6183f04d4 787 __I uint32_t I2C_RX; /*!< Offset: 0x300 (R/ ) OTG I2C Receive Register */
Kovalev_D 22:12e6183f04d4 788 __O uint32_t I2C_TX; /*!< Offset: 0x300 ( /W) OTG I2C Transmit Register */
Kovalev_D 22:12e6183f04d4 789 };
Kovalev_D 22:12e6183f04d4 790 __I uint32_t I2C_STS; /*!< Offset: 0x304 (R/ ) OTG I2C Status Register */
Kovalev_D 22:12e6183f04d4 791 __IO uint32_t I2C_CTL; /*!< Offset: 0x308 (R/W) OTG I2C Control Register */
Kovalev_D 22:12e6183f04d4 792 __IO uint32_t I2C_CLKHI; /*!< Offset: 0x30C (R/W) OTG I2C Clock High Register */
Kovalev_D 22:12e6183f04d4 793 __O uint32_t I2C_CLKLO; /*!< Offset: 0x310 ( /W) OTG I2C Clock Low Register */
Kovalev_D 22:12e6183f04d4 794 uint32_t RESERVED5[824];
Kovalev_D 22:12e6183f04d4 795 /* USB Clock Control Registers */
Kovalev_D 22:12e6183f04d4 796 union {
Kovalev_D 22:12e6183f04d4 797 __IO uint32_t USBClkCtrl; /*!< Offset: 0xFF4 (R/W) OTG clock controller Register */
Kovalev_D 22:12e6183f04d4 798 __IO uint32_t OTGClkCtrl; /*!< Offset: 0xFF4 (R/W) USB clock controller Register */
Kovalev_D 22:12e6183f04d4 799 };
Kovalev_D 22:12e6183f04d4 800 union {
Kovalev_D 22:12e6183f04d4 801 __I uint32_t USBClkSt; /*!< Offset: 0xFF8 (R/ ) OTG clock status Register */
Kovalev_D 22:12e6183f04d4 802 __I uint32_t OTGClkSt; /*!< Offset: 0xFF8 (R/ ) USB clock status Register */
Kovalev_D 22:12e6183f04d4 803 };
Kovalev_D 22:12e6183f04d4 804 } LPC_USB_TypeDef;
Kovalev_D 22:12e6183f04d4 805
Kovalev_D 22:12e6183f04d4 806 /*------------- Ethernet Media Access Controller (EMAC) ----------------------*/
Kovalev_D 22:12e6183f04d4 807 /** @brief Ethernet Media Access Controller (EMAC) register structure definition */
Kovalev_D 22:12e6183f04d4 808 typedef struct
Kovalev_D 22:12e6183f04d4 809 {
Kovalev_D 22:12e6183f04d4 810 __IO uint32_t MAC1; /*!< Offset: 0x000 (R/W) MAC Configuration Register 1 */
Kovalev_D 22:12e6183f04d4 811 __IO uint32_t MAC2; /*!< Offset: 0x004 (R/W) MAC Configuration Register 2 */
Kovalev_D 22:12e6183f04d4 812 __IO uint32_t IPGT; /*!< Offset: 0x008 (R/W) Back-to-Back Inter-Packet-Gap Register */
Kovalev_D 22:12e6183f04d4 813 __IO uint32_t IPGR; /*!< Offset: 0x00C (R/W) Non Back-to-Back Inter-Packet-Gap Register */
Kovalev_D 22:12e6183f04d4 814 __IO uint32_t CLRT; /*!< Offset: 0x010 (R/W) Collision Window / Retry Register */
Kovalev_D 22:12e6183f04d4 815 __IO uint32_t MAXF; /*!< Offset: 0x014 (R/W) Maximum Frame Register */
Kovalev_D 22:12e6183f04d4 816 __IO uint32_t SUPP; /*!< Offset: 0x018 (R/W) PHY Support Register */
Kovalev_D 22:12e6183f04d4 817 __IO uint32_t TEST; /*!< Offset: 0x01C (R/W) Test Register */
Kovalev_D 22:12e6183f04d4 818 __IO uint32_t MCFG; /*!< Offset: 0x020 (R/W) MII Mgmt Configuration Register */
Kovalev_D 22:12e6183f04d4 819 __IO uint32_t MCMD; /*!< Offset: 0x024 (R/W) MII Mgmt Command Register */
Kovalev_D 22:12e6183f04d4 820 __IO uint32_t MADR; /*!< Offset: 0x028 (R/W) MII Mgmt Address Register */
Kovalev_D 22:12e6183f04d4 821 __O uint32_t MWTD; /*!< Offset: 0x02C ( /W) MII Mgmt Write Data Register */
Kovalev_D 22:12e6183f04d4 822 __I uint32_t MRDD; /*!< Offset: 0x030 (R/ ) MII Mgmt Read Data Register */
Kovalev_D 22:12e6183f04d4 823 __I uint32_t MIND; /*!< Offset: 0x034 (R/ ) MII Mgmt Indicators Register */
Kovalev_D 22:12e6183f04d4 824 uint32_t RESERVED0[2];
Kovalev_D 22:12e6183f04d4 825 __IO uint32_t SA0; /*!< Offset: 0x040 (R/W) Station Address 0 Register */
Kovalev_D 22:12e6183f04d4 826 __IO uint32_t SA1; /*!< Offset: 0x044 (R/W) Station Address 1 Register */
Kovalev_D 22:12e6183f04d4 827 __IO uint32_t SA2; /*!< Offset: 0x048 (R/W) Station Address 2 Register */
Kovalev_D 22:12e6183f04d4 828 uint32_t RESERVED1[45];
Kovalev_D 22:12e6183f04d4 829 __IO uint32_t Command; /*!< Offset: 0x100 (R/W) Command Register */
Kovalev_D 22:12e6183f04d4 830 __I uint32_t Status; /*!< Offset: 0x104 (R/ ) Status Register */
Kovalev_D 22:12e6183f04d4 831 __IO uint32_t RxDescriptor; /*!< Offset: 0x108 (R/W) Receive Descriptor Base Address Register */
Kovalev_D 22:12e6183f04d4 832 __IO uint32_t RxStatus; /*!< Offset: 0x10C (R/W) Receive Status Base Address Register */
Kovalev_D 22:12e6183f04d4 833 __IO uint32_t RxDescriptorNumber; /*!< Offset: 0x110 (R/W) Receive Number of Descriptors Register */
Kovalev_D 22:12e6183f04d4 834 __I uint32_t RxProduceIndex; /*!< Offset: 0x114 (R/ ) Receive Produce Index Register */
Kovalev_D 22:12e6183f04d4 835 __IO uint32_t RxConsumeIndex; /*!< Offset: 0x118 (R/W) Receive Consume Index Register */
Kovalev_D 22:12e6183f04d4 836 __IO uint32_t TxDescriptor; /*!< Offset: 0x11C (R/W) Transmit Descriptor Base Address Register */
Kovalev_D 22:12e6183f04d4 837 __IO uint32_t TxStatus; /*!< Offset: 0x120 (R/W) Transmit Status Base Address Register */
Kovalev_D 22:12e6183f04d4 838 __IO uint32_t TxDescriptorNumber; /*!< Offset: 0x124 (R/W) Transmit Number of Descriptors Register */
Kovalev_D 22:12e6183f04d4 839 __IO uint32_t TxProduceIndex; /*!< Offset: 0x128 (R/W) Transmit Produce Index Register */
Kovalev_D 22:12e6183f04d4 840 __I uint32_t TxConsumeIndex; /*!< Offset: 0x12C (R/ ) Transmit Consume Index Register */
Kovalev_D 22:12e6183f04d4 841 uint32_t RESERVED2[10];
Kovalev_D 22:12e6183f04d4 842 __I uint32_t TSV0; /*!< Offset: 0x158 (R/ ) Transmit Status Vector 0 Register */
Kovalev_D 22:12e6183f04d4 843 __I uint32_t TSV1; /*!< Offset: 0x15C (R/ ) Transmit Status Vector 1 Register */
Kovalev_D 22:12e6183f04d4 844 __I uint32_t RSV; /*!< Offset: 0x160 (R/ ) Receive Status Vector Register */
Kovalev_D 22:12e6183f04d4 845 uint32_t RESERVED3[3];
Kovalev_D 22:12e6183f04d4 846 __IO uint32_t FlowControlCounter; /*!< Offset: 0x170 (R/W) Flow Control Counter Register */
Kovalev_D 22:12e6183f04d4 847 __I uint32_t FlowControlStatus; /*!< Offset: 0x174 (R/ ) Flow Control Status egister */
Kovalev_D 22:12e6183f04d4 848 uint32_t RESERVED4[34];
Kovalev_D 22:12e6183f04d4 849 __IO uint32_t RxFilterCtrl; /*!< Offset: 0x200 (R/W) Receive Filter Control Register */
Kovalev_D 22:12e6183f04d4 850 __I uint32_t RxFilterWoLStatus; /*!< Offset: 0x204 (R/ ) Receive Filter WoL Status Register */
Kovalev_D 22:12e6183f04d4 851 __O uint32_t RxFilterWoLClear; /*!< Offset: 0x208 ( /W) Receive Filter WoL Clear Register */
Kovalev_D 22:12e6183f04d4 852 uint32_t RESERVED5;
Kovalev_D 22:12e6183f04d4 853 __IO uint32_t HashFilterL; /*!< Offset: 0x210 (R/W) Hash Filter Table LSBs Register */
Kovalev_D 22:12e6183f04d4 854 __IO uint32_t HashFilterH; /*!< Offset: 0x214 (R/W) Hash Filter Table MSBs Register */
Kovalev_D 22:12e6183f04d4 855 uint32_t RESERVED6[882];
Kovalev_D 22:12e6183f04d4 856 __I uint32_t IntStatus; /*!< Offset: 0xFE0 (R/ ) Interrupt Status Register */
Kovalev_D 22:12e6183f04d4 857 __IO uint32_t IntEnable; /*!< Offset: 0xFE4 (R/W) Interrupt Enable Register */
Kovalev_D 22:12e6183f04d4 858 __O uint32_t IntClear; /*!< Offset: 0xFE8 ( /W) Interrupt Clear Register */
Kovalev_D 22:12e6183f04d4 859 __O uint32_t IntSet; /*!< Offset: 0xFEC ( /W) Interrupt Set Register */
Kovalev_D 22:12e6183f04d4 860 uint32_t RESERVED7;
Kovalev_D 22:12e6183f04d4 861 __IO uint32_t PowerDown; /*!< Offset: 0xFF4 (R/W) Power-Down Register */
Kovalev_D 22:12e6183f04d4 862 } LPC_EMAC_TypeDef;
Kovalev_D 22:12e6183f04d4 863
Kovalev_D 22:12e6183f04d4 864 #if defined ( __CC_ARM )
Kovalev_D 22:12e6183f04d4 865 #pragma no_anon_unions
Kovalev_D 22:12e6183f04d4 866 #endif
Kovalev_D 22:12e6183f04d4 867
Kovalev_D 22:12e6183f04d4 868
Kovalev_D 22:12e6183f04d4 869 /******************************************************************************/
Kovalev_D 22:12e6183f04d4 870 /* Peripheral memory map */
Kovalev_D 22:12e6183f04d4 871 /******************************************************************************/
Kovalev_D 22:12e6183f04d4 872 /* Base addresses */
Kovalev_D 22:12e6183f04d4 873 #define LPC_FLASH_BASE (0x00000000UL)
Kovalev_D 22:12e6183f04d4 874 #define LPC_RAM_BASE (0x10000000UL)
Kovalev_D 22:12e6183f04d4 875 #ifdef __LPC17XX_REV00
Kovalev_D 22:12e6183f04d4 876 #define LPC_AHBRAM0_BASE (0x20000000UL)
Kovalev_D 22:12e6183f04d4 877 #define LPC_AHBRAM1_BASE (0x20004000UL)
Kovalev_D 22:12e6183f04d4 878 #else
Kovalev_D 22:12e6183f04d4 879 #define LPC_AHBRAM0_BASE (0x2007C000UL)
Kovalev_D 22:12e6183f04d4 880 #define LPC_AHBRAM1_BASE (0x20080000UL)
Kovalev_D 22:12e6183f04d4 881 #endif
Kovalev_D 22:12e6183f04d4 882 #define LPC_GPIO_BASE (0x2009C000UL)
Kovalev_D 22:12e6183f04d4 883 #define LPC_APB0_BASE (0x40000000UL)
Kovalev_D 22:12e6183f04d4 884 #define LPC_APB1_BASE (0x40080000UL)
Kovalev_D 22:12e6183f04d4 885 #define LPC_AHB_BASE (0x50000000UL)
Kovalev_D 22:12e6183f04d4 886 #define LPC_CM3_BASE (0xE0000000UL)
Kovalev_D 22:12e6183f04d4 887
Kovalev_D 22:12e6183f04d4 888 /* APB0 peripherals */
Kovalev_D 22:12e6183f04d4 889 #define LPC_WDT_BASE (LPC_APB0_BASE + 0x00000)
Kovalev_D 22:12e6183f04d4 890 #define LPC_TIM0_BASE (LPC_APB0_BASE + 0x04000)
Kovalev_D 22:12e6183f04d4 891 #define LPC_TIM1_BASE (LPC_APB0_BASE + 0x08000)
Kovalev_D 22:12e6183f04d4 892 #define LPC_UART0_BASE (LPC_APB0_BASE + 0x0C000)
Kovalev_D 22:12e6183f04d4 893 #define LPC_UART1_BASE (LPC_APB0_BASE + 0x10000)
Kovalev_D 22:12e6183f04d4 894 #define LPC_PWM1_BASE (LPC_APB0_BASE + 0x18000)
Kovalev_D 22:12e6183f04d4 895 #define LPC_I2C0_BASE (LPC_APB0_BASE + 0x1C000)
Kovalev_D 22:12e6183f04d4 896 #define LPC_SPI_BASE (LPC_APB0_BASE + 0x20000)
Kovalev_D 22:12e6183f04d4 897 #define LPC_RTC_BASE (LPC_APB0_BASE + 0x24000)
Kovalev_D 22:12e6183f04d4 898 #define LPC_GPIOINT_BASE (LPC_APB0_BASE + 0x28080)
Kovalev_D 22:12e6183f04d4 899 #define LPC_PINCON_BASE (LPC_APB0_BASE + 0x2C000)
Kovalev_D 22:12e6183f04d4 900 #define LPC_SSP1_BASE (LPC_APB0_BASE + 0x30000)
Kovalev_D 22:12e6183f04d4 901 #define LPC_ADC_BASE (LPC_APB0_BASE + 0x34000)
Kovalev_D 22:12e6183f04d4 902 #define LPC_CANAF_RAM_BASE (LPC_APB0_BASE + 0x38000)
Kovalev_D 22:12e6183f04d4 903 #define LPC_CANAF_BASE (LPC_APB0_BASE + 0x3C000)
Kovalev_D 22:12e6183f04d4 904 #define LPC_CANCR_BASE (LPC_APB0_BASE + 0x40000)
Kovalev_D 22:12e6183f04d4 905 #define LPC_CAN1_BASE (LPC_APB0_BASE + 0x44000)
Kovalev_D 22:12e6183f04d4 906 #define LPC_CAN2_BASE (LPC_APB0_BASE + 0x48000)
Kovalev_D 22:12e6183f04d4 907 #define LPC_I2C1_BASE (LPC_APB0_BASE + 0x5C000)
Kovalev_D 22:12e6183f04d4 908
Kovalev_D 22:12e6183f04d4 909 /* APB1 peripherals */
Kovalev_D 22:12e6183f04d4 910 #define LPC_SSP0_BASE (LPC_APB1_BASE + 0x08000)
Kovalev_D 22:12e6183f04d4 911 #define LPC_DAC_BASE (LPC_APB1_BASE + 0x0C000)
Kovalev_D 22:12e6183f04d4 912 #define LPC_TIM2_BASE (LPC_APB1_BASE + 0x10000)
Kovalev_D 22:12e6183f04d4 913 #define LPC_TIM3_BASE (LPC_APB1_BASE + 0x14000)
Kovalev_D 22:12e6183f04d4 914 #define LPC_UART2_BASE (LPC_APB1_BASE + 0x18000)
Kovalev_D 22:12e6183f04d4 915 #define LPC_UART3_BASE (LPC_APB1_BASE + 0x1C000)
Kovalev_D 22:12e6183f04d4 916 #define LPC_I2C2_BASE (LPC_APB1_BASE + 0x20000)
Kovalev_D 22:12e6183f04d4 917 #define LPC_I2S_BASE (LPC_APB1_BASE + 0x28000)
Kovalev_D 22:12e6183f04d4 918 #define LPC_RIT_BASE (LPC_APB1_BASE + 0x30000)
Kovalev_D 22:12e6183f04d4 919 #define LPC_MCPWM_BASE (LPC_APB1_BASE + 0x38000)
Kovalev_D 22:12e6183f04d4 920 #define LPC_QEI_BASE (LPC_APB1_BASE + 0x3C000)
Kovalev_D 22:12e6183f04d4 921 #define LPC_SC_BASE (LPC_APB1_BASE + 0x7C000)
Kovalev_D 22:12e6183f04d4 922
Kovalev_D 22:12e6183f04d4 923 /* AHB peripherals */
Kovalev_D 22:12e6183f04d4 924 #define LPC_EMAC_BASE (LPC_AHB_BASE + 0x00000)
Kovalev_D 22:12e6183f04d4 925 #define LPC_GPDMA_BASE (LPC_AHB_BASE + 0x04000)
Kovalev_D 22:12e6183f04d4 926 #define LPC_GPDMACH0_BASE (LPC_AHB_BASE + 0x04100)
Kovalev_D 22:12e6183f04d4 927 #define LPC_GPDMACH1_BASE (LPC_AHB_BASE + 0x04120)
Kovalev_D 22:12e6183f04d4 928 #define LPC_GPDMACH2_BASE (LPC_AHB_BASE + 0x04140)
Kovalev_D 22:12e6183f04d4 929 #define LPC_GPDMACH3_BASE (LPC_AHB_BASE + 0x04160)
Kovalev_D 22:12e6183f04d4 930 #define LPC_GPDMACH4_BASE (LPC_AHB_BASE + 0x04180)
Kovalev_D 22:12e6183f04d4 931 #define LPC_GPDMACH5_BASE (LPC_AHB_BASE + 0x041A0)
Kovalev_D 22:12e6183f04d4 932 #define LPC_GPDMACH6_BASE (LPC_AHB_BASE + 0x041C0)
Kovalev_D 22:12e6183f04d4 933 #define LPC_GPDMACH7_BASE (LPC_AHB_BASE + 0x041E0)
Kovalev_D 22:12e6183f04d4 934 #define LPC_USB_BASE (LPC_AHB_BASE + 0x0C000)
Kovalev_D 22:12e6183f04d4 935
Kovalev_D 22:12e6183f04d4 936 /* GPIOs */
Kovalev_D 22:12e6183f04d4 937 #define LPC_GPIO0_BASE (LPC_GPIO_BASE + 0x00000)
Kovalev_D 22:12e6183f04d4 938 #define LPC_GPIO1_BASE (LPC_GPIO_BASE + 0x00020)
Kovalev_D 22:12e6183f04d4 939 #define LPC_GPIO2_BASE (LPC_GPIO_BASE + 0x00040)
Kovalev_D 22:12e6183f04d4 940 #define LPC_GPIO3_BASE (LPC_GPIO_BASE + 0x00060)
Kovalev_D 22:12e6183f04d4 941 #define LPC_GPIO4_BASE (LPC_GPIO_BASE + 0x00080)
Kovalev_D 22:12e6183f04d4 942
Kovalev_D 22:12e6183f04d4 943
Kovalev_D 22:12e6183f04d4 944 /******************************************************************************/
Kovalev_D 22:12e6183f04d4 945 /* Peripheral declaration */
Kovalev_D 22:12e6183f04d4 946 /******************************************************************************/
Kovalev_D 22:12e6183f04d4 947 #define LPC_SC ((LPC_SC_TypeDef *) LPC_SC_BASE )
Kovalev_D 22:12e6183f04d4 948 #define LPC_GPIO0 ((LPC_GPIO_TypeDef *) LPC_GPIO0_BASE )
Kovalev_D 22:12e6183f04d4 949 #define LPC_GPIO1 ((LPC_GPIO_TypeDef *) LPC_GPIO1_BASE )
Kovalev_D 22:12e6183f04d4 950 #define LPC_GPIO2 ((LPC_GPIO_TypeDef *) LPC_GPIO2_BASE )
Kovalev_D 22:12e6183f04d4 951 #define LPC_GPIO3 ((LPC_GPIO_TypeDef *) LPC_GPIO3_BASE )
Kovalev_D 22:12e6183f04d4 952 #define LPC_GPIO4 ((LPC_GPIO_TypeDef *) LPC_GPIO4_BASE )
Kovalev_D 22:12e6183f04d4 953 #define LPC_WDT ((LPC_WDT_TypeDef *) LPC_WDT_BASE )
Kovalev_D 22:12e6183f04d4 954 #define LPC_TIM0 ((LPC_TIM_TypeDef *) LPC_TIM0_BASE )
Kovalev_D 22:12e6183f04d4 955 #define LPC_TIM1 ((LPC_TIM_TypeDef *) LPC_TIM1_BASE )
Kovalev_D 22:12e6183f04d4 956 #define LPC_TIM2 ((LPC_TIM_TypeDef *) LPC_TIM2_BASE )
Kovalev_D 22:12e6183f04d4 957 #define LPC_TIM3 ((LPC_TIM_TypeDef *) LPC_TIM3_BASE )
Kovalev_D 22:12e6183f04d4 958 #define LPC_RIT ((LPC_RIT_TypeDef *) LPC_RIT_BASE )
Kovalev_D 22:12e6183f04d4 959 #define LPC_UART0 ((LPC_UART_TypeDef *) LPC_UART0_BASE )
Kovalev_D 22:12e6183f04d4 960 #define LPC_UART1 ((LPC_UART1_TypeDef *) LPC_UART1_BASE )
Kovalev_D 22:12e6183f04d4 961 #define LPC_UART2 ((LPC_UART_TypeDef *) LPC_UART2_BASE )
Kovalev_D 22:12e6183f04d4 962 #define LPC_UART3 ((LPC_UART_TypeDef *) LPC_UART3_BASE )
Kovalev_D 22:12e6183f04d4 963 #define LPC_PWM1 ((LPC_PWM_TypeDef *) LPC_PWM1_BASE )
Kovalev_D 22:12e6183f04d4 964 #define LPC_I2C0 ((LPC_I2C_TypeDef *) LPC_I2C0_BASE )
Kovalev_D 22:12e6183f04d4 965 #define LPC_I2C1 ((LPC_I2C_TypeDef *) LPC_I2C1_BASE )
Kovalev_D 22:12e6183f04d4 966 #define LPC_I2C2 ((LPC_I2C_TypeDef *) LPC_I2C2_BASE )
Kovalev_D 22:12e6183f04d4 967 #define LPC_I2S ((LPC_I2S_TypeDef *) LPC_I2S_BASE )
Kovalev_D 22:12e6183f04d4 968 #define LPC_SPI ((LPC_SPI_TypeDef *) LPC_SPI_BASE )
Kovalev_D 22:12e6183f04d4 969 #define LPC_RTC ((LPC_RTC_TypeDef *) LPC_RTC_BASE )
Kovalev_D 22:12e6183f04d4 970 #define LPC_GPIOINT ((LPC_GPIOINT_TypeDef *) LPC_GPIOINT_BASE )
Kovalev_D 22:12e6183f04d4 971 #define LPC_PINCON ((LPC_PINCON_TypeDef *) LPC_PINCON_BASE )
Kovalev_D 22:12e6183f04d4 972 #define LPC_SSP0 ((LPC_SSP_TypeDef *) LPC_SSP0_BASE )
Kovalev_D 22:12e6183f04d4 973 #define LPC_SSP1 ((LPC_SSP_TypeDef *) LPC_SSP1_BASE )
Kovalev_D 22:12e6183f04d4 974 #define LPC_ADC ((LPC_ADC_TypeDef *) LPC_ADC_BASE )
Kovalev_D 22:12e6183f04d4 975 #define LPC_DAC ((LPC_DAC_TypeDef *) LPC_DAC_BASE )
Kovalev_D 22:12e6183f04d4 976 #define LPC_CANAF_RAM ((LPC_CANAF_RAM_TypeDef *) LPC_CANAF_RAM_BASE)
Kovalev_D 22:12e6183f04d4 977 #define LPC_CANAF ((LPC_CANAF_TypeDef *) LPC_CANAF_BASE )
Kovalev_D 22:12e6183f04d4 978 #define LPC_CANCR ((LPC_CANCR_TypeDef *) LPC_CANCR_BASE )
Kovalev_D 22:12e6183f04d4 979 #define LPC_CAN1 ((LPC_CAN_TypeDef *) LPC_CAN1_BASE )
Kovalev_D 22:12e6183f04d4 980 #define LPC_CAN2 ((LPC_CAN_TypeDef *) LPC_CAN2_BASE )
Kovalev_D 22:12e6183f04d4 981 #define LPC_MCPWM ((LPC_MCPWM_TypeDef *) LPC_MCPWM_BASE )
Kovalev_D 22:12e6183f04d4 982 #define LPC_QEI ((LPC_QEI_TypeDef *) LPC_QEI_BASE )
Kovalev_D 22:12e6183f04d4 983 #define LPC_EMAC ((LPC_EMAC_TypeDef *) LPC_EMAC_BASE )
Kovalev_D 22:12e6183f04d4 984 #define LPC_GPDMA ((LPC_GPDMA_TypeDef *) LPC_GPDMA_BASE )
Kovalev_D 22:12e6183f04d4 985 #define LPC_GPDMACH0 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH0_BASE )
Kovalev_D 22:12e6183f04d4 986 #define LPC_GPDMACH1 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH1_BASE )
Kovalev_D 22:12e6183f04d4 987 #define LPC_GPDMACH2 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH2_BASE )
Kovalev_D 22:12e6183f04d4 988 #define LPC_GPDMACH3 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH3_BASE )
Kovalev_D 22:12e6183f04d4 989 #define LPC_GPDMACH4 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH4_BASE )
Kovalev_D 22:12e6183f04d4 990 #define LPC_GPDMACH5 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH5_BASE )
Kovalev_D 22:12e6183f04d4 991 #define LPC_GPDMACH6 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH6_BASE )
Kovalev_D 22:12e6183f04d4 992 #define LPC_GPDMACH7 ((LPC_GPDMACH_TypeDef *) LPC_GPDMACH7_BASE )
Kovalev_D 22:12e6183f04d4 993 #define LPC_USB ((LPC_USB_TypeDef *) LPC_USB_BASE )
Kovalev_D 22:12e6183f04d4 994
Kovalev_D 22:12e6183f04d4 995 /**
Kovalev_D 22:12e6183f04d4 996 * @}
Kovalev_D 22:12e6183f04d4 997 */
Kovalev_D 22:12e6183f04d4 998
Kovalev_D 22:12e6183f04d4 999 #endif // __LPC17xx_H__