STM32标准库_01 | 搭建自己的程序框架

本篇文章主要介绍本人早期的基于STM32标准库的程序框架,希望能给人以收获。

1.开发环境

软件环境

使用MDK5.25版本,芯片包为STM32F1系列。

硬件环境

开发板:一块STM32F103C8T6开发板(FLASH:64kBytes,RAM:20kBytes),是一款中等容量的芯片。

烧录器:STlink或者Jlink。

2.工程创建

创建文件夹

现在本地文件夹下创建4个文件夹,分别是APP(存放应用层代码),LIB(存放STM32标准库相关文件),CORE(存放STM内核与启动文件等),Project(存放工程相关文件)。

创建工程

在MDK中新建工程,保存到刚刚创建的本地文件夹下的Project文件夹中,并选择STM32F103芯片。

后面会弹出选择其他驱动组件的界面,直接选择取消。

接着直接用正点原子战舰板资料(推荐下载,软硬件资料很全)里面的v3.5固件库,把工程需要的文件拷贝到本地文件夹中,如图示主要是拷贝到CORE和LIB文件夹。

我们的LIB文件夹直接拷贝STM32战舰的参考资料\STM32F1xx固件库\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver文件夹下的inc和src这两个文件夹。

在MDK中导入我们的文件夹结构

在本地APP文件夹中添加main.c等文件夹(记得勾选显示文件拓展名),再添加到MDK中。

最后要指定一下头文件路径和添加全局属性的宏定义。

3.编写代码

打开main.c添加main函数并编译

框架代码编写

(1)系统时基

当我们拿到一块STM板子的时候,我们得看它的外部晶振是多少M的(一般用8M的外部晶振),如果不是8M的晶振就需要修改stm32f10x.h和system_stm32f10x,c里的SetSysClockTo72()函数共两处地方。

开始编写systick.c和systick.h文件。

(2)编写LED程序用于测试

原理图

程序下载

实验现象

代码已全部上传到gitee,希望各位小伙伴们在下载的同时不忘点击Star,地址:https://gitee.com/Notmi/stm32-standard-peripheral-libraries

posted @ 2020-06-26 14:24  半截心跳  阅读(2444)  评论(1编辑  收藏  举报