黄工无刷电机学习
登录
直播中
二霸
12年用户
633经验值
私信
关注
[问答]
STM32F446新建工程模板常见的问题有哪些?
开启该帖子的消息推送
STM32F446
STM32
F446新建工程模板常见的问题有哪些?
回帖
(1)
刘文明
2021-10-20 09:49:34
一、宏定义:STM32F446xx,USE_STDPERIPH_DRIVER
宏定义的说明:为什么需要两个宏定义
USE_STDPERIPH_DRIVER
:这个说明你在使用标准外设驱动,有自己的外设配置文件,即stm32f10x_conf.h,详细可查看stm32f10x.h中8296-8298行。关于stm32f10x_conf.h文件中的内容,是有选择的#inlude "stm32f10x_xxxx.h",这样只编译需要的外设文件,减少hex文件的体积。如果没有使用这个宏,或没有stm32f10x_conf.h文件,那么编译时会有一大堆莫名奇妙地错误,这是因为MDK中也自带了stm32f10x_xxxx.h文件,使得编译器使用MDK中.h文件,而.c文件和.h文件版本是不匹配的。注意,如果是库文件的错误,那一定是你工程配置有问题。
STM32F446xx
是根据自己的芯片型号类配置的,对于F4系统,配置的方法如下:
打开文件路径:S:STM32F446en.stm32f4_dsp_stdperiph_libSTM32F4xx_DSP_StdPeriph_Lib_V1.8.0LibrariesCMSISDeviceSTSTM32F4xxSourceTemplatesarm 查看自己的使用的芯片
对于STM32F446来说,宏定义STM32F44xx其实就是上图圈红圈的内容
对于STM32F407来说,宏定义STM32F40_41xxx
【注意】两个宏定义之间是用逗号隔开的
二、对于FWLIB中需不需要stm32f4xx_fsmc.c的说明
可以参考文章:STM32 FSMC的用法--LCD:https://blog.csdn.net/stephen_yu/article/details/10220785
三、关于包含路径的说明
固件库存放的头文件子目录是
FWLIBinc
,不是 FWLIBsrc。结合自己的ADC项目
四、系统时钟配置(重要)
还有个非常重要的关键点,就是系统时钟的配置,查看 System_stm32f4xx.c 文件,把主时钟频率配置为F446匹配的180MHz。
1、系统时钟设置原理与计算公式
2、查看分频倍频系数
3、查看外部晶振的值
4、计算验证:8MHz×360/8×2=180MHz,到此为止,系统时钟已经配置为180MHz,即主频已经配置为180MHz。
五、删掉两个地方,错误和警告就没了
六、关于CORE文件夹的说明,启动文件修改为自己使用的文件
与正点原子的F407对比
注意:我用core_cmSimd(2015年编写的)替代掉core_cm4_simd(2013年编写的),编译时会发现错误,我们只需要把宏定义#define core_cm4_simd修改为#define core_cmSimd 即可解决问题
一、宏定义:STM32F446xx,USE_STDPERIPH_DRIVER
宏定义的说明:为什么需要两个宏定义
USE_STDPERIPH_DRIVER
:这个说明你在使用标准外设驱动,有自己的外设配置文件,即stm32f10x_conf.h,详细可查看stm32f10x.h中8296-8298行。关于stm32f10x_conf.h文件中的内容,是有选择的#inlude "stm32f10x_xxxx.h",这样只编译需要的外设文件,减少hex文件的体积。如果没有使用这个宏,或没有stm32f10x_conf.h文件,那么编译时会有一大堆莫名奇妙地错误,这是因为MDK中也自带了stm32f10x_xxxx.h文件,使得编译器使用MDK中.h文件,而.c文件和.h文件版本是不匹配的。注意,如果是库文件的错误,那一定是你工程配置有问题。
STM32F446xx
是根据自己的芯片型号类配置的,对于F4系统,配置的方法如下:
打开文件路径:S:STM32F446en.stm32f4_dsp_stdperiph_libSTM32F4xx_DSP_StdPeriph_Lib_V1.8.0LibrariesCMSISDeviceSTSTM32F4xxSourceTemplatesarm 查看自己的使用的芯片
对于STM32F446来说,宏定义STM32F44xx其实就是上图圈红圈的内容
对于STM32F407来说,宏定义STM32F40_41xxx
【注意】两个宏定义之间是用逗号隔开的
二、对于FWLIB中需不需要stm32f4xx_fsmc.c的说明
可以参考文章:STM32 FSMC的用法--LCD:https://blog.csdn.net/stephen_yu/article/details/10220785
三、关于包含路径的说明
固件库存放的头文件子目录是
FWLIBinc
,不是 FWLIBsrc。结合自己的ADC项目
四、系统时钟配置(重要)
还有个非常重要的关键点,就是系统时钟的配置,查看 System_stm32f4xx.c 文件,把主时钟频率配置为F446匹配的180MHz。
1、系统时钟设置原理与计算公式
2、查看分频倍频系数
3、查看外部晶振的值
4、计算验证:8MHz×360/8×2=180MHz,到此为止,系统时钟已经配置为180MHz,即主频已经配置为180MHz。
五、删掉两个地方,错误和警告就没了
六、关于CORE文件夹的说明,启动文件修改为自己使用的文件
与正点原子的F407对比
注意:我用core_cmSimd(2015年编写的)替代掉core_cm4_simd(2013年编写的),编译时会发现错误,我们只需要把宏定义#define core_cm4_simd修改为#define core_cmSimd 即可解决问题
举报
更多回帖
rotate(-90deg);
回复
相关问答
STM32F446
STM32F446
的功能有哪些
2021-10-15
2028
STM32
CubeProgrammer如何通过
STM32F446
对S25FL064L进行编程?
2023-02-01
495
为什么
STM32F446
的引脚外设功能机制不能remap?
2023-09-26
393
怎样去
新建
一种
STM32F
303CBT6
工程
模板
呢
2021-10-20
1588
STM32F446
引脚图和中文手册
2022-08-30
8665
请问
STM32
如何
新建工程
?
2021-11-30
1256
如何用
STM32F
407去
新建
一个
工程
模板
呢
2021-11-25
1697
STM32
CubeMX如何
新建工程
?
2021-11-23
933
stm32f446
RTC精准校验使用?
2018-07-10
4775
如何计算从CODEC到
STM32F446
的每个样本的接收时间呢?
2022-12-19
402
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分