你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
外设时钟使能语句的问题
[复制链接]
cllmxdsdo
提问时间:2019-8-4 13:09 /
主芯片使用的是STM32F207ZET6.
如下图所示,TIM3挂载在APB1总线下面的
但是有个疑问,底下外设时钟使能的语句都能使用吗,有什么区别吗?如果要使用TIM3,按道理来说不应该是第二种写法吗
RCC_AHB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3 , ENABLE);
求大佬的帮助,小弟在此谢过。
赞
0
收藏
0
评论
4
分享
发布时间:2019-8-4 13:09
举报
请先
登录
后回复
4个回答
ikxlf
回答时间:2019-8-4 13:25:49
a0a.1 32b0c
我一般用的下面语句,我建议你跟进去看寄存器配置有何区别,结合STM32参考手册
赞
0
评论
回复
支持
反对
wenyangzeng
回答时间:2019-8-4 15:34:03
a0a.1 32b0c
RCC_AHB1是寄存器复位寄存器的配置,没有TIM3选项的。
RCC_APB1才是寄存器使能寄存器
这句:RCC_
AHB1
PenriphClockCmd(RCC_
APB1
Periph_TIM3,ENABLE); 有点牛头不对马嘴了!楼主有点粗心了。
正确的应该是:RCC_APB1PenriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);
评分
参与人数
1
蝴蝶豆
+2
收起
理由
STMCU
+ 2
查看全部评分
赞
0
评论
回复
支持
反对
七哥
回答时间:2019-8-5 11:36:50
a0a.1 32b0c
这样肯定是不行的嘛!看一下时钟树。
#define RCC_APB1Periph_TIM3 ((uint32_t)0x00000002)
要是把RCC_APB1Periph_TIM3参数传进RCC_AHB1PeriphClockCmd()函数中,那出大乱子的。
RCC_AHB1PeriphClockCmd()函数中的参数值等于0x00000002那是RCC_AHB1Periph_GPIOB。
#define RCC_AHB1Periph_GPIOB ((uint32_t)0x00000002)
评分
参与人数
1
蝴蝶豆
+2
收起
理由
STMCU
+ 2
查看全部评分
赞
0
评论
回复
支持
反对
废鱼
回答时间:2019-8-5 16:56:53
a0a.1 32b0c
楼主确定一下这句代码从哪儿来的,从代码上看是APB1。
#define __HAL_RCC_TIM3_CLK_ENABLE() do { \
__IO uint32_t tmpreg = 0x00U; \
SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM3EN);\
/* Delay after an RCC peripheral clock enabling */ \
tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM3EN);\
UNUSED(tmpreg); \
评分
参与人数
1
蝴蝶豆
+2
收起
理由
STMCU
+ 2
查看全部评分
赞
0
评论
回复
支持
反对
所属标签
相似问题
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
RCC_APB1才是寄存器使能寄存器
这句:RCC_AHB1PenriphClockCmd(RCC_APB1Periph_TIM3,ENABLE); 有点牛头不对马嘴了!楼主有点粗心了。
正确的应该是:RCC_APB1PenriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);
评分
查看全部评分
#define RCC_APB1Periph_TIM3 ((uint32_t)0x00000002)
要是把RCC_APB1Periph_TIM3参数传进RCC_AHB1PeriphClockCmd()函数中,那出大乱子的。
RCC_AHB1PeriphClockCmd()函数中的参数值等于0x00000002那是RCC_AHB1Periph_GPIOB。
#define RCC_AHB1Periph_GPIOB ((uint32_t)0x00000002)
评分
查看全部评分
#define __HAL_RCC_TIM3_CLK_ENABLE() do { \
__IO uint32_t tmpreg = 0x00U; \
SET_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM3EN);\
/* Delay after an RCC peripheral clock enabling */ \
tmpreg = READ_BIT(RCC->APB1ENR, RCC_APB1ENR_TIM3EN);\
UNUSED(tmpreg); \
评分
查看全部评分