中山 网站建设一条龙服务,专题型定制网站建设,浙江十大建筑公司排名,建筑设计怎么学本文主要介绍基于标准库函数移植的STM32的应用软件工程的修改#xff0c;主要涉及到文件内容修改、Makefile文件编写、编译脚本编写等内容#xff0c;其中编译脚本是基于arm-none-eabi-gcc的交叉编译器撰写的。程序亲测可以正常编译#xff0c;生成.bin和.hex的可烧录镜像文… 本文主要介绍基于标准库函数移植的STM32的应用软件工程的修改主要涉及到文件内容修改、Makefile文件编写、编译脚本编写等内容其中编译脚本是基于arm-none-eabi-gcc的交叉编译器撰写的。程序亲测可以正常编译生成.bin和.hex的可烧录镜像文件。
1.首先修改project_m4/user目录下的main.c函数将多余代码删除修改如下所述
图1 user/main.c文件修改2.将project_m4/fwlib/src目录下的stm32f4xx_fmc.c文件删除。
图2 删除fwlib/src目录下的stm32f4xx_fmc.c文件3.将project_m4/user/目录下的stm32f4xx_it.c文件第25行的main.h头文件引用删除137行的延时函数调用删除如下图所示 图3 user/stm32f4xx_it.c文件修改4.将project_m4目录下的stm32_flash.ld链接文件的75行添加_exit段否则编译会报错注意这是由于交叉编译器版本的问题。
图4 stm32_flash.ld链接文件修改5.在project_m4目录下新建Makefile的文件如下图所示
图5 应用软件工程目录新建Makefile文件6.Makefile的内容如下所示 图6 Makefile文件内容7.新建编译脚本build.sh并编写build编译脚本如下所示
图7 build.sh编译脚本内容8.给编译脚本build.sh添加可执行权限并运行编译脚本build.sh进行应用软件工程的编译。
图8 给编译脚本添加可执行权限并运行编译脚本build.sh9.编译完成生成可烧录的hex、bin格式的镜像文件如下所示
图9 编译完成生成可烧录文件