STM32的开发环境介绍

目录

STM32软件环境

        Keil软件在线安装

        其他软件环境安装

STM32开发的几种方式

STM32寄存器版本和库函数版本

标准外设库的作用:


STM32软件环境

STM32 的集成开发环境(IDE):编辑编译软件

常见的环境:

        (1)KEIL:也称为 MDK_ARM,收费软件 

        (2)IAR: 许多全球著名的公司都在使用IAR提供的开发工具

        (3)STM32CUBEIDE:ST 官方的开发软件,免费的

        (4)VSCODE+插件

        Keil软件在线安装

                KEIL产品 官网下载 https://www.keil.com/download/product/

                器件支持包 xxxxx.pack--KEIL 官网下载 https://www.keil.arm.com/

                安装keil软件时不要有中文路径

        其他软件环境安装

                ST-link 驱动安装 -- 下载程序使用 ST-LINK 下载器 

                CH340 驱动安装 -- 在串口 1 的电路中 用到 CH340 进行 TTL 电平转 USB 电平 

                注意:ST-LINK 安装不要和 KEIL 一个文件夹下面

        注意: 

                (1) CH340 装之后,看不到效果。 

                (2) ST_LINK 装完,一定保存好图标

STM32开发的几种方式

3 种方式:

寄存器                     直观、底层、代码执行效率高         可移植性差、可读性差

标准库(库函数)        移植性高、可读性强、不需            要考虑底层寄存器冗余量大

HAL 库(LL 库)     增加第三方库的接口、使用CubeMx 可视化编程调试        底层比较麻烦

无论哪一种开发方式,最终都是操作的寄存器。

ST 在推广 HAL 之后,新出的系列芯片,不支持标准库,只支持 HAL 库

STM32寄存器版本和库函数版本

        某些系列的 STM32 根据不同的使用场景和 FLASH 大小,启动文件.s 又有 cl、vl、xl、ld、md、hd 的区分,例如 STM32F10x 系列 MCU,其 cl、vl、xl、ld、md、hd 的含义如下:

        cl:互联型产品,stm32f105/107 系列

        vl:超值型产品,stm32f100 系列 

        xl:超高密度产品,stm32f101/103 系列 

        hd:高密度产品,FLASH 大于 128 F103xC,F103xD,F103xE 

        md:中等密度产品,FLASH=64 or 128 F103x8,F103xB 

        ld:低密度产品,FLASH 小于 64K F103x4,F103x6

        STM32F103ZET6 64K+512K 高密度产品 

        STM32F103RCT6 48K+256K 高密度产品 

        STM32F103C8T6 20K+64K 中密度产品

标准外设软件库:--从 ST 官网下载https://www.st.com.cn/zh/embedded-software/stsw-stm32054.html

标准外设库的作用:

        (1) 里面有参考例程,告诉我们各个外设如何使用 

        (2) 里面有创建工程必要的文件

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

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

相关文章

【特殊场景应对9】视频简历的适用场景与风险分析

写在最前 作为一个中古程序猿,我有很多自己想做的事情,比如埋头苦干手搓一个低代码数据库设计平台(目前只针对写java的朋友),比如很喜欢帮身边的朋友看看简历,讲讲面试技巧,毕竟工作这么多年,也做到过高管,有很多面人经历,意见还算有用,大家基本都能拿到想要的offe…

Linux系统性能调优技巧分享

在数字化时代,Linux 系统以其开源、稳定、高效的特性,成为服务器、云计算、物联网等领域的核心支撑。然而,随着业务规模的扩大和负载的增加,系统性能问题逐渐凸显。掌握 Linux 系统性能调优技巧,不仅能提升系统运行效率,还能降低运维成本。下面从多个方面介绍实用的性能调…

关于Code_流苏:商务合作、产品开发、计算机科普、自媒体运营,一起见证科技与艺术的交融!

Code_流苏 🌿 名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 🌟 欢迎来到Code_流苏的CSDN主页 —— 与我一起&…

系统架构设计(三):质量属性

常见分类 一般来说,质量属性可以分为以下几类: 类别常见质量属性性能相关响应时间、吞吐量、资源利用率、实时性、可扩展性可用性相关可用性、高可用性(HA)、可靠性、容错性、恢复性可维护性相关可维护性、可测试性、可扩展性、…

【锂电池剩余寿命预测】GRU门控循环单元锂电池剩余寿命预测(Matlab完整源码)

目录 效果一览程序获取程序内容代码分享研究内容GRU门控循环单元在锂电池剩余寿命预测中的应用摘要关键词1. 引言1.1 研究背景1.2 研究现状与问题1.3 研究目的与意义2. 文献综述2.1 锂电池剩余寿命预测传统方法2.2 深度学习在锂电池寿命预测中的应用2.3 研究空白与本文切入点3.…

SpringCloud原理和机制

Spring Cloud 是一套基于Spring Boot的微服务开发工具集,它提供了在分布式系统环境下构建应用程序所需的一系列工具和服务。Spring Cloud旨在帮助开发人员快速构建一些常见的微服务模式,如服务发现、配置管理、智能路由、熔断器、微代理、控制总线等。 …

LeetCode -- Flora -- edit 2025-04-25

1.盛最多水的容器 11. 盛最多水的容器 已解答 中等 相关标签 相关企业 提示 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最…

有关图的类型的题目以及知识点(2)

1、具有5个顶点的有向完全图有20条弧。 2、若一个有向图用邻接矩阵表示,则第个结点的入度就是:第i列的非零元素的个数。 3、有向图的邻接矩阵可以是对称的,也可以是不对称的。 4、设N个顶点E条边的图用邻接表存储,则求每个顶点…

正则表达式的捕获组

是正则表达式中的一个重要概念,用于提取字符串中的特定部分 捕获组是通过正则表达式中的圆括号 () 定义的,它的作用是: 划分和标记:将正则表达式的一部分划分为逻辑单元。 提取数据:从字符串中提取符合组内模式的内容…

deepseek-cli开源的强大命令行界面,用于与 DeepSeek 的 AI 模型进行交互

一、软件介绍 文末提供程序和源码下载 deepseek-cli一个强大的命令行界面,用于与 DeepSeek 的 AI 模型进行交互。 二、Features 特征 Multiple Model Support 多模型支持 DeepSeek-V3 (deepseek-chat) DeepSeek-R1 (deepseek-reasoner)Dee…

Java—— 五道算法水题

第一题 需求: 包装类:键盘录入一些1~100之间的整数,并添加到集合中。直到集合中所有数据和超过200为止 代码实现: import java.util.ArrayList; import java.util.Scanner;public class Test1 {public static void main(String[]…

安全编排自动化与响应(SOAR):从事件响应到智能编排的技术实践

安全编排自动化与响应(SOAR):从事件响应到智能编排的技术实践 在网络安全威胁复杂度指数级增长的今天,人工处理安全事件的效率已难以应对高频攻击(如日均万级的恶意IP扫描)。安全编排自动化与响应&#xf…

网络原理 - 9

目录 数据链路层 以太网 以太网帧格式 MAC 地址 DNS(Domain Name System) 完! 数据链路层 这里的内容也是简单了解,除非是做交换机开发,一般程序员不需要涉及~~ 以太网 ”以太网“不是一种具体的网络&#xf…

unity bug

发现一个奇怪的bug,就是某些unity版本打包apk时候不允许StreamingAssets里面有中文文件或者中文路径。比如下图这面这俩都是不行的。 解决方案:中文改为英文即可。 一般报错信息如下: > Configure project :launcher WARNING:The option s…

【Linux网络】打造初级网络计算器 - 从协议设计到服务实现

📢博客主页:https://blog.csdn.net/2301_779549673 📢博客仓库:https://gitee.com/JohnKingW/linux_test/tree/master/lesson 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! &…

计算机视觉——对比YOLOv12、YOLOv11、和基于Darknet的YOLOv7的微调对比

概述 目标检测领域取得了巨大进步,其中 YOLOv12、YOLOv11 和基于 Darknet 的 YOLOv7 在实时检测方面表现出色。尽管这些模型在通用目标检测数据集上表现卓越,但在 HRSC2016-MS(高分辨率舰船数据集) 上对 YOLOv12 进行微调时&…

‌MySQL 事务隔离级别详解

‌ 以下是 MySQL 支持的四种事务隔离级别及其特性,按并发安全性从低到高排列: ‌1. 读未提交 (Read Uncommitted)‌ ‌问题‌: ‌脏读 (Dirty Read)‌:事务可读取其他事务未提交的数据。‌不可重复读 (Non-repeatable Read)‌&am…

如何解决IDE项目启动报错 error:0308010C:digital envelope routines::unsupported 问题

如何解决IDE项目启动报错 error:0308010C:digital envelope routines::unsupported 问题 在现代软件开发过程中,开发人员通常使用集成开发环境(IDE)如IntelliJ IDEA、Visual Studio Code(VSCode)等进行Node.js项目开发…

2025最新Facefusion3.1.2使用Docker部署,保姆级教程,无需配置环境

Docker部署Facefusion 环境 windows10 Facefusion3.1.2 安装 拉取源代码 git clone https://github.com/facefusion/facefusion-docker.git 此处如果拉不下来,需要科学上网,不会的可以找我。 运行容器 将Dockerfile.cpu文件中的的From python:3.…

docker容器监控自动恢复

关于实现对docker容器监控以及自动恢复,这里介绍两种实现方案。 方案1: 实现思路: 找到(根据正则表达式)所有待监控的docker容器,此处筛选逻辑根据docker运行状态找到已停止(Exit)类…