0

0

0

修罗

站点介绍

只有了解事实才能获得真正的自由

STM32概述

修罗 2025-08-08 633 5条评论 stm32

首页 / 正文

STM32概述

1.1 关于ARM内核

​ ARM 是一家英国的半导体与软件设计公司(Arm Holdings),ARM 于 2016 年已被软银收购,至今仍由软银控股。

​ ARM的产品主要是ARM架构处理器及相关外围组件的电路设计方案,卖的是知识产权授权,就是只卖方案不买具体产品,其他公司可以拿到ARM的方案设计产品卖钱,分钱给ARM,ARM躺着赚钱。

​ 几乎所有的移动端处理器都采用ARM授权方案设计,包括苹果、高通、华为、三星、联发科、紫光展锐。

ARMv1 架构的设计可以追溯到 1984 年,2004年发布ARM11;如今放弃数字命名,用cortex命名处理器产品:

系列定位典型应用
Cortex-A 系列高性能手机、平板、智能电视等
Cortex-R 系列实时汽车、工业控制、医疗设备等
Cortex-M 系列嵌入式传感器、智能家居等

1.2 什么是STM32

​ 意法半导体(STMicroelectronics,简称ST)集团于1987年成立,是由意大利的SGS微电子公司和法国Thomson半导体公司合并而成。ST是世界最大的半导体公司之一。

​ STM32是ST公司设计的一系列以ARM Cortex-M为核心的32位微控制器,在如今的 32 位控制器当中,STM32大受工程师和市场的青睐,无芯能出其右:

image-20250808141904389.png

1.3 STM32应用场景

STM32内其灵活性和强大的处理能力,在众多领域都有广泛应用。

物联网(IoT)
智能农场管理系统,使用STM32控制传感器收集环境数据并通过无线网络发送到云端进行处理。

工业自动化
用于制造业中的自动化装配线,STM32控制机器人臂的精确移动和操作。

汽车电子
在高级驾驶辅助系统(ADAS)中,STM32用于处理车辆周围环境的实时数据,提高驾驶安全。

消费电子
在智能手表中,STM32处理各种传感器数据,提供健康追踪、消息通知等功能。

医疗设备
可穿戴心率监测设备,使用STM32进行实时数据处理和分析,监控患者心脏健康状况。

1.4 STM32系列MCU命名规则

系列:F、051、R、8T、6、X、XX

image-20250808142730405.png

1.5 STM32开发方式

目前STM32开发有三种方式

  1. 直接基于寄存器开发√

    优点:代码执行效率高、对硬件理解深入、更换其他芯片上手快;

    缺点:开发效率低、代码移植不方便;

  2. 基于标准库函数开发 ×

    优点:相比寄存器开发效率高、相比寄存器开发难度降低、相比寄存器开发移植容易;

    缺点:屏蔽了一下硬件信息,不利于从底层构建认知、官方已经停止对标准库的更新,新的芯片已经不提供标准库;

  3. 基于HAL库函数开发√

    优点:ST主推,支持力度大、开发工具持续更新、开发难度相比前面两种大大降低移植极其容易;

    缺点:屏蔽几乎所有硬件信息、当迁移到其他MCU设备时,一切都要重新学习;

1.6 开发工具选择

  1. Keil MDK (老牌) 收费
    目前国内主流的单片机开发工具,历史悠久,调试功能强大,网上资料多款通用的IDE,兼容市面上大部分单片机。代码编辑能力比较弱,代码联想功能贼差。
  2. IAR (老牌) 收费
    也是目前国内主流的STM32开发工具,兼容大多数单片机,代码编编辑能力不好用。
  3. STM32CubeIDE (ST官方推出) 免费
    ST官方软件,对STM32开发很友好。基于Eclipse工具链,界面更现代化。仅限STM32,不支持其他厂家单片机。相对Keil更耗电脑CPU资源
  4. Clion (工具新星) 收费

    Jetbrains系的IDE,近几年才推出的针对STM32的开发工具,目前使用的人还不是那么多。

怎么选?

​ 使用Keil+Vscode 配合开发,Keil负责编译下载调试,Vscode负责编码;

​ HAL库的使用会用到STM32CubeMX,进行图形化配置;

评论(5)

  1. 1 游客 2025-09-01 11:27 回复

    1

  2. 1 游客 2025-09-01 12:11 回复

    1

  3. @@aHBwj 游客 2025-09-01 12:12 回复

    1

  4. 1 游客 2025-09-01 12:14 回复

    1

  5. 1 游客 2025-09-01 12:15 回复

    -1 OR 2+754-754-1=0+0+0+1 --


最新评论

  • 1

    1

  • 1

    1

  • -1' OR 2+158-158-1=0+0+0+1 or 'TKCTZnRa'='

    1

  • 1

    1

  • 1

    1

  • 1

    1

  • 1

    1

  • @@5Qa2D

    1

  • 1

    1

  • 1

    1

日历

2025年09月

 123456
78910111213
14151617181920
21222324252627
282930    

文章目录

推荐关键字: Linux webpack js 算法 MongoDB laravel JAVA jquery javase redis