新手入门--stm32将其他项目功能添加到已有项目
Posted LoveYaner
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了新手入门--stm32将其他项目功能添加到已有项目相关的知识,希望对你有一定的参考价值。
环境:keil4+stm32项目
已有项目名project
要添加功能项目名project2
实例场景:在project中添加project2中SD卡读写功能(带fatfs文件系统),也可以理解为将project2中已实现的带fatfs的SD卡读写模块移植到新项目project中。
步骤:
1、启动文件:在project2中的启动文件为startup_stm32f10x_hd.s(固件库版本V3.0.0),在project中启动文件为startup_stm32f10x_md.s(固件库版本V3.5.0)。基于要移植的功能在project2中是可运行的,将project的启动文件修改为startup_stm32f10x_hd.s(对应固件库V3.5.0即可)。
2、全局宏定义:在project2中按顺序依次打开Project-->Options for Target(alt+F7)-->C/C++,在此选项卡中Preprocessor Symbols里边Define会定义一些全局宏,本次移植有USE_STDPERIPH_DRIVER, STM32F10X_HD。将这些全局宏添加至project中。附图如下。
3、处理中断:在project2中开启了SDIO_IRQn中断,且将中断函数SDIO_IRQHandler定义在stm32f10x_it.c。在移植是需将其复制到project项目的stm32f10x_it.c文件中。此次不易发现,新手需要留意!
4、功能的逐步复制:
1)配置中断,3中已说明;
2)添加初始化函数,对应的宏、变量等一同添加;
3)编译并烧写,看project是否正常运行;是,进行下一步4);否,回到2)检查;
4)添加功能新函数,如读取SD卡数据;
5)编译并烧写,看project是否正常运行以及是否可以读数据;是,完成移植;否,回到4)检查。
以上是关于新手入门--stm32将其他项目功能添加到已有项目的主要内容,如果未能解决你的问题,请参考以下文章
基于STM32F的ESP8266天气时钟--------MCU获取时间及显示(完结)
基于STM32F的ESP8266天气时钟--------MCU获取时间及显示(完结)
基于STM32F的ESP8266天气时钟--------MCU获取时间及显示(完结)