一、移植STM32F407VET6标准库

开源链接

https://gitee.com/ren2004/stm32f407vet6/tree/master/stm32f407/stm32f407vet6

1.1 创建文件夹

移植过程类似江科大

先给工程新建几个文件夹

845a1a8b741044a5b11f59c102519ac9.png

文件说明

名称用于存放什么文件
Libraries存放的库文件
Startup启动程序
Systemdelay函数
User主函数、中断(7个文件)

1.1.1 libraries

  • 添加inc和src中所有文件

  • 路径:

    D:\code\stm32f407vet6\stm32f407\f407固件库\Libraries\STM32F4xx_StdPeriph_Driver

a3dcd8cf3ffe4bf29d7bc7965b99d579.png

1.1.2 Startup

  • 路径:

    D:\code\stm32f407vet6\stm32f407\f407固件库\Libraries\CMSIS\Include

79bd8fc22517436bb6885d33f5c7a20a.png

  • 路径:

    D:\code\stm32f407vet6\stm32f407\f407固件库\Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\arm

408bc2581fc145bb8caeca5affb6500e.png

  • Startup添加好的样子

030da8bcc5f14061bfbb43780e85b251.png1.1.3 System

  • 江科大代码中的Delay.c和Delay.h

f103主频72M,f407主频为168,所以这里需要改一下

4777ba2c38cc43039ca163ccc7665fe4.png1.1.4 User

  • 路径:

    D:\code\stm32f407vet6\stm32f407\f407固件库\Project\STM32F4xx_StdPeriph_Templates

  • ff0a1ae00eae4c4782664d5d2b3d407d.png路径:

    D:\code\stm32f407vet6\stm32f407\f407固件库\Libraries\CMSIS\Device\ST\STM32F4xx\Include

  • 0a7aa2d77a074066bddab216797cd4d2.pngUser添加好的样子

df1d38b7e6174fd59002c58e4eb02744.png

 

1.2 添加文件和路径

 

1817b3ecdd914afab44e391ea8b17e93.pngef7bed3465a946b093b35015d76189af.png

添加好的样子

32718890288449fa9fee579d660eda25.png注意:添加Library需要删除stm324xx_fm.c文件

1edb6f612c9e454199c31f68b4f3023a.png1.3 修改配置

  • 添加宏定义STM32F40_41xxx,USE_STDPERIPH_DRIVER

3c00394a32414d93b55ae9f19b430def.png

  • 更改system_stm32f4xx.c中的PLL_M的值

我们知道系统的外部主时钟是8MHz,所以我们要对系统时钟进行配置,我们这里把系统时钟配置成168MHz。配置时钟需要更改两个地方,一个是system_stm32f4xx.c中的PLL_M的值,要改成8;另一个是stm32f4xx.h中的HSE_VALUE的值,要改成8000000(8MHz)。

4eb9ae958957434d8a70ef32d776ba33.png

 

在main.c文件,在其中输入#include "stm32f4xx.h",右击打开stm32f4xx.h文件打开stm32f4xx.h

3e31a5aac4f54c04b66e30bb7066c3df.png

  • 编译运行

出现报错找到stm32f4xx.h下面的宏定义屏蔽掉

8c825eeaf248440481f24b660e2e09a4.png到此f407标准库的搭建就完成了,如果对你有帮助,希望支持一下,需要我移植好的标准库,评论区留言,下期基于这个工程移植LVGL。

 

 

评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值