你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
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管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
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); \
评分
查看全部评分