完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
一、宏定义: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 即可解决问题 |
|
|
|
只有小组成员才能发言,加入小组>>
2434 浏览 0 评论
9090 浏览 4 评论
36754 浏览 19 评论
5021 浏览 0 评论
24729 浏览 34 评论
1519浏览 2评论
1735浏览 1评论
2183浏览 1评论
1544浏览 0评论
516浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 13:03 , Processed in 1.221697 second(s), Total 78, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号