STM32固件包里寄存器地址定义在哪????

[复制链接]
8708|7
 楼主| zhaoweige 发表于 2011-5-24 18:01 | 显示全部楼层 |阅读模式
ST公司提供的固件包里,我找遍了都没找到寄存器地址
typedef struct
{
  __IO uint32_t CR;
  __IO uint32_t CFGR;
  __IO uint32_t CIR;
  __IO uint32_t APB2RSTR;
  __IO uint32_t APB1RSTR;
  __IO uint32_t AHBENR;
  __IO uint32_t APB2ENR;
  __IO uint32_t APB1ENR;
  __IO uint32_t BDCR;
  __IO uint32_t CSR;
} RCC_TypeDef;
像这里的GPIO寄存器定义,应该有个地址才对啊
就像应该有个:     #define      APB2RSTR          该寄存器基地址
香水城 发表于 2011-5-24 18:26 | 显示全部楼层
你找找RCC_TypeDef的定义就知道了,:lol
 楼主| zhaoweige 发表于 2011-5-24 19:17 | 显示全部楼层
2# 香水城
这个结构体就是RCC_TypeDef的定义啊。。。。
别的地方也没找到有啊
swx2010 发表于 2011-5-24 20:29 | 显示全部楼层
stm32f10x.h
songbangyan 发表于 2011-5-27 10:56 | 显示全部楼层
在map里面定义了所有的基址
香水城 发表于 2011-5-27 13:49 | 显示全部楼层
2# 香水城
这个结构体就是RCC_TypeDef的定义啊。。。。
别的地方也没找到有啊
zhaoweige 发表于 2011-5-24 19:17


我是说RCC_TypeDef的基地址定义
airwill 发表于 2011-5-27 18:19 | 显示全部楼层
楼主看看这些定义, 相信应该能明白了 (stm32f10x.h)

#define RCC                 ((RCC_TypeDef *) RCC_BASE)

#define RCC_BASE              (AHBPERIPH_BASE + 0x1000)
#define AHBPERIPH_BASE        (PERIPH_BASE + 0x20000)
#define PERIPH_BASE           ((uint32_t)0x40000000) /*!< SRAM base address in the bit-band region */
shuai532209720 发表于 2015-8-23 17:29 | 显示全部楼层
我想问一下,就是在#define RCC                 ((RCC_TypeDef *) RCC_BASE)定义了的是RCC的基地址,但RCC的每个寄存器都有一个偏移量,这个偏移量是怎么跟结构体中的变量相对应上的呢?这个结构体中的变量是不是一定要按顺序来定义啊?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

37

主题

147

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部