• 快速掌握STM32工程创建


    STM32 工程创建-- 使用Keil uVision5 软件
    晓理紫

    1 准备库函数

    STM32F10x_StdPeriph_Lib_V3.5.0
    VX 搜索“晓丽紫”关注回复STM32F10x即可下载

    2、创建一个目录用来存放工程

    STM32Study

    STM32Study/study1 存放本次工程目录

    3、打开Keil uVision5 创建工程

    在这里插入图片描述

    4、选择型号(根据板子型号选择)

    在这里插入图片描述

    5、在工程中添加必要文件

    5.1 、启动文件

    启动文件位于库函数
    STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm

    在工程文件目录中创建文件目录Start把启动文件中的文件考到工程文件中

    在这里插入图片描述

    5.2 拷外设寄存器描述文件和时钟文件

    位于STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x

    也拷入到Start中

    在这里插入图片描述

    5.3 拷贝内存寄存器文件

    位于 STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport

    在这里插入图片描述

    5.4 把必要文件加载到工程中

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    6、添加头文件路径

    在这里插入图片描述

    在这里插入图片描述

    7、测试工程可用性

    7.1 在工程中创建User存储main文件

    创建组并改名为User

    在这里插入图片描述

    7.2 添加main文件

    在这里插入图片描述

    在这里插入图片描述

    8、编写测试代码

    #include "stm32f10x.h"                  // Device header
    
    int main(void)
    {
    	while(1)
    	{
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    9、错误处理

    9.1 错误1

    Build target 'Target 1'
    Start/core_cm3.c(445): error: non-ASM statement in naked function is not supported
      uint32_t result=0;
    
    • 1
    • 2
    • 3

    原因: 使用的编译版本太新

    在这里插入图片描述

    9.2 错误2

    .\Objects\study2_1.sct(7): error: L6235E: More than one section matches selector - cannot all be FIRST/LAST.
    
    • 1

    原因:启动文件都加载进来了

    在这里插入图片描述

    当现实如图时工程可以使用了

    在这里插入图片描述

    10 debug,烧录调试

    10.1 选择下降方式并设置下载复位执行

    在这里插入图片描述
    在这里插入图片描述

    11、 使用库函数进行编程

    11.1 拷贝库函数

    创建Library目录并把\STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver中src以及inc中的文件拷入

    11.2 像上面一样添加Library组

    11.3 添加库函数头文件包含关系的文件以及中断函数

    位于 STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template 复制到User文件目录中

    在这里插入图片描述

    11.4 向上面一样加入头文件

    11.5 添加宏定义

    在这里插入图片描述

    在这里插入图片描述

    12、编译,下载到板子上运行

    在这里插入图片描述

  • 相关阅读:
    2022年全球市场中空玻璃密封胶总体规模、主要生产商、主要地区、产品和应用细分研究报告
    关于myBase个人笔记数据库的同步
    38-57-hive-DML-查询
    Java如何实现统计在线人数的功能?
    Apache Doris 2.0.5 版本正式发布
    清华“洗衣机系”学霸,如何在 GitHub 拿下 50000+Star?
    2022年9月深圳PMP®项目管理招生啦
    【缓存】OS层面缓存设计机制
    Qt | 远程仓库
    virtio frontend and backend
  • 原文地址:https://blog.csdn.net/u011573853/article/details/132656360