Keil新建STM32软件工程 - (详细步骤图文)

news2024/9/9 0:38:26

文章目录

  • 1. 前言
  • 2. 下载芯片对应的Keil开发包
  • 3. 下载芯片对应的标准外设库 - STM32F10x_StdPeriph_Lib_Vx.x.x
  • 4. 新建工程文件夹 - Demo3
    • 4.1 移植标准外设库
    • 4.2 启动文件介绍及如何选择
  • 5. 新建软件工程 - Demo
    • 5.1 打开Keil → Project → New uVision Project
    • 5.2 选择芯片型号
    • 5.3 添加文件 - Manage Project items
    • 5.4 配置工程 - Configure target options
  • 6. 编译检查 - Rebuild
  • 7. 总结


1. 前言

  • 芯片型号:STM32F103VCT6
  • 软件:Keil5

2. 下载芯片对应的Keil开发包

  • 详细步骤及下载链接参考以下说明:
  • 《STM32所有系列keil 开发包的下载链接 - Keil.STM32Fxxx_DFP.x.x.x.pack)》

3. 下载芯片对应的标准外设库 - STM32F10x_StdPeriph_Lib_Vx.x.x

  • 详细步骤及下载链接参考以下说明:
  • 《STM32标准外设库下载(下载地址与步骤详解)》
  • 我们使用在标准外设库中提取的文件主要来自“Libraries”下的文件,有些文件是多余的,不用提取。
    在这里插入图片描述

4. 新建工程文件夹 - Demo3

  • 除了标准外设库,我们还要建立文件夹存放自己的工程代码
  • 先建立工程文件夹“Demo3”,再建立5个子文件夹,如下图所示:
    在这里插入图片描述

4.1 移植标准外设库

  • 下图为移植过程中,工程 Demo3 与标准外设库 STM32F10x_StdPeriph_Lib_V3.6.0 的文件对应关系
    在这里插入图片描述

4.2 启动文件介绍及如何选择

这里用到的芯片型号为STM32F103VCT6,Flash大小为 256K,所以选取启动文件 startup_stm32f10x_hd.s

  • cl:互联型产品,适用于STM32F105/107系列。
  • vl:超值型产品,适用于STM32F100系列。
  • xl:超高密度产品,适用于STM32F101/103系列。
  • ld:低密度产品,适用于Flash小于64K的型号。
  • md:中等密度产品,适用于Flash大小为64K或128K的型号。
  • hd:高密度产品,适用于Flash大于128K的型号。

5. 新建软件工程 - Demo

5.1 打开Keil → Project → New uVision Project

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

5.2 选择芯片型号

图1
图2

5.3 添加文件 - Manage Project items

注意:下面只是举例,STM32F10x_StdPeriph_Driver文件夹要根据具体自身需求添加相应文件,缺失会编译出错,实在不知道自己需要用到那个,就全加上
在这里插入图片描述

图1
图2

5.4 配置工程 - Configure target options

在这里插入图片描述

图1 Target
图2 Output
图3 C/C++
图4
图5 Debug
图6
图7

6. 编译检查 - Rebuild

在这里插入图片描述

7. 总结

  • 欢迎纠正,(づ ̄3 ̄)づ╭❤~
    如果有帮助到你,能点个赞吗?ღ( ´・ᴗ・` ) 比心

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1317156.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CSS 的背景属性(开发中常用)

目录 1 内容预览 背景颜色 背景图片 背景平铺 背景图片位置(常用) 背景图像固定 背景复合写法 背景色半透明 实现案例 1 内容预览 背景属性可以设置背景颜色、背景图片、背景平铺、背景图片位置、背景图像固定等。 注意: 把表格中的五个属背下来&#xff0c…

朱卫明:从韶关走向世界的创作型歌手

朱卫明,艺名Aming,是一位来自广东韶关的杰出唱作音乐人。他以其独特的创作才华和深情的嗓音,赢得了众多歌迷的喜爱。作为一名创作型歌手,朱卫明用音乐传递情感,用歌声打动人心。 一、早年经历与音乐启蒙 朱卫明出生于…

Explain工具-SQL性能优化

文章目录 SQL性能优化的目标Explain覆盖索引ExplainindexExplainfilesortExplainfilesort创建 idx_bd(b,d) SQL性能优化的目标 达到 range 级别 Explain覆盖索引 Extra中Using index表示覆盖索引 Explainindex type中是index,代表全索引扫描,磁盘扫…

Sketch for Mac:实现你的创意绘图梦想的矢量绘图软件

随着数字时代的到来,矢量绘图软件成为了广告设计、插画创作和UI设计等领域中必不可少的工具。在众多矢量绘图软件中,Sketch for Mac(矢量绘图软件)以其强大的功能和简洁的界面脱颖而出,成为了众多设计师的首选。 Sket…

【LeetCode:746. 使用最小花费爬楼梯 | 递归 -> 记忆化搜索 -> DP】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

【机器学习】应用KNN实现鸢尾花种类预测

目录 前言 一、K最近邻(KNN)介绍 二、鸢尾花数据集介绍 三、鸢尾花数据集可视化 四、鸢尾花数据分析 总结 🌈嗨!我是Filotimo__🌈。很高兴与大家相识,希望我的博客能对你有所帮助。 💡本文由Fil…

YOLOv5改进 | 2023 | CARAFE提高精度的上采样方法(助力细节长点)

一、本文介绍 本文给大家带来的CARAFE(Content-Aware ReAssembly of FEatures)是一种用于增强卷积神经网络特征图的上采样方法。其主要旨在改进传统的上采样方法(就是我们的Upsample)的性能。CARAFE的核心思想是:使用…

【LeetCode刷题笔记】155.最小栈

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; 更多算法知识专栏&#xff1a;算法分析&#x1f525; 给大家跳段街舞感谢…

指针运算笔试题解析

题目一 #include <stdio.h>int main(){int a[5] { 1, 2, 3, 4, 5 };int *ptr (int *)(&a 1);printf( "%d,%d", *(a 1), *(ptr - 1));return 0;}// 程序的结果是什么&#xff1f; 答案中显示第一个是2&#xff0c;第二个是5 咱们先来解释一下第一个答…

C语言入门基础(二)

基本概念 地址 计算机的内存是一块用于存储数据的空间&#xff0c;由一系列连续的存储单元组成&#xff0c;就像下面这样&#xff0c; 每一个单元格都表示1个Bit&#xff0c;一个bit在EE专业的同学看来就是高低电位&#xff0c;而在CS同学看来就是0&#xff0c;1两种状态。 …

K8s中pod詳解

目录 Yaml语法解析 Pod pod是如何被创建的 1.创建一个pod 2.创建一个多容器pod 进入容器 3.配置节点标签 4.Pod容器的交互 4.1创建pod&#xff0c;并做本地解析 4.2pod共享进程 4.3pod共享宿主机namespace 5.钩子函数lifecycle 基础指令 # 查看对应资源: 状态 $ kubectl…

人工智能_机器学习065_SVM支持向量机KKT条件_深度理解KKT条件下的损失函数求解过程_公式详细推导---人工智能工作笔记0105

之前我们已经说了KKT条件,其实就是用来解决 如何实现对,不等式条件下的,目标函数的求解问题,之前我们说的拉格朗日乘数法,是用来对 等式条件下的目标函数进行求解. KKT条件是这样做的,添加了一个阿尔法平方对吧,这个阿尔法平方肯定是大于0的,那么 可以结合下面的文章去看,也…

首字母转大写在线工具

具体请前往&#xff1a;在线首字母转大写

结构体基础全家桶(2)结构体指针

目录 指向结构体类型数据的指针&#xff1a; 指向结构体变量的指针&#xff1a; 创建&#xff1a; 应用&#xff1a; 注意事项&#xff1a; 指向结构体数组的指针 创建&#xff1a; 应用&#xff1a; 注意&#xff1a; 用结构体变量和指向结构体的指针做函数的参数 …

oracle详细安装教程(附带百度网盘资源)

一,下载安装包途径 1.官网 Unauthorized Request 2.百度网盘分析 https://pan.baidu.com/s/1n221gdTK0Fcho839oRab9g 提取码1q2w 二&#xff0c;安装教程 1.下载完安装包后点击 setup.exe 如果出现一下的问题&#xff0c;使用windows10等系统安装oracle 11g等版本的数据库…

大 O 表示法在机器学习中的重要性

一、介绍 在不断发展的机器学习领域&#xff0c;算法的效率至关重要。大 O 表示法成为这方面的一个关键工具&#xff0c;它提供了一种描述算法性能或复杂性的语言&#xff0c;特别是在时间和空间方面。本文探讨了 Big O 表示法在机器学习中的重要性&#xff0c;阐明了它在算法选…

Next.js加载异步组件 骨架屏

Next.js 中有两种处理页面加载的方式&#xff0c;一种是 Loading UI 一种是 Streaming。接下来我将介绍这两种的区别&#xff0c;以及实际的业务场景。 当我们进入某个页面时&#xff0c;需要获取页面数据&#xff0c;可能是从数据库读取也有可能是 API 服务&#xff0c;总之这…

【深度学习】注意力机制(六)

本文介绍一些注意力机制的实现&#xff0c;包括MobileVITv1/MobileVITv2/DAT/CrossFormer/MOA。 【深度学习】注意力机制&#xff08;一&#xff09; 【深度学习】注意力机制&#xff08;二&#xff09; 【深度学习】注意力机制&#xff08;三&#xff09; 【深度学习】注意…

【从零开始学习JVM | 第九篇】了解 常见垃圾回收器

前言&#xff1a; 垃圾回收器&#xff08;Garbage Collector&#xff09;是现代编程语言中的一项重要技术&#xff0c;它提供了自动内存管理的机制&#xff0c;极大地简化了开发人员对内存分配和释放的繁琐工作。通过垃圾回收器&#xff0c;我们能够更高效地利用计算机的内存资…