• 快速掌握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、编译,下载到板子上运行

    在这里插入图片描述

  • 相关阅读:
    【LIUNX】配置缓存DNS服务
    react-redux 的使用
    怎么提取视频中的音乐保存到本地?其实方法很简单
    【代码精读】进入optee时中断都是开启的还是关闭的?
    国内IT市场还有发展吗?有哪些创新好用的IT运维工具可以推荐?
    动态规划算法
    FPGA CFGBVS 管脚接法
    6、项目第六阶段——用户名登录显示和注册验证码
    【算法练习Day5】有效的字母异位词 &两个数组的交集&&快乐数&&两数之和
    关于windows下ffmpeg视频(libx264,h264_qsv,h264_cuvid,h264_amf)编码参数纪要
  • 原文地址:https://blog.csdn.net/u011573853/article/details/132656360