OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3158|回复: 3

关于F1和F4的初始化疑问

[复制链接]

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2018-4-25 17:34:08 | 显示全部楼层 |阅读模式
5金钱
在STM32F103和STM32F407寄存器版本都只用了SystemInit();
在STM32F429HAL库版本用了SystemInit(); + HAL_Init(); + Stm32_Clock_Init();


1.HAL_Init()是用来初始化HAL库的,可以理解。
2.之所以加上Stm32_Clock_Init(),是因为F429的SystemInit()内未对时钟初始化吗?
还是说是因为 HAL_Init()的原因导致?
3.如果使用了HAL库版本的话,都是需要SystemInit(); + HAL_Init(); + Stm32_Clock_Init();
这3个函数一起使用吗?

望各位看官指点下,有点懵了!


最佳答案

查看完整内容[请看2#楼]

用hal库你可以直接用STM32CubeMX配置好时钟生成代码,不用原子的Stm32_Clock_Init();这个函数
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

21

主题

2205

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5141
金钱
5141
注册时间
2014-8-26
在线时间
1317 小时
发表于 2018-4-25 17:34:09 | 显示全部楼层
用hal库你可以直接用STM32CubeMX配置好时钟生成代码,不用原子的Stm32_Clock_Init();这个函数
回复

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
 楼主| 发表于 2018-4-25 17:50:28 | 显示全部楼层
仔细看了下,好像是F103和F407的SystemInit()函数包含了SetSysClock(),所以不需要额外的时钟配置,应该是这个原因!
回复

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
 楼主| 发表于 2018-4-26 09:58:03 | 显示全部楼层
login_FAE 发表于 2018-4-25 18:37
用hal库你可以直接用STM32CubeMX配置好时钟生成代码,不用原子的Stm32_Clock_Init();这个函数

还真没太注意CubeMX生成的时钟配置代码,只是匆匆看了外设的配置,受教了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-19 16:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表