71x_map.h
资源名称:str711USB.rar [点击查看]
上传用户:yyyd609
上传日期:2022-07-18
资源大小:183k
文件大小:11k
源码类别:
微处理器开发
开发平台:
C/C++
- /******************** (C) COPYRIGHT 2003 STMicroelectronics ********************
- * File Name : 71x_map.h
- * Author : MCD Application Team
- * Date First Issued : 05/16/2003
- * Description : Peripherals memory mapping and registers structures
- ********************************************************************************
- * History:
- * 01/01/2004 : V1.2
- * 14/07/2004 : V1.3
- *******************************************************************************/
- #ifndef __71x_map_H
- #define __71x_map_H
- #ifndef EXT
- #define EXT extern
- #endif
- #include "71x_conf.h"
- #include "71x_type.h"
- /* IP registers structures */
- typedef volatile struct
- {
- vu16 DATA0;
- vu16 EMPTY1[3];
- vu16 DATA1;
- vu16 EMPTY2[3];
- vu16 DATA2;
- vu16 EMPTY3[3];
- vu16 DATA3;
- vu16 EMPTY4[3];
- vu16 CSR;
- vu16 EMPTY5[7];
- vu16 CPR;
- } ADC12_TypeDef;
- typedef volatile struct
- {
- vu32 EMPTY[3];
- vu32 CKDIS;
- vu32 SWRES;
- } APB_TypeDef;
- typedef volatile struct
- {
- vu16 RXR;
- vu16 EMPTY1;
- vu16 TXR;
- vu16 EMPTY2;
- vu16 CSR1;
- vu16 EMPTY3;
- vu16 CSR2;
- vu16 EMPTY4;
- vu16 CLK;
- } BSPI_TypeDef;
- typedef volatile struct
- {
- vu16 CRR;
- vu16 EMPTY1;
- vu16 CMR;
- vu16 EMPTY2;
- vu16 M1R;
- vu16 EMPTY3;
- vu16 M2R;
- vu16 EMPTY4;
- vu16 A1R;
- vu16 EMPTY5;
- vu16 A2R;
- vu16 EMPTY6;
- vu16 MCR;
- vu16 EMPTY7;
- vu16 DA1R;
- vu16 EMPTY8;
- vu16 DA2R;
- vu16 EMPTY9;
- vu16 DB1R;
- vu16 EMPTY10;
- vu16 DB2R;
- vu16 EMPTY11[27];
- } CAN_MsgObj_TypeDef;
- typedef volatile struct
- {
- vu16 CR;
- vu16 EMPTY1;
- vu16 SR;
- vu16 EMPTY2;
- vu16 ERR;
- vu16 EMPTY3;
- vu16 BTR;
- vu16 EMPTY4;
- vu16 IDR;
- vu16 EMPTY5;
- vu16 TESTR;
- vu16 EMPTY6;
- vu16 BRPR;
- vu16 EMPTY7[3];
- CAN_MsgObj_TypeDef sMsgObj[2];
- vu16 EMPTY8[16];
- vu16 TR1R;
- vu16 EMPTY9;
- vu16 TR2R;
- vu16 EMPTY10[13];
- vu16 ND1R;
- vu16 EMPTY11;
- vu16 ND2R;
- vu16 EMPTY12[13];
- vu16 IP1R;
- vu16 EMPTY13;
- vu16 IP2R;
- vu16 EMPTY14[13];
- vu16 MV1R;
- vu16 EMPTY15;
- vu16 MV2R;
- vu16 EMPTY16;
- } CAN_TypeDef;
- typedef volatile struct
- {
- vu32 ICR;
- vu32 CICR;
- vu32 CIPR;
- vu32 EMPTY1[3];
- vu32 IVR;
- vu32 FIR;
- vu32 IER;
- vu32 EMPTY2[7];
- vu32 IPR;
- vu32 EMPTY3[7];
- vu32 SIR[32];
- } EIC_TypeDef;
- typedef volatile struct
- {
- vu16 BCON0;
- vu16 EMPTY1;
- vu16 BCON1;
- vu16 EMPTY2;
- vu16 BCON2;
- vu16 EMPTY3;
- vu16 BCON3;
- vu16 EMPTY4;
- } EMI_TypeDef;
- typedef volatile struct
- {
- vu32 CR0;
- vu32 CR1;
- vu32 DR0;
- vu32 DR1;
- vu32 AR;
- vu32 ER;
- } FLASHR_TypeDef;
- typedef volatile struct
- {
- vu32 NVWPAR;
- vu32 EMPTY;
- vu32 NVAPR0;
- vu32 NVAPR1;
- } FLASHPR_TypeDef;
- typedef volatile struct
- {
- vu16 PC0;
- vu16 EMPTY1;
- vu16 PC1;
- vu16 EMPTY2;
- vu16 PC2;
- vu16 EMPTY3;
- vu16 PD;
- vu16 EMPTY4;
- } GPIO_TypeDef;
- typedef volatile struct
- {
- vu8 CR;
- vu8 EMPTY1[3];
- vu8 SR1;
- vu8 EMPTY2[3];
- vu8 SR2;
- vu8 EMPTY3[3];
- vu8 CCR;
- vu8 EMPTY4[3];
- vu8 OAR1;
- vu8 EMPTY5[3];
- vu8 OAR2;
- vu8 EMPTY6[3];
- vu8 DR;
- vu8 EMPTY7[3];
- vu8 ECCR;
- } I2C_TypeDef;
- typedef volatile struct
- {
- vu32 CCR;
- vu32 EMPTY1;
- vu32 CFR;
- vu32 EMPTY2[3];
- vu32 PLL1CR;
- vu32 PER;
- vu32 SMR;
- } RCCU_TypeDef;
- typedef volatile struct
- {
- vu16 MDIVR;
- vu16 EMPTY1;
- vu16 PDIVR;
- vu16 EMPTY2;
- vu16 RSTR;
- vu16 EMPTY3;
- vu16 PLL2CR;
- vu16 EMPTY4;
- vu16 BOOTCR;
- vu16 EMPTY5;
- vu16 PWRCR;
- } PCU_TypeDef;
- typedef volatile struct
- {
- vu16 CRH;
- vu16 EMPTY1;
- vu16 CRL;
- vu16 EMPTY2;
- vu16 PRLH;
- vu16 EMPTY3;
- vu16 PRLL;
- vu16 EMPTY4;
- vu16 DIVH;
- vu16 EMPTY5;
- vu16 DIVL;
- vu16 EMPTY6;
- vu16 CNTH;
- vu16 EMPTY7;
- vu16 CNTL;
- vu16 EMPTY8;
- vu16 ALRH;
- vu16 EMPTY9;
- vu16 ALRL;
- } RTC_TypeDef;
- typedef volatile struct
- {
- vu16 ICAR;
- vu16 EMPTY1;
- vu16 ICBR;
- vu16 EMPTY2;
- vu16 OCAR;
- vu16 EMPTY3;
- vu16 OCBR;
- vu16 EMPTY4;
- vu16 CNTR;
- vu16 EMPTY5;
- vu16 CR1;
- vu16 EMPTY6;
- vu16 CR2;
- vu16 EMPTY7;
- vu16 SR;
- } TIM_TypeDef;
- typedef volatile struct
- {
- vu16 BR;
- vu16 EMPTY1;
- vu16 TxBUFR;
- vu16 EMPTY2;
- vu16 RxBUFR;
- vu16 EMPTY3;
- vu16 CR;
- vu16 EMPTY4;
- vu16 IER;
- vu16 EMPTY5;
- vu16 SR;
- vu16 EMPTY6;
- vu16 GTR;
- vu16 EMPTY7;
- vu16 TOR;
- vu16 EMPTY8;
- vu16 TxRSTR;
- vu16 EMPTY9;
- vu16 RxRSTR;
- } UART_TypeDef;
- typedef volatile struct
- {
- vu32 EP0R;
- vu32 EP1R;
- vu32 EP2R;
- vu32 EP3R;
- vu32 EP4R;
- vu32 EP5R;
- vu32 EP6R;
- vu32 EP7R;
- vu32 EP8R;
- vu32 EP9R;
- vu32 EP10R;
- vu32 EP11R;
- vu32 EP12R;
- vu32 EP13R;
- vu32 EP14R;
- vu32 EP15R;
- vu32 CNTR;
- vu32 ISTR;
- vu32 FNR;
- vu32 DADDR;
- vu32 BTABLE;
- } USB_TypeDef;
- typedef volatile struct
- {
- vu16 CR;
- vu16 EMPTY1;
- vu16 PR;
- vu16 EMPTY2;
- vu16 VR;
- vu16 EMPTY3;
- vu16 CNT;
- vu16 EMPTY4;
- vu16 SR;
- vu16 EMPTY5;
- vu16 MR;
- vu16 EMPTY6;
- vu16 KR;
- } WDG_TypeDef;
- typedef volatile struct
- {
- vu8 SR;
- vu8 EMPTY1[7];
- vu8 CTRL;
- vu8 EMPTY2[3];
- vu8 MRH;
- vu8 EMPTY3[3];
- vu8 MRL;
- vu8 EMPTY4[3];
- vu8 TRH;
- vu8 EMPTY5[3];
- vu8 TRL;
- vu8 EMPTY6[3];
- vu8 PRH;
- vu8 EMPTY7[3];
- vu8 PRL;
- } XTI_TypeDef;
- /* IRQ vectors */
- typedef volatile struct
- {
- vu32 T0TIMI_IRQHandler;
- vu32 FLASH_IRQHandler;
- vu32 RCCU_IRQHandler;
- vu32 RTC_IRQHandler;
- vu32 WDG_IRQHandler;
- vu32 XTI_IRQHandler;
- vu32 USBHP_IRQHandler;
- vu32 I2C0ITERR_IRQHandler;
- vu32 I2C1ITERR_IRQHandler;
- vu32 UART0_IRQHandler;
- vu32 UART1_IRQHandler;
- vu32 UART2_IRQHandler;
- vu32 UART3_IRQHandler;
- vu32 BSPI0_IRQHandler;
- vu32 BSPI1_IRQHandler;
- vu32 I2C0_IRQHandler;
- vu32 I2C1_IRQHandler;
- vu32 CAN_IRQHandler;
- vu32 ADC12_IRQHandler;
- vu32 T1TIMI_IRQHandler;
- vu32 T2TIMI_IRQHandler;
- vu32 T3TIMI_IRQHandler;
- vu32 EMPTY1[3];
- vu32 HDLC_IRQHandler;
- vu32 USBLP_IRQHandler;
- vu32 EMPTY2[2];
- vu32 T0TOI_IRQHandler;
- vu32 T0OC1_IRQHandler;
- vu32 T0OC2_IRQHandler;
- } IRQVectors_TypeDef;
- /*===================================================================*/
- /* Memory mapping */
- #define RAM_BASE 0x20000000
- #define FLASHR_BASE 0x40100000
- #define FLASHPR_BASE 0x4010DFB0
- #define EXTMEM_BASE 0x60000000
- #define RCCU_BASE 0xA0000000
- #define PCU_BASE 0xA0000040
- #define APB1_BASE 0xC0000000
- #define APB2_BASE 0xE0000000
- #define EIC_BASE 0xE000F800
- #define I2C0_BASE (APB1_BASE + 0x1000)
- #define I2C1_BASE (APB1_BASE + 0x2000)
- #define UART0_BASE (APB1_BASE + 0x4000)
- #define UART1_BASE (APB1_BASE + 0x5000)
- #define UART2_BASE (APB1_BASE + 0x6000)
- #define UART3_BASE (APB1_BASE + 0x7000)
- #define CAN_BASE (APB1_BASE + 0x9000)
- #define BSPI0_BASE (APB1_BASE + 0xA000)
- #define BSPI1_BASE (APB1_BASE + 0xB000)
- #define USB_BASE (APB1_BASE + 0x8800)
- #define XTI_BASE (APB2_BASE + 0x101C)
- #define GPIO0_BASE (APB2_BASE + 0x3000)
- #define GPIO1_BASE (APB2_BASE + 0x4000)
- #define GPIO2_BASE (APB2_BASE + 0x5000)
- #define ADC12_BASE (APB2_BASE + 0x7000)
- #define TIM0_BASE (APB2_BASE + 0x9000)
- #define TIM1_BASE (APB2_BASE + 0xA000)
- #define TIM2_BASE (APB2_BASE + 0xB000)
- #define TIM3_BASE (APB2_BASE + 0xC000)
- #define RTC_BASE (APB2_BASE + 0xD000)
- #define WDG_BASE (APB2_BASE + 0xE000)
- #define EMI_BASE (EXTMEM_BASE + 0x0C000000)
- /*===================================================================*/
- /* IP data access */
- #ifndef DEBUG
- #define ADC12 ((ADC12_TypeDef *)ADC12_BASE)
- #define APB1 ((APB_TypeDef *)APB1_BASE)
- #define APB2 ((APB_TypeDef *)APB2_BASE)
- #define BSPI0 ((BSPI_TypeDef *)BSPI0_BASE)
- #define BSPI1 ((BSPI_TypeDef *)BSPI1_BASE)
- #define CAN ((CAN_TypeDef *)CAN_BASE)
- #define EIC ((EIC_TypeDef *)EIC_BASE)
- #define EMI ((EMI_TypeDef *)EMI_BASE)
- #define FLASHR ((FLASHR_TypeDef *)FLASHR_BASE)
- #define FLASHPR ((FLASHPR_TypeDef *)FLASHPR_BASE)
- #define GPIO0 ((GPIO_TypeDef *)GPIO0_BASE)
- #define GPIO1 ((GPIO_TypeDef *)GPIO1_BASE)
- #define GPIO2 ((GPIO_TypeDef *)GPIO2_BASE)
- #define I2C0 ((I2C_TypeDef *)I2C0_BASE)
- #define I2C1 ((I2C_TypeDef *)I2C1_BASE)
- #define PCU ((PCU_TypeDef *)PCU_BASE)
- #define RCCU ((RCCU_TypeDef *)RCCU_BASE)
- #define RTC ((RTC_TypeDef *)RTC_BASE)
- #define TIM0 ((TIM_TypeDef *)TIM0_BASE)
- #define TIM1 ((TIM_TypeDef *)TIM1_BASE)
- #define TIM2 ((TIM_TypeDef *)TIM2_BASE)
- #define TIM3 ((TIM_TypeDef *)TIM3_BASE)
- #define UART0 ((UART_TypeDef *)UART0_BASE)
- #define UART1 ((UART_TypeDef *)UART1_BASE)
- #define UART2 ((UART_TypeDef *)UART2_BASE)
- #define UART3 ((UART_TypeDef *)UART3_BASE)
- #define USB ((USB_TypeDef *)USB_BASE)
- #define WDG ((WDG_TypeDef *)WDG_BASE)
- #define XTI ((XTI_TypeDef *)XTI_BASE)
- #define IRQVectors ((IRQVectors_TypeDef *)&T0TIMI_Addr)
- #else /* DEBUG */
- #ifdef _ADC12
- EXT ADC12_TypeDef *ADC12;
- #endif
- #ifdef _APB
- #ifdef _APB1
- EXT APB_TypeDef *APB1;
- #endif
- #ifdef _APB2
- EXT APB_TypeDef *APB2;
- #endif
- #endif
- #ifdef _BSPI
- #ifdef _BSPI0
- EXT BSPI_TypeDef *BSPI0;
- #endif
- #ifdef _BSPI1
- EXT BSPI_TypeDef *BSPI1;
- #endif
- #endif
- #ifdef _CAN
- EXT CAN_TypeDef *CAN;
- #endif
- #ifdef _EIC
- EXT EIC_TypeDef *EIC;
- #endif
- #ifdef _EMI
- EXT EMI_TypeDef *EMI;
- #endif
- #ifdef _FLASH
- EXT FLASHR_TypeDef *FLASHR;
- EXT FLASHPR_TypeDef *FLASHPR;
- #endif
- #ifdef _GPIO
- #ifdef _GPIO0
- EXT GPIO_TypeDef *GPIO0;
- #endif
- #ifdef _GPIO1
- EXT GPIO_TypeDef *GPIO1;
- #endif
- #ifdef _GPIO2
- EXT GPIO_TypeDef *GPIO2;
- #endif
- #endif
- #ifdef _I2C
- #ifdef _I2C0
- EXT I2C_TypeDef *I2C0;
- #endif
- #ifdef _I2C1
- EXT I2C_TypeDef *I2C1;
- #endif
- #endif
- #ifdef _PCU
- EXT PCU_TypeDef *PCU;
- #endif
- #ifdef _RCCU
- EXT RCCU_TypeDef *RCCU;
- #endif
- #ifdef _RTC
- EXT RTC_TypeDef *RTC;
- #endif
- #ifdef _TIM
- #ifdef _TIM0
- EXT TIM_TypeDef *TIM0;
- #endif
- #ifdef _TIM1
- EXT TIM_TypeDef *TIM1;
- #endif
- #ifdef _TIM2
- EXT TIM_TypeDef *TIM2;
- #endif
- #ifdef _TIM3
- EXT TIM_TypeDef *TIM3;
- #endif
- #endif
- #ifdef _UART
- #ifdef _UART0
- EXT UART_TypeDef *UART0;
- #endif
- #ifdef _UART1
- EXT UART_TypeDef *UART1;
- #endif
- #ifdef _UART2
- EXT UART_TypeDef *UART2;
- #endif
- #ifdef _UART3
- EXT UART_TypeDef *UART3;
- #endif
- #endif
- #ifdef _USB
- EXT USB_TypeDef *USB;
- #endif
- #ifdef _WDG
- EXT WDG_TypeDef *WDG;
- #endif
- #ifdef _XTI
- EXT XTI_TypeDef *XTI;
- #endif
- #ifdef _IRQVectors
- EXT IRQVectors_TypeDef *IRQVectors;
- #endif
- #endif /* DEBUG */
- #endif /* __71x_map_H */
- /******************* (C) COPYRIGHT 2003 STMicroelectronics *****END OF FILE****/