/******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** | |
* File Name : stm32f10x_map.h | |
* Author : MCD Application Team | |
* Version : V2.0.1 | |
* Date : 06/13/2008 | |
* Description : This file contains all the peripheral register's definitions | |
* and memory mapping. | |
******************************************************************************** | |
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS | |
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. | |
* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, | |
* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE | |
* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING | |
* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. | |
*******************************************************************************/ | |
/* Define to prevent recursive inclusion -------------------------------------*/ | |
#ifndef __STM32F10x_MAP_H | |
#define __STM32F10x_MAP_H | |
#ifndef EXT | |
#define EXT extern | |
#endif /* EXT */ | |
/* Includes ------------------------------------------------------------------*/ | |
#include "stm32f10x_conf.h" | |
#include "stm32f10x_type.h" | |
#include "cortexm3_macro.h" | |
/* Exported types ------------------------------------------------------------*/ | |
/******************************************************************************/ | |
/* Peripheral registers structures */ | |
/******************************************************************************/ | |
/*------------------------ Analog to Digital Converter -----------------------*/ | |
typedef struct | |
{ | |
vu32 SR; | |
vu32 CR1; | |
vu32 CR2; | |
vu32 SMPR1; | |
vu32 SMPR2; | |
vu32 JOFR1; | |
vu32 JOFR2; | |
vu32 JOFR3; | |
vu32 JOFR4; | |
vu32 HTR; | |
vu32 LTR; | |
vu32 SQR1; | |
vu32 SQR2; | |
vu32 SQR3; | |
vu32 JSQR; | |
vu32 JDR1; | |
vu32 JDR2; | |
vu32 JDR3; | |
vu32 JDR4; | |
vu32 DR; | |
} ADC_TypeDef; | |
/*------------------------ Backup Registers ----------------------------------*/ | |
typedef struct | |
{ | |
u32 RESERVED0; | |
vu16 DR1; | |
u16 RESERVED1; | |
vu16 DR2; | |
u16 RESERVED2; | |
vu16 DR3; | |
u16 RESERVED3; | |
vu16 DR4; | |
u16 RESERVED4; | |
vu16 DR5; | |
u16 RESERVED5; | |
vu16 DR6; | |
u16 RESERVED6; | |
vu16 DR7; | |
u16 RESERVED7; | |
vu16 DR8; | |
u16 RESERVED8; | |
vu16 DR9; | |
u16 RESERVED9; | |
vu16 DR10; | |
u16 RESERVED10; | |
vu16 RTCCR; | |
u16 RESERVED11; | |
vu16 CR; | |
u16 RESERVED12; | |
vu16 CSR; | |
u16 RESERVED13[5]; | |
vu16 DR11; | |
u16 RESERVED14; | |
vu16 DR12; | |
u16 RESERVED15; | |
vu16 DR13; | |
u16 RESERVED16; | |
vu16 DR14; | |
u16 RESERVED17; | |
vu16 DR15; | |
u16 RESERVED18; | |
vu16 DR16; | |
u16 RESERVED19; | |
vu16 DR17; | |
u16 RESERVED20; | |
vu16 DR18; | |
u16 RESERVED21; | |
vu16 DR19; | |
u16 RESERVED22; | |
vu16 DR20; | |
u16 RESERVED23; | |
vu16 DR21; | |
u16 RESERVED24; | |
vu16 DR22; | |
u16 RESERVED25; | |
vu16 DR23; | |
u16 RESERVED26; | |
vu16 DR24; | |
u16 RESERVED27; | |
vu16 DR25; | |
u16 RESERVED28; | |
vu16 DR26; | |
u16 RESERVED29; | |
vu16 DR27; | |
u16 RESERVED30; | |
vu16 DR28; | |
u16 RESERVED31; | |
vu16 DR29; | |
u16 RESERVED32; | |
vu16 DR30; | |
u16 RESERVED33; | |
vu16 DR31; | |
u16 RESERVED34; | |
vu16 DR32; | |
u16 RESERVED35; | |
vu16 DR33; | |
u16 RESERVED36; | |
vu16 DR34; | |
u16 RESERVED37; | |
vu16 DR35; | |
u16 RESERVED38; | |
vu16 DR36; | |
u16 RESERVED39; | |
vu16 DR37; | |
u16 RESERVED40; | |
vu16 DR38; | |
u16 RESERVED41; | |
vu16 DR39; | |
u16 RESERVED42; | |
vu16 DR40; | |
u16 RESERVED43; | |
vu16 DR41; | |
u16 RESERVED44; | |
vu16 DR42; | |
u16 RESERVED45; | |
} BKP_TypeDef; | |
/*------------------------ Controller Area Network ---------------------------*/ | |
typedef struct | |
{ | |
vu32 TIR; | |
vu32 TDTR; | |
vu32 TDLR; | |
vu32 TDHR; | |
} CAN_TxMailBox_TypeDef; | |
typedef struct | |
{ | |
vu32 RIR; | |
vu32 RDTR; | |
vu32 RDLR; | |
vu32 RDHR; | |
} CAN_FIFOMailBox_TypeDef; | |
typedef struct | |
{ | |
vu32 FR1; | |
vu32 FR2; | |
} CAN_FilterRegister_TypeDef; | |
typedef struct | |
{ | |
vu32 MCR; | |
vu32 MSR; | |
vu32 TSR; | |
vu32 RF0R; | |
vu32 RF1R; | |
vu32 IER; | |
vu32 ESR; | |
vu32 BTR; | |
u32 RESERVED0[88]; | |
CAN_TxMailBox_TypeDef sTxMailBox[3]; | |
CAN_FIFOMailBox_TypeDef sFIFOMailBox[2]; | |
u32 RESERVED1[12]; | |
vu32 FMR; | |
vu32 FM1R; | |
u32 RESERVED2; | |
vu32 FS1R; | |
u32 RESERVED3; | |
vu32 FFA1R; | |
u32 RESERVED4; | |
vu32 FA1R; | |
u32 RESERVED5[8]; | |
CAN_FilterRegister_TypeDef sFilterRegister[14]; | |
} CAN_TypeDef; | |
/*------------------------ CRC calculation unit ------------------------------*/ | |
typedef struct | |
{ | |
vu32 DR; | |
vu8 IDR; | |
u8 RESERVED0; | |
u16 RESERVED1; | |
vu32 CR; | |
} CRC_TypeDef; | |
/*------------------------ Digital to Analog Converter -----------------------*/ | |
typedef struct | |
{ | |
vu32 CR; | |
vu32 SWTRIGR; | |
vu32 DHR12R1; | |
vu32 DHR12L1; | |
vu32 DHR8R1; | |
vu32 DHR12R2; | |
vu32 DHR12L2; | |
vu32 DHR8R2; | |
vu32 DHR12RD; | |
vu32 DHR12LD; | |
vu32 DHR8RD; | |
vu32 DOR1; | |
vu32 DOR2; | |
} DAC_TypeDef; | |
/*------------------------ Debug MCU -----------------------------------------*/ | |
typedef struct | |
{ | |
vu32 IDCODE; | |
vu32 CR; | |
}DBGMCU_TypeDef; | |
/*------------------------ DMA Controller ------------------------------------*/ | |
typedef struct | |
{ | |
vu32 CCR; | |
vu32 CNDTR; | |
vu32 CPAR; | |
vu32 CMAR; | |
} DMA_Channel_TypeDef; | |
typedef struct | |
{ | |
vu32 ISR; | |
vu32 IFCR; | |
} DMA_TypeDef; | |
/*------------------------ External Interrupt/Event Controller ---------------*/ | |
typedef struct | |
{ | |
vu32 IMR; | |
vu32 EMR; | |
vu32 RTSR; | |
vu32 FTSR; | |
vu32 SWIER; | |
vu32 PR; | |
} EXTI_TypeDef; | |
/*------------------------ FLASH and Option Bytes Registers ------------------*/ | |
typedef struct | |
{ | |
vu32 ACR; | |
vu32 KEYR; | |
vu32 OPTKEYR; | |
vu32 SR; | |
vu32 CR; | |
vu32 AR; | |
vu32 RESERVED; | |
vu32 OBR; | |
vu32 WRPR; | |
} FLASH_TypeDef; | |
typedef struct | |
{ | |
vu16 RDP; | |
vu16 USER; | |
vu16 Data0; | |
vu16 Data1; | |
vu16 WRP0; | |
vu16 WRP1; | |
vu16 WRP2; | |
vu16 WRP3; | |
} OB_TypeDef; | |
/*------------------------ Flexible Static Memory Controller -----------------*/ | |
typedef struct | |
{ | |
vu32 BTCR[8]; | |
} FSMC_Bank1_TypeDef; | |
typedef struct | |
{ | |
vu32 BWTR[7]; | |
} FSMC_Bank1E_TypeDef; | |
typedef struct | |
{ | |
vu32 PCR2; | |
vu32 SR2; | |
vu32 PMEM2; | |
vu32 PATT2; | |
u32 RESERVED0; | |
vu32 ECCR2; | |
} FSMC_Bank2_TypeDef; | |
typedef struct | |
{ | |
vu32 PCR3; | |
vu32 SR3; | |
vu32 PMEM3; | |
vu32 PATT3; | |
u32 RESERVED0; | |
vu32 ECCR3; | |
} FSMC_Bank3_TypeDef; | |
typedef struct | |
{ | |
vu32 PCR4; | |
vu32 SR4; | |
vu32 PMEM4; | |
vu32 PATT4; | |
vu32 PIO4; | |
} FSMC_Bank4_TypeDef; | |
/*------------------------ General Purpose and Alternate Function IO ---------*/ | |
typedef struct | |
{ | |
vu32 CRL; | |
vu32 CRH; | |
vu32 IDR; | |
vu32 ODR; | |
vu32 BSRR; | |
vu32 BRR; | |
vu32 LCKR; | |
} GPIO_TypeDef; | |
typedef struct | |
{ | |
vu32 EVCR; | |
vu32 MAPR; | |
vu32 EXTICR[4]; | |
} AFIO_TypeDef; | |
/*------------------------ Inter-integrated Circuit Interface ----------------*/ | |
typedef struct | |
{ | |
vu16 CR1; | |
u16 RESERVED0; | |
vu16 CR2; | |
u16 RESERVED1; | |
vu16 OAR1; | |
u16 RESERVED2; | |
vu16 OAR2; | |
u16 RESERVED3; | |
vu16 DR; | |
u16 RESERVED4; | |
vu16 SR1; | |
u16 RESERVED5; | |
vu16 SR2; | |
u16 RESERVED6; | |
vu16 CCR; | |
u16 RESERVED7; | |
vu16 TRISE; | |
u16 RESERVED8; | |
} I2C_TypeDef; | |
/*------------------------ Independent WATCHDOG ------------------------------*/ | |
typedef struct | |
{ | |
vu32 KR; | |
vu32 PR; | |
vu32 RLR; | |
vu32 SR; | |
} IWDG_TypeDef; | |
/*------------------------ Nested Vectored Interrupt Controller --------------*/ | |
typedef struct | |
{ | |
vu32 ISER[2]; | |
u32 RESERVED0[30]; | |
vu32 ICER[2]; | |
u32 RSERVED1[30]; | |
vu32 ISPR[2]; | |
u32 RESERVED2[30]; | |
vu32 ICPR[2]; | |
u32 RESERVED3[30]; | |
vu32 IABR[2]; | |
u32 RESERVED4[62]; | |
vu32 IPR[15]; | |
} NVIC_TypeDef; | |
typedef struct | |
{ | |
vuc32 CPUID; | |
vu32 ICSR; | |
vu32 VTOR; | |
vu32 AIRCR; | |
vu32 SCR; | |
vu32 CCR; | |
vu32 SHPR[3]; | |
vu32 SHCSR; | |
vu32 CFSR; | |
vu32 HFSR; | |
vu32 DFSR; | |
vu32 MMFAR; | |
vu32 BFAR; | |
vu32 AFSR; | |
} SCB_TypeDef; | |
/*------------------------ Power Control -------------------------------------*/ | |
typedef struct | |
{ | |
vu32 CR; | |
vu32 CSR; | |
} PWR_TypeDef; | |
/*------------------------ Reset and Clock Control ---------------------------*/ | |
typedef struct | |
{ | |
vu32 CR; | |
vu32 CFGR; | |
vu32 CIR; | |
vu32 APB2RSTR; | |
vu32 APB1RSTR; | |
vu32 AHBENR; | |
vu32 APB2ENR; | |
vu32 APB1ENR; | |
vu32 BDCR; | |
vu32 CSR; | |
} RCC_TypeDef; | |
/*------------------------ Real-Time Clock -----------------------------------*/ | |
typedef struct | |
{ | |
vu16 CRH; | |
u16 RESERVED0; | |
vu16 CRL; | |
u16 RESERVED1; | |
vu16 PRLH; | |
u16 RESERVED2; | |
vu16 PRLL; | |
u16 RESERVED3; | |
vu16 DIVH; | |
u16 RESERVED4; | |
vu16 DIVL; | |
u16 RESERVED5; | |
vu16 CNTH; | |
u16 RESERVED6; | |
vu16 CNTL; | |
u16 RESERVED7; | |
vu16 ALRH; | |
u16 RESERVED8; | |
vu16 ALRL; | |
u16 RESERVED9; | |
} RTC_TypeDef; | |
/*------------------------ SD host Interface ---------------------------------*/ | |
typedef struct | |
{ | |
vu32 POWER; | |
vu32 CLKCR; | |
vu32 ARG; | |
vu32 CMD; | |
vuc32 RESPCMD; | |
vuc32 RESP1; | |
vuc32 RESP2; | |
vuc32 RESP3; | |
vuc32 RESP4; | |
vu32 DTIMER; | |
vu32 DLEN; | |
vu32 DCTRL; | |
vuc32 DCOUNT; | |
vuc32 STA; | |
vu32 ICR; | |
vu32 MASK; | |
u32 RESERVED0[2]; | |
vuc32 FIFOCNT; | |
u32 RESERVED1[13]; | |
vu32 FIFO; | |
} SDIO_TypeDef; | |
/*------------------------ Serial Peripheral Interface -----------------------*/ | |
typedef struct | |
{ | |
vu16 CR1; | |
u16 RESERVED0; | |
vu16 CR2; | |
u16 RESERVED1; | |
vu16 SR; | |
u16 RESERVED2; | |
vu16 DR; | |
u16 RESERVED3; | |
vu16 CRCPR; | |
u16 RESERVED4; | |
vu16 RXCRCR; | |
u16 RESERVED5; | |
vu16 TXCRCR; | |
u16 RESERVED6; | |
vu16 I2SCFGR; | |
u16 RESERVED7; | |
vu16 I2SPR; | |
u16 RESERVED8; | |
} SPI_TypeDef; | |
/*------------------------ SystemTick ----------------------------------------*/ | |
typedef struct | |
{ | |
vu32 CTRL; | |
vu32 LOAD; | |
vu32 VAL; | |
vuc32 CALIB; | |
} SysTick_TypeDef; | |
/*------------------------ TIM -----------------------------------------------*/ | |
typedef struct | |
{ | |
vu16 CR1; | |
u16 RESERVED0; | |
vu16 CR2; | |
u16 RESERVED1; | |
vu16 SMCR; | |
u16 RESERVED2; | |
vu16 DIER; | |
u16 RESERVED3; | |
vu16 SR; | |
u16 RESERVED4; | |
vu16 EGR; | |
u16 RESERVED5; | |
vu16 CCMR1; | |
u16 RESERVED6; | |
vu16 CCMR2; | |
u16 RESERVED7; | |
vu16 CCER; | |
u16 RESERVED8; | |
vu16 CNT; | |
u16 RESERVED9; | |
vu16 PSC; | |
u16 RESERVED10; | |
vu16 ARR; | |
u16 RESERVED11; | |
vu16 RCR; | |
u16 RESERVED12; | |
vu16 CCR1; | |
u16 RESERVED13; | |
vu16 CCR2; | |
u16 RESERVED14; | |
vu16 CCR3; | |
u16 RESERVED15; | |
vu16 CCR4; | |
u16 RESERVED16; | |
vu16 BDTR; | |
u16 RESERVED17; | |
vu16 DCR; | |
u16 RESERVED18; | |
vu16 DMAR; | |
u16 RESERVED19; | |
} TIM_TypeDef; | |
/*----------------- Universal Synchronous Asynchronous Receiver Transmitter --*/ | |
typedef struct | |
{ | |
vu16 SR; | |
u16 RESERVED0; | |
vu16 DR; | |
u16 RESERVED1; | |
vu16 BRR; | |
u16 RESERVED2; | |
vu16 CR1; | |
u16 RESERVED3; | |
vu16 CR2; | |
u16 RESERVED4; | |
vu16 CR3; | |
u16 RESERVED5; | |
vu16 GTPR; | |
u16 RESERVED6; | |
} USART_TypeDef; | |
/*------------------------ Window WATCHDOG -----------------------------------*/ | |
typedef struct | |
{ | |
vu32 CR; | |
vu32 CFR; | |
vu32 SR; | |
} WWDG_TypeDef; | |
/******************************************************************************/ | |
/* Peripheral memory map */ | |
/******************************************************************************/ | |
/* Peripheral and SRAM base address in the alias region */ | |
#define PERIPH_BB_BASE ((u32)0x42000000) | |
#define SRAM_BB_BASE ((u32)0x22000000) | |
/* Peripheral and SRAM base address in the bit-band region */ | |
#define SRAM_BASE ((u32)0x20000000) | |
#define PERIPH_BASE ((u32)0x40000000) | |
/* FSMC registers base address */ | |
#define FSMC_R_BASE ((u32)0xA0000000) | |
/* Peripheral memory map */ | |
#define APB1PERIPH_BASE PERIPH_BASE | |
#define APB2PERIPH_BASE (PERIPH_BASE + 0x10000) | |
#define AHBPERIPH_BASE (PERIPH_BASE + 0x20000) | |
#define TIM2_BASE (APB1PERIPH_BASE + 0x0000) | |
#define TIM3_BASE (APB1PERIPH_BASE + 0x0400) | |
#define TIM4_BASE (APB1PERIPH_BASE + 0x0800) | |
#define TIM5_BASE (APB1PERIPH_BASE + 0x0C00) | |
#define TIM6_BASE (APB1PERIPH_BASE + 0x1000) | |
#define TIM7_BASE (APB1PERIPH_BASE + 0x1400) | |
#define RTC_BASE (APB1PERIPH_BASE + 0x2800) | |
#define WWDG_BASE (APB1PERIPH_BASE + 0x2C00) | |
#define IWDG_BASE (APB1PERIPH_BASE + 0x3000) | |
#define SPI2_BASE (APB1PERIPH_BASE + 0x3800) | |
#define SPI3_BASE (APB1PERIPH_BASE + 0x3C00) | |
#define USART2_BASE (APB1PERIPH_BASE + 0x4400) | |
#define USART3_BASE (APB1PERIPH_BASE + 0x4800) | |
#define UART4_BASE (APB1PERIPH_BASE + 0x4C00) | |
#define UART5_BASE (APB1PERIPH_BASE + 0x5000) | |
#define I2C1_BASE (APB1PERIPH_BASE + 0x5400) | |
#define I2C2_BASE (APB1PERIPH_BASE + 0x5800) | |
#define CAN_BASE (APB1PERIPH_BASE + 0x6400) | |
#define BKP_BASE (APB1PERIPH_BASE + 0x6C00) | |
#define PWR_BASE (APB1PERIPH_BASE + 0x7000) | |
#define DAC_BASE (APB1PERIPH_BASE + 0x7400) | |
#define AFIO_BASE (APB2PERIPH_BASE + 0x0000) | |
#define EXTI_BASE (APB2PERIPH_BASE + 0x0400) | |
#define GPIOA_BASE (APB2PERIPH_BASE + 0x0800) | |
#define GPIOB_BASE (APB2PERIPH_BASE + 0x0C00) | |
#define GPIOC_BASE (APB2PERIPH_BASE + 0x1000) | |
#define GPIOD_BASE (APB2PERIPH_BASE + 0x1400) | |
#define GPIOE_BASE (APB2PERIPH_BASE + 0x1800) | |
#define GPIOF_BASE (APB2PERIPH_BASE + 0x1C00) | |
#define GPIOG_BASE (APB2PERIPH_BASE + 0x2000) | |
#define ADC1_BASE (APB2PERIPH_BASE + 0x2400) | |
#define ADC2_BASE (APB2PERIPH_BASE + 0x2800) | |
#define TIM1_BASE (APB2PERIPH_BASE + 0x2C00) | |
#define SPI1_BASE (APB2PERIPH_BASE + 0x3000) | |
#define TIM8_BASE (APB2PERIPH_BASE + 0x3400) | |
#define USART1_BASE (APB2PERIPH_BASE + 0x3800) | |
#define ADC3_BASE (APB2PERIPH_BASE + 0x3C00) | |
#define SDIO_BASE (PERIPH_BASE + 0x18000) | |
#define DMA1_BASE (AHBPERIPH_BASE + 0x0000) | |
#define DMA1_Channel1_BASE (AHBPERIPH_BASE + 0x0008) | |
#define DMA1_Channel2_BASE (AHBPERIPH_BASE + 0x001C) | |
#define DMA1_Channel3_BASE (AHBPERIPH_BASE + 0x0030) | |
#define DMA1_Channel4_BASE (AHBPERIPH_BASE + 0x0044) | |
#define DMA1_Channel5_BASE (AHBPERIPH_BASE + 0x0058) | |
#define DMA1_Channel6_BASE (AHBPERIPH_BASE + 0x006C) | |
#define DMA1_Channel7_BASE (AHBPERIPH_BASE + 0x0080) | |
#define DMA2_BASE (AHBPERIPH_BASE + 0x0400) | |
#define DMA2_Channel1_BASE (AHBPERIPH_BASE + 0x0408) | |
#define DMA2_Channel2_BASE (AHBPERIPH_BASE + 0x041C) | |
#define DMA2_Channel3_BASE (AHBPERIPH_BASE + 0x0430) | |
#define DMA2_Channel4_BASE (AHBPERIPH_BASE + 0x0444) | |
#define DMA2_Channel5_BASE (AHBPERIPH_BASE + 0x0458) | |
#define RCC_BASE (AHBPERIPH_BASE + 0x1000) | |
#define CRC_BASE (AHBPERIPH_BASE + 0x3000) | |
/* Flash registers base address */ | |
#define FLASH_R_BASE (AHBPERIPH_BASE + 0x2000) | |
/* Flash Option Bytes base address */ | |
#define OB_BASE ((u32)0x1FFFF800) | |
/* FSMC Bankx registers base address */ | |
#define FSMC_Bank1_R_BASE (FSMC_R_BASE + 0x0000) | |
#define FSMC_Bank1E_R_BASE (FSMC_R_BASE + 0x0104) | |
#define FSMC_Bank2_R_BASE (FSMC_R_BASE + 0x0060) | |
#define FSMC_Bank3_R_BASE (FSMC_R_BASE + 0x0080) | |
#define FSMC_Bank4_R_BASE (FSMC_R_BASE + 0x00A0) | |
/* Debug MCU registers base address */ | |
#define DBGMCU_BASE ((u32)0xE0042000) | |
/* System Control Space memory map */ | |
#define SCS_BASE ((u32)0xE000E000) | |
#define SysTick_BASE (SCS_BASE + 0x0010) | |
#define NVIC_BASE (SCS_BASE + 0x0100) | |
#define SCB_BASE (SCS_BASE + 0x0D00) | |
/******************************************************************************/ | |
/* Peripheral declaration */ | |
/******************************************************************************/ | |
/*------------------------ Non Debug Mode ------------------------------------*/ | |
#ifndef DEBUG | |
#ifdef _TIM2 | |
#define TIM2 ((TIM_TypeDef *) TIM2_BASE) | |
#endif /*_TIM2 */ | |
#ifdef _TIM3 | |
#define TIM3 ((TIM_TypeDef *) TIM3_BASE) | |
#endif /*_TIM3 */ | |
#ifdef _TIM4 | |
#define TIM4 ((TIM_TypeDef *) TIM4_BASE) | |
#endif /*_TIM4 */ | |
#ifdef _TIM5 | |
#define TIM5 ((TIM_TypeDef *) TIM5_BASE) | |
#endif /*_TIM5 */ | |
#ifdef _TIM6 | |
#define TIM6 ((TIM_TypeDef *) TIM6_BASE) | |
#endif /*_TIM6 */ | |
#ifdef _TIM7 | |
#define TIM7 ((TIM_TypeDef *) TIM7_BASE) | |
#endif /*_TIM7 */ | |
#ifdef _RTC | |
#define RTC ((RTC_TypeDef *) RTC_BASE) | |
#endif /*_RTC */ | |
#ifdef _WWDG | |
#define WWDG ((WWDG_TypeDef *) WWDG_BASE) | |
#endif /*_WWDG */ | |
#ifdef _IWDG | |
#define IWDG ((IWDG_TypeDef *) IWDG_BASE) | |
#endif /*_IWDG */ | |
#ifdef _SPI2 | |
#define SPI2 ((SPI_TypeDef *) SPI2_BASE) | |
#endif /*_SPI2 */ | |
#ifdef _SPI3 | |
#define SPI3 ((SPI_TypeDef *) SPI3_BASE) | |
#endif /*_SPI3 */ | |
#ifdef _USART2 | |
#define USART2 ((USART_TypeDef *) USART2_BASE) | |
#endif /*_USART2 */ | |
#ifdef _USART3 | |
#define USART3 ((USART_TypeDef *) USART3_BASE) | |
#endif /*_USART3 */ | |
#ifdef _UART4 | |
#define UART4 ((USART_TypeDef *) UART4_BASE) | |
#endif /*_UART4 */ | |
#ifdef _UART5 | |
#define UART5 ((USART_TypeDef *) UART5_BASE) | |
#endif /*_USART5 */ | |
#ifdef _I2C1 | |
#define I2C1 ((I2C_TypeDef *) I2C1_BASE) | |
#endif /*_I2C1 */ | |
#ifdef _I2C2 | |
#define I2C2 ((I2C_TypeDef *) I2C2_BASE) | |
#endif /*_I2C2 */ | |
#ifdef _CAN | |
#define CAN ((CAN_TypeDef *) CAN_BASE) | |
#endif /*_CAN */ | |
#ifdef _BKP | |
#define BKP ((BKP_TypeDef *) BKP_BASE) | |
#endif /*_BKP */ | |
#ifdef _PWR | |
#define PWR ((PWR_TypeDef *) PWR_BASE) | |
#endif /*_PWR */ | |
#ifdef _DAC | |
#define DAC ((DAC_TypeDef *) DAC_BASE) | |
#endif /*_DAC */ | |
#ifdef _AFIO | |
#define AFIO ((AFIO_TypeDef *) AFIO_BASE) | |
#endif /*_AFIO */ | |
#ifdef _EXTI | |
#define EXTI ((EXTI_TypeDef *) EXTI_BASE) | |
#endif /*_EXTI */ | |
#ifdef _GPIOA | |
#define GPIOA ((GPIO_TypeDef *) GPIOA_BASE) | |
#endif /*_GPIOA */ | |
#ifdef _GPIOB | |
#define GPIOB ((GPIO_TypeDef *) GPIOB_BASE) | |
#endif /*_GPIOB */ | |
#ifdef _GPIOC | |
#define GPIOC ((GPIO_TypeDef *) GPIOC_BASE) | |
#endif /*_GPIOC */ | |
#ifdef _GPIOD | |
#define GPIOD ((GPIO_TypeDef *) GPIOD_BASE) | |
#endif /*_GPIOD */ | |
#ifdef _GPIOE | |
#define GPIOE ((GPIO_TypeDef *) GPIOE_BASE) | |
#endif /*_GPIOE */ | |
#ifdef _GPIOF | |
#define GPIOF ((GPIO_TypeDef *) GPIOF_BASE) | |
#endif /*_GPIOF */ | |
#ifdef _GPIOG | |
#define GPIOG ((GPIO_TypeDef *) GPIOG_BASE) | |
#endif /*_GPIOG */ | |
#ifdef _ADC1 | |
#define ADC1 ((ADC_TypeDef *) ADC1_BASE) | |
#endif /*_ADC1 */ | |
#ifdef _ADC2 | |
#define ADC2 ((ADC_TypeDef *) ADC2_BASE) | |
#endif /*_ADC2 */ | |
#ifdef _TIM1 | |
#define TIM1 ((TIM_TypeDef *) TIM1_BASE) | |
#endif /*_TIM1 */ | |
#ifdef _SPI1 | |
#define SPI1 ((SPI_TypeDef *) SPI1_BASE) | |
#endif /*_SPI1 */ | |
#ifdef _TIM8 | |
#define TIM8 ((TIM_TypeDef *) TIM8_BASE) | |
#endif /*_TIM8 */ | |
#ifdef _USART1 | |
#define USART1 ((USART_TypeDef *) USART1_BASE) | |
#endif /*_USART1 */ | |
#ifdef _ADC3 | |
#define ADC3 ((ADC_TypeDef *) ADC3_BASE) | |
#endif /*_ADC3 */ | |
#ifdef _SDIO | |
#define SDIO ((SDIO_TypeDef *) SDIO_BASE) | |
#endif /*_SDIO */ | |
#ifdef _DMA | |
#define DMA1 ((DMA_TypeDef *) DMA1_BASE) | |
#define DMA2 ((DMA_TypeDef *) DMA2_BASE) | |
#endif /*_DMA */ | |
#ifdef _DMA1_Channel1 | |
#define DMA1_Channel1 ((DMA_Channel_TypeDef *) DMA1_Channel1_BASE) | |
#endif /*_DMA1_Channel1 */ | |
#ifdef _DMA1_Channel2 | |
#define DMA1_Channel2 ((DMA_Channel_TypeDef *) DMA1_Channel2_BASE) | |
#endif /*_DMA1_Channel2 */ | |
#ifdef _DMA1_Channel3 | |
#define DMA1_Channel3 ((DMA_Channel_TypeDef *) DMA1_Channel3_BASE) | |
#endif /*_DMA1_Channel3 */ | |
#ifdef _DMA1_Channel4 | |
#define DMA1_Channel4 ((DMA_Channel_TypeDef *) DMA1_Channel4_BASE) | |
#endif /*_DMA1_Channel4 */ | |
#ifdef _DMA1_Channel5 | |
#define DMA1_Channel5 ((DMA_Channel_TypeDef *) DMA1_Channel5_BASE) | |
#endif /*_DMA1_Channel5 */ | |
#ifdef _DMA1_Channel6 | |
#define DMA1_Channel6 ((DMA_Channel_TypeDef *) DMA1_Channel6_BASE) | |
#endif /*_DMA1_Channel6 */ | |
#ifdef _DMA1_Channel7 | |
#define DMA1_Channel7 ((DMA_Channel_TypeDef *) DMA1_Channel7_BASE) | |
#endif /*_DMA1_Channel7 */ | |
#ifdef _DMA2_Channel1 | |
#define DMA2_Channel1 ((DMA_Channel_TypeDef *) DMA2_Channel1_BASE) | |
#endif /*_DMA2_Channel1 */ | |
#ifdef _DMA2_Channel2 | |
#define DMA2_Channel2 ((DMA_Channel_TypeDef *) DMA2_Channel2_BASE) | |
#endif /*_DMA2_Channel2 */ | |
#ifdef _DMA2_Channel3 | |
#define DMA2_Channel3 ((DMA_Channel_TypeDef *) DMA2_Channel3_BASE) | |
#endif /*_DMA2_Channel3 */ | |
#ifdef _DMA2_Channel4 | |
#define DMA2_Channel4 ((DMA_Channel_TypeDef *) DMA2_Channel4_BASE) | |
#endif /*_DMA2_Channel4 */ | |
#ifdef _DMA2_Channel5 | |
#define DMA2_Channel5 ((DMA_Channel_TypeDef *) DMA2_Channel5_BASE) | |
#endif /*_DMA2_Channel5 */ | |
#ifdef _RCC | |
#define RCC ((RCC_TypeDef *) RCC_BASE) | |
#endif /*_RCC */ | |
#ifdef _CRC | |
#define CRC ((CRC_TypeDef *) CRC_BASE) | |
#endif /*_CRC */ | |
#ifdef _FLASH | |
#define FLASH ((FLASH_TypeDef *) FLASH_R_BASE) | |
#define OB ((OB_TypeDef *) OB_BASE) | |
#endif /*_FLASH */ | |
#ifdef _FSMC | |
#define FSMC_Bank1 ((FSMC_Bank1_TypeDef *) FSMC_Bank1_R_BASE) | |
#define FSMC_Bank1E ((FSMC_Bank1E_TypeDef *) FSMC_Bank1E_R_BASE) | |
#define FSMC_Bank2 ((FSMC_Bank2_TypeDef *) FSMC_Bank2_R_BASE) | |
#define FSMC_Bank3 ((FSMC_Bank3_TypeDef *) FSMC_Bank3_R_BASE) | |
#define FSMC_Bank4 ((FSMC_Bank4_TypeDef *) FSMC_Bank4_R_BASE) | |
#endif /*_FSMC */ | |
#ifdef _DBGMCU | |
#define DBGMCU ((DBGMCU_TypeDef *) DBGMCU_BASE) | |
#endif /*_DBGMCU */ | |
#ifdef _SysTick | |
#define SysTick ((SysTick_TypeDef *) SysTick_BASE) | |
#endif /*_SysTick */ | |
#ifdef _NVIC | |
#define NVIC ((NVIC_TypeDef *) NVIC_BASE) | |
#define SCB ((SCB_TypeDef *) SCB_BASE) | |
#endif /*_NVIC */ | |
/*------------------------ Debug Mode ----------------------------------------*/ | |
#else /* DEBUG */ | |
#ifdef _TIM2 | |
EXT TIM_TypeDef *TIM2; | |
#endif /*_TIM2 */ | |
#ifdef _TIM3 | |
EXT TIM_TypeDef *TIM3; | |
#endif /*_TIM3 */ | |
#ifdef _TIM4 | |
EXT TIM_TypeDef *TIM4; | |
#endif /*_TIM4 */ | |
#ifdef _TIM5 | |
EXT TIM_TypeDef *TIM5; | |
#endif /*_TIM5 */ | |
#ifdef _TIM6 | |
EXT TIM_TypeDef *TIM6; | |
#endif /*_TIM6 */ | |
#ifdef _TIM7 | |
EXT TIM_TypeDef *TIM7; | |
#endif /*_TIM7 */ | |
#ifdef _RTC | |
EXT RTC_TypeDef *RTC; | |
#endif /*_RTC */ | |
#ifdef _WWDG | |
EXT WWDG_TypeDef *WWDG; | |
#endif /*_WWDG */ | |
#ifdef _IWDG | |
EXT IWDG_TypeDef *IWDG; | |
#endif /*_IWDG */ | |
#ifdef _SPI2 | |
EXT SPI_TypeDef *SPI2; | |
#endif /*_SPI2 */ | |
#ifdef _SPI3 | |
EXT SPI_TypeDef *SPI3; | |
#endif /*_SPI3 */ | |
#ifdef _USART2 | |
EXT USART_TypeDef *USART2; | |
#endif /*_USART2 */ | |
#ifdef _USART3 | |
EXT USART_TypeDef *USART3; | |
#endif /*_USART3 */ | |
#ifdef _UART4 | |
EXT USART_TypeDef *UART4; | |
#endif /*_UART4 */ | |
#ifdef _UART5 | |
EXT USART_TypeDef *UART5; | |
#endif /*_UART5 */ | |
#ifdef _I2C1 | |
EXT I2C_TypeDef *I2C1; | |
#endif /*_I2C1 */ | |
#ifdef _I2C2 | |
EXT I2C_TypeDef *I2C2; | |
#endif /*_I2C2 */ | |
#ifdef _CAN | |
EXT CAN_TypeDef *CAN; | |
#endif /*_CAN */ | |
#ifdef _BKP | |
EXT BKP_TypeDef *BKP; | |
#endif /*_BKP */ | |
#ifdef _PWR | |
EXT PWR_TypeDef *PWR; | |
#endif /*_PWR */ | |
#ifdef _DAC | |
EXT DAC_TypeDef *DAC; | |
#endif /*_DAC */ | |
#ifdef _AFIO | |
EXT AFIO_TypeDef *AFIO; | |
#endif /*_AFIO */ | |
#ifdef _EXTI | |
EXT EXTI_TypeDef *EXTI; | |
#endif /*_EXTI */ | |
#ifdef _GPIOA | |
EXT GPIO_TypeDef *GPIOA; | |
#endif /*_GPIOA */ | |
#ifdef _GPIOB | |
EXT GPIO_TypeDef *GPIOB; | |
#endif /*_GPIOB */ | |
#ifdef _GPIOC | |
EXT GPIO_TypeDef *GPIOC; | |
#endif /*_GPIOC */ | |
#ifdef _GPIOD | |
EXT GPIO_TypeDef *GPIOD; | |
#endif /*_GPIOD */ | |
#ifdef _GPIOE | |
EXT GPIO_TypeDef *GPIOE; | |
#endif /*_GPIOE */ | |
#ifdef _GPIOF | |
EXT GPIO_TypeDef *GPIOF; | |
#endif /*_GPIOF */ | |
#ifdef _GPIOG | |
EXT GPIO_TypeDef *GPIOG; | |
#endif /*_GPIOG */ | |
#ifdef _ADC1 | |
EXT ADC_TypeDef *ADC1; | |
#endif /*_ADC1 */ | |
#ifdef _ADC2 | |
EXT ADC_TypeDef *ADC2; | |
#endif /*_ADC2 */ | |
#ifdef _TIM1 | |
EXT TIM_TypeDef *TIM1; | |
#endif /*_TIM1 */ | |
#ifdef _SPI1 | |
EXT SPI_TypeDef *SPI1; | |
#endif /*_SPI1 */ | |
#ifdef _TIM8 | |
EXT TIM_TypeDef *TIM8; | |
#endif /*_TIM8 */ | |
#ifdef _USART1 | |
EXT USART_TypeDef *USART1; | |
#endif /*_USART1 */ | |
#ifdef _ADC3 | |
EXT ADC_TypeDef *ADC3; | |
#endif /*_ADC3 */ | |
#ifdef _SDIO | |
EXT SDIO_TypeDef *SDIO; | |
#endif /*_SDIO */ | |
#ifdef _DMA | |
EXT DMA_TypeDef *DMA1; | |
EXT DMA_TypeDef *DMA2; | |
#endif /*_DMA */ | |
#ifdef _DMA1_Channel1 | |
EXT DMA_Channel_TypeDef *DMA1_Channel1; | |
#endif /*_DMA1_Channel1 */ | |
#ifdef _DMA1_Channel2 | |
EXT DMA_Channel_TypeDef *DMA1_Channel2; | |
#endif /*_DMA1_Channel2 */ | |
#ifdef _DMA1_Channel3 | |
EXT DMA_Channel_TypeDef *DMA1_Channel3; | |
#endif /*_DMA1_Channel3 */ | |
#ifdef _DMA1_Channel4 | |
EXT DMA_Channel_TypeDef *DMA1_Channel4; | |
#endif /*_DMA1_Channel4 */ | |
#ifdef _DMA1_Channel5 | |
EXT DMA_Channel_TypeDef *DMA1_Channel5; | |
#endif /*_DMA1_Channel5 */ | |
#ifdef _DMA1_Channel6 | |
EXT DMA_Channel_TypeDef *DMA1_Channel6; | |
#endif /*_DMA1_Channel6 */ | |
#ifdef _DMA1_Channel7 | |
EXT DMA_Channel_TypeDef *DMA1_Channel7; | |
#endif /*_DMA1_Channel7 */ | |
#ifdef _DMA2_Channel1 | |
EXT DMA_Channel_TypeDef *DMA2_Channel1; | |
#endif /*_DMA2_Channel1 */ | |
#ifdef _DMA2_Channel2 | |
EXT DMA_Channel_TypeDef *DMA2_Channel2; | |
#endif /*_DMA2_Channel2 */ | |
#ifdef _DMA2_Channel3 | |
EXT DMA_Channel_TypeDef *DMA2_Channel3; | |
#endif /*_DMA2_Channel3 */ | |
#ifdef _DMA2_Channel4 | |
EXT DMA_Channel_TypeDef *DMA2_Channel4; | |
#endif /*_DMA2_Channel4 */ | |
#ifdef _DMA2_Channel5 | |
EXT DMA_Channel_TypeDef *DMA2_Channel5; | |
#endif /*_DMA2_Channel5 */ | |
#ifdef _RCC | |
EXT RCC_TypeDef *RCC; | |
#endif /*_RCC */ | |
#ifdef _CRC | |
EXT CRC_TypeDef *CRC; | |
#endif /*_CRC */ | |
#ifdef _FLASH | |
EXT FLASH_TypeDef *FLASH; | |
EXT OB_TypeDef *OB; | |
#endif /*_FLASH */ | |
#ifdef _FSMC | |
EXT FSMC_Bank1_TypeDef *FSMC_Bank1; | |
EXT FSMC_Bank1E_TypeDef *FSMC_Bank1E; | |
EXT FSMC_Bank2_TypeDef *FSMC_Bank2; | |
EXT FSMC_Bank3_TypeDef *FSMC_Bank3; | |
EXT FSMC_Bank4_TypeDef *FSMC_Bank4; | |
#endif /*_FSMC */ | |
#ifdef _DBGMCU | |
EXT DBGMCU_TypeDef *DBGMCU; | |
#endif /*_DBGMCU */ | |
#ifdef _SysTick | |
EXT SysTick_TypeDef *SysTick; | |
#endif /*_SysTick */ | |
#ifdef _NVIC | |
EXT NVIC_TypeDef *NVIC; | |
EXT SCB_TypeDef *SCB; | |
#endif /*_NVIC */ | |
#endif /* DEBUG */ | |
/* Exported constants --------------------------------------------------------*/ | |
/* Exported macro ------------------------------------------------------------*/ | |
/* Exported functions ------------------------------------------------------- */ | |
#endif /* __STM32F10x_MAP_H */ | |
/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ |