【STM32F4】STM32CUMX相关环境配置

一、环境配置

我们需要以下两个软件

(一)keil5

最正统,最经典的嵌入式MCU开发环境。

该环境的配置可以看看之前的文章

所需文件如下:

当时配置的是STC8H的环境,现在基于此,重新给STM32配置环境。能让STC8H和STM32都能在同一个Keil软件编译运行!

第一步 首先获得并解压ARMCC文件

img

解压后,将它放置keil5的安装路径下的ARM文件夹中,如下图所示:

img

(二) STM32芯片包

   keil5软件里有时候会弹出CMSIS Packs下载的页面,但是不推荐在那里下载,因为非常的慢!

可以去ARM官方网址下载安装:

Arm Keil | Keil STM32F4xx_DFP

img

下载完后如下:

img

然后双击它,将它安装好就行了!

第三步 Keil配置

创建新工程中

img

img

img

img

img

img

这样就配置好了。

创建工程还需要将官方的固件库包里的源码文件复制到我们的工程目录文件夹下面(有时间后面再补充吧)。

这里我们直接拿一个demo工程测试一下:

img

说明你的keil可以编译运行STM32的代码了。

(三)STM32CubeMX

一种图形工具,通过分步过程可以非常轻松地配置STM32微控制器和微处理器,以及为Arm® Cortex®-M内核或面向Arm® Cortex®-A内核的特定Linux®设备树生成相应的初始化C代码。

img

配置步骤:

1.打开ST官网STM32CubeMX - STM32Cube初始化代码生成器 - 意法半导体STMicroelectronics

2.划到官网主页的最底部(根据自己的电脑型号进行选择)

虽然这是个免费的软件,但是下载还需要注册账号或者作为访客下载,操作有些麻烦。

下载安装就好啦

(四)STM32Cubx新建工程

点击File->New Project来创建一个新的工程。

在弹出的界面中找到并选择对应芯片型号,可以在左上角的对话框中搜索,选中后点击Start Project来新建工程。

可以对芯片引脚进行选择操作啦!

1.stm32功能界面简介

新建工程完毕后将弹出这个界面,下面我将简单介绍一下其中的主要功能。

(1)MCU

首先是这中间这块芯片,有所有引脚的映射。用鼠标左右键点击某一引脚可以直接对其进行配置,一般在引脚用作普通IO口或者将引脚的其他功能映射至非默认引脚时需要对引脚直接操作。

(2)外设配置

左边这一栏是外设配置栏,所有内核有关,数模转换有关或是其他外设配置的初始化都在其中进行设置,包括一些第三方组件和实时操作系统的移植都可以在其中完成,还是非常方便的。打勾的地方说明该功能有配置。

这里我们设置一下RCC时钟源,高速时钟源都由外部晶振产生。

(3)时钟树

上面一栏的第二个选项便是时钟树的配置图,可以直接选择各个节点的分频系数来得到外设的时钟频率;甚至可以直接在相应外设的时钟输出端,也就是最后一项里面输入频率,系统会自动计算出节点的分频系数,不过可能因为目前的算法不够完善,总是会卡住,所以不推荐。当然,在此之前要先在外设配置的RCC配置里面把时钟源设置一下。因为现在不需要功能实现,就先不具体设置。

(4)工程设置

上面一栏的第三个选项是工程设置的选项,这里一般在新建工程后首先配置,因为一般不变,而且容易忽略。这里介绍几个一般配置的点,其他地方基本可以不用关注。

  • 工程名(旧版本不允许有中文,当前版本已经支持,**但keil的输出文件中不允许中文,否则会报

  • 编译器种类及版本(一般是MDK也就是keil)

  • 堆栈大小(一般不用管,特殊项目如USB开发时可能用到)

工程文件创建好了!

(5)程序下载

首先安装ST-LINK驱动

有很多下载的方法,一般都是ST-LINK、J-LINK,也可以下载STM32cubeprogrammer(但是非常不推荐,感觉多此一举了!)

如果匹配成功的话就会有以下显示

随后点击OK就好了

下一步 点击编辑运行

如果没有语法报错,则会是0 error

再下一步 点击烧录程序

如果没有问题的话,信息栏会显示如下

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

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

相关文章

运营商三要素核验接口-手机实名验证API

运营商三要素核验接口是一种API(Application Programming Interface,应用程序编程接口),主要用于通过互联网技术对接通信运营商的实名制数据库,以验证用户提供的手机号码、身份证号码、姓名这三项关键信息(…

Python | Leetcode Python题解之第37题解数独

题目: 题解: class Solution:def solveSudoku(self, board: List[List[str]]) -> None:def dfs(pos: int):nonlocal validif pos len(spaces):valid Truereturni, j spaces[pos]for digit in range(9):if line[i][digit] column[j][digit] bloc…

jmeter 指定QPS压测接口

文章目录 jmeter 指定QPS压测接口更换语言为中文创建测试任务新建线程组右键线程组,新建http request,填写要你要压测的接口地址、参数如果需要自定义请求头,添加一个Http头信息管理器要查看结果和QPS统计数据,给上门的http请求添…

算法库应用-有序单链表插入节点

学习源头: 模仿贺利坚老师单链表排序文章浏览阅读5.9k次。  本文针对数据结构基础系列网络课程(2):线性表中第11课时单链表应用举例。例:拆分单链表 (linklist.h是单链表“算法库”中的头文件,详情单击链接…)//本程…

VForm3的文件上传方式

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 http://122.227.135.243:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a…

第三届 SWCTF-Web 部分 WP

写在前面 题目主要涉及的是前端 php 内容知识,仅以本篇博客记录自己 Web 出题的奇思妙想。 Copyright © [2024] [Myon⁶]. All rights reserved. 目录 1、HTTP 2、再见了晚星 3、myon123_easy_php 4、baby_P0P 5、LOGIN!!! 1、HTTP 首页文件默认就是 ind…

《大话西游2》本人收集的十二个单机版游戏,有详细的视频架设教程,云盘下载

《大话西游2》是一款经典的大型多人在线角色扮演游戏,也是一款国风经典的游戏。 有能力的可以架设个外网,让大家一起玩。 《大话西游2》本人收集的十二个单机版游戏,有详细的视频架设教程,值得收藏 下载地址: 链接&…

半导体制造工艺之分类浅述

半导体制造工艺分为逻辑制程(也叫逻辑工艺)和特殊制程(也叫特色工艺)。 1、逻辑工艺概述 随着集成电路行业沿着摩尔定律不断发展,晶体管数量增加的同时,工艺节点不断缩小。先进逻辑工艺是相对的概念,2005年全球先进逻辑工艺的工艺节点在65/55纳米,现在则变为3纳米。中…

人人可拥有刘强东同款数字人分身!

每个人都可以拥有东哥同款数字人分身直播间进行直播带货,怎样克隆自己的数字人形象? 青否数字人克隆源码的克隆效果媲美真人: 仅需将真人录制的2-6分钟视频上传至克隆端后台,系统便会自动启动自动克隆。3-5小时后,即可…

学习微服务nacos遇到的问题

在学习微服务注册到nacos的时候&#xff0c;所有过程都正确了&#xff0c;注册也成功了&#xff0c;但是访问不了调用的地址报错出现问题。 一、引入依赖 在cloud-demo父工程的pom文件中的<dependencyManagement>中引入SpringCloudAlibaba的依赖 1、springboot <pa…

森林消防装备:高压消防接力水泵/恒峰智慧科技

在广袤无垠的森林中&#xff0c;每一份绿色都是大自然赋予我们的宝贵财富。然而&#xff0c;这些美丽的绿色也可能因为一场突如其来的火灾而被瞬间吞噬。为了保护这片生命的绿洲&#xff0c;我们需要一种高效、可靠的消防装备——高压消防接力水泵。 这款森林消防装备采用本田汽…

常规文件怎么做成二维码?扫描二维码就能在线看文件

现在可以将文件做成活码二维码之后&#xff0c;通过扫描二维码的方式来查看文件内容&#xff0c;部分二维码也可以扫码下载文件&#xff0c;从而实现文件在其他人之间的快速传播。 文件二维码的制作原理是将文件上传到云端之后&#xff0c;生成单独的链接转换成二维码&#xf…

皮带跑偏AI巡检系统 砂石、煤矿、物流场景下的皮带跑偏自动检测

在工业生产中&#xff0c;皮带传动系统被广泛应用于输送、运输和生产线等领域。然而&#xff0c;皮带跑偏是一个普遍存在且隐患严重的问题。一旦皮带跑偏&#xff0c;不仅会造成设备损坏、生产中断&#xff0c;还可能引发严重的安全事故&#xff0c;甚至导致人员伤亡。目前常见…

vue3项目使用<img :src=““ />动态加载图片

分享一下使用<img :src"" />动态加载图片时遇到的问题以及解决方法。 下面是部分页面代码&#xff0c;这里我使用了<img :src"itemc.headUrl" />来动态加载图片 这时遇到了问题&#xff0c;因为这里的itemc.headUrl是图片的相对路径&#xff…

P450焕新而来,室内外两用+路径规划+YOLO点击跟踪,算力高达100TOPS

Prometheus 450&#xff08;简称P450&#xff09;是一款室内室外两用的中型轴距&#xff08;410mm&#xff09;无人机&#xff0c;基于F450基础飞行平台&#xff0c;搭载感知传感器二维平面激光雷达&#xff0c;双目深度相机等&#xff0c;配合软件Prometheus自主无人机系统和S…

Java学习笔记29(泛型)

1.泛型 ArrayList<Dog> arrayList new ArrayList<Dog>(); //1.当我们ArrayList<Dog>表示存放到ArrayList集合中的元素是Dog类 //2.如果编译器发现添加的类型&#xff0c;不满足要求&#xff0c;就会报错 //3.在便利的时候&#xff0c;可以直接取出Dog类型而…

论文笔记:Does Writing with Language Models Reduce Content Diversity?

iclr 2024 reviewer评分 566 1 intro 大模型正在迅速改变人们创造内容的方式 虽然基于LLM的写作助手有可能提高写作质量并增加作者的生产力&#xff0c;但它们也引入了算法单一文化——>论文旨在评估与LLM一起写作是否无意中降低了内容的多样性论文设计了一个控制实验&…

空间数据索引的利器:R-Tree原理与实现深度解析

空间数据索引的利器&#xff1a;R-Tree原理与实现深度解析 R-Tree的原理插入操作分裂操作查询操作 R-Tree的伪代码R-Tree的C语言实现讨论结论 R-Tree是一种平衡树&#xff0c;用于空间数据索引&#xff0c;特别是在二维或更高维度的几何对象存储和检索中。它由Antony Guttman和…

关系抽取与属性补全

文章目录 实体关系抽取的任务定义机器学习框架属性补全 实体关系抽取的任务定义 从文本中抽取出两个或者多个实体之间的语义关系&#xff1b;从文本获取知识图谱三元组的主要技术手段&#xff0c;通常被用于知识图谱的补全。美丽的西湖坐落于浙江省的省会城市杭州的西南面。&am…

(C语言入门)数组

目录 什么是数组&#xff1f; 数组&#xff1a; 数组的使用&#xff1a; 数组的初始化&#xff1a; 数组名&#xff1a; 数组案例&#xff1a; 一维数组的最大值&#xff1a; 一维数组的逆置&#xff1a; 数组和指针&#xff1a; 通过指针操作数组元素&#xff1a; …