打印

为什么我RCC->出来的是uint32_t,GPIOB->也是uint32_t

[复制链接]
381|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
电员师|  楼主 | 2020-4-9 10:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
stm32f10x.h

/*片上外设基地址 */
#define                        PERIPH_BASE                                                                                ((unsigned int)0x40000000)

/*总线基地址,GPIO 都挂载到 APB2 上 */        
#define                        APB2PERIPH_BASE                                                                (PERIPH_BASE+0x10000)
#define                        AHBPERIPH_BASE                                                                (PERIPH_BASE+0x20000)

/*GPIO外设基地址*/
#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)

/*RCC 外设基地址*/
#define                        RCC_BASE                                                                                        (AHBPERIPH_BASE+0x1000)
        
typedef unsigned int      uint32_t;
typedef unsigned short    uint16_t;

//GPIO寄存器结构体定义
typedef struct
{
        uint32_t CRL;
        uint32_t CRH;
        uint32_t IDR;
        uint32_t ODR;
        uint32_t BSRR;
        uint32_t BRR;
        uint32_t LCKR;
}GPIO_TypeDef;


//GPIO外设声明
#define                GPIOA                                        ((GPIO_TypeDef *) GPIOA_BASE)
#define                 GPIOB                                           ((GPIO_TypeDef *) GPIOB_BASE)
#define                GPIOC                                        ((GPIO_TypeDef *) GPIOC_BASE)
#define                GPIOD                                        ((GPIO_TypeDef *) GPIOD_BASE)
#define                GPIOE                                        ((GPIO_TypeDef *) GPIOE_BASE)
#define                GPIOF                                        ((GPIO_TypeDef *) GPIOF_BASE)
#define                GPIOG                                        ((GPIO_TypeDef *) GPIOG_BASE)


//RCC寄存器结构体定义
typedef struct
{
        uint32_t CR;
        uint32_t CFGR;
        uint32_t CIR;
        uint32_t APB2RSTR;
        uint32_t APB1RSTR;
        uint32_t AHBENR;
        uint32_t APB2ENR;
        uint32_t APB1ENR;
        uint32_t BDCR;
        uint32_t CSR;
}RCC_TypeDef;

#define         RCC                                                ((RCC_TypeDef *)RCC_BASE)

使用特权

评论回复

相关帖子

沙发
850323370| | 2021-2-27 11:36 | 只看该作者
兄弟 找到原因的吗 我也是这个问题

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

471

主题

480

帖子

0

粉丝