好的,以下是 STM32F103 和 STM32F401 的主要区别总结(中文):
-
核心处理器 (Core):
- STM32F103: 基于 ARM Cortex-M3 内核。
- STM32F401: 基于 ARM Cortex-M4 内核。这是最根本的区别。
- 意义: M4 内核相比 M3 具有更高的性能和效率,最关键的是 原生集成硬件单精度浮点单元 (FPU)。这使得 F401 在处理复杂的数学运算(如 DSP、电机控制、音频处理)时速度远超 F103(F103 做浮点运算依赖软件模拟,非常慢)。
-
最大工作频率:
- STM32F103: 最高 72 MHz。
- STM32F401: 最高 84 MHz。
- 意义: F401 运行频率更高,结合更高效的 M4 内核,整体性能显著提升。
-
制造工艺:
- STM32F103: 通常采用 130nm 或 90nm 工艺。
- STM32F401: 采用更先进的 90nm 工艺。
- 意义: 更先进的工艺通常意味着更低的功耗(在同等性能下)和更好的集成度。
-
外设功能与性能 (Key Peripherals):
- 高级定时器:
- F103: 通常有 1-2 个高级定时器 (
TIM1,TIM8)。 - F401: 通常有 2 个高级定时器 (
TIM1,TIM8),功能可能更丰富或有细微增强。
- F103: 通常有 1-2 个高级定时器 (
- USB:
- F103: 支持 USB 2.0 Full Speed (FS, 12 Mbps)。
- F401: 支持 USB 2.0 OTG (On-The-Go),既可以作为 Host 也可以作为 Device,并且支持 Full Speed (FS) 和 High Speed (HS)。注意: F401 本身 的 USB PHY 只支持 FS,要实现 HS 需要外接 ULPI PHY 芯片。
- 通信接口 (SPI/I2C/UART):
- F401 的 SPI (
SPI4,SPI5,SPI6) 和 I2C (I2C3) 通常支持更高的通信速率 (SPI: ~42 Mbps vs ~18 Mbps;I2C: ~1 Mbps vs ~400 kHz)。 - F401 UART 数量可能更多或功能略有增强(如支持更多波特率)。
- F401 的 SPI (
- 模数转换器 (ADC):
- F103: 通常是 3 个独立的 12 位 ADC。
- F401: 3 个 12 位 ADC,但支持交错采样模式,可以在某种程度提高等效采样率。
- 数模转换器 (DAC): F103 通常有 2 个 12 位 DAC;F401 没有 集成 DAC。
- 摄像头接口 (DCMI): F401集成了数字摄像头接口 (DCMI),可直接连接并行摄像头传感器;F103 没有。
- 真随机数发生器 (TRNG): F401 集成了硬件 TRNG;F103 没有。
- 串行音频接口 (SAI): F401 可能集成 SAI 接口(用于 I2S/SAI 音频);F103 没有。
- 高级定时器:
-
内存 (Memory):
- Flash (程序存储):
- F103: 常见型号范围 16KB - 512KB(最大 1MB 的稀有型号)。
- F401: 常见型号范围 128KB - 512KB(最大 1MB)。
- SRAM (运行内存):
- F103: 常见型号范围 6KB - 96KB。
- F401: 常见型号范围 64KB - 128KB。
- 意义: F401 的 SRAM 通常更大,对于运行更复杂的程序或缓存数据更有利。Flash 容量两者有重叠,但也有些 F401 型号提供更大的基础容量(如 128KB 起步)。
- Flash (程序存储):
-
功耗:
- F401 得益于更先进的工艺和架构优化,在运行模式 (Run Mode) 和 低功耗模式 (Sleep/Stop/Standby) 下,通常比同频率的 F103 功耗更低,尤其是在使用 FPU 处理浮点任务时(因为 F103 要靠软件模拟,耗时长功耗高)。
-
开发环境与生态系统:
- F103: 极其成熟,资料(书籍、教程、中文社区支持)极其丰富。早期大量使用标准外设库 (SPL),现在也支持 HAL/LL 库和 CubeMX。
- F401: 推荐使用 ST 的 STM32CubeMX 图形化配置工具和 HAL (硬件抽象层) / LL (底层) 库。资料也很多,但相比 F103 的“海量”中文资料,部分深度细节讨论可能相对少一点(不过绝对够用,官方文档完善)。
总结:
| 特性 | STM32F103 (Cortex-M3) | STM32F401 (Cortex-M4) | 主要影响 |
|---|---|---|---|
| 核心 | ARM Cortex-M3 | ARM Cortex-M4 带 FPU | 性能、浮点运算能力 |
| 频率 | 最高 72 MHz | 最高 84 MHz | 处理速度 |
| FPU | 无 (软件模拟) | 有 (硬件单精度) | 浮点计算速度飙升 |
| USB | FS Device (12 Mbps) | OTG FS/HS (需外接 PHY) | 速度、主机/设备模式灵活性 |
| ADC | 3x 12-bit | 3x 12-bit 带交错采样 | 等效采样率提升潜力 |
| DAC | 通常 2x 12-bit (部分型号) | 无 | |
| DCMI | 无 | 有 (摄像头接口) | 图像采集 |
| TRNG | 无 | 有 (真随机数) | 加密安全应用 |
| 通信速率 | SPI ~18 Mbps, I2C ~400kHz | SPI ~42 Mbps, I2C ~1Mbps | 外设通信速度 |
| 内存 (SRAM) | 通常较小 (6KB-96KB) | 通常较大 (64KB-128KB) | 复杂应用运行空间 |
| 功耗 | 相对较高 | 相对较低 (得益于工艺/架构) | 电池供电、低功耗应用 |
| 工艺 | 130nm / 90nm | 90nm | 功耗、集成度 |
| 生态/资料 | 极其丰富 (尤其中文) | 丰富 (官方完善),中文社区资源略少于 F103 | 学习曲线、问题解决 |
选择建议:
- 选 STM32F103 如果:
- 项目需求简单,不需要浮点运算或对浮点速度要求不高。
- 成本极其敏感,且 F103 能满足所有外设要求。
- 需要快速参考大量现成的 F103 代码和解决方案。
- 需要 DAC 功能(除非 F401 外挂 DAC)。
- 选 STM32F401 如果:
- 需要硬件浮点运算 (FPU) 提升性能(DSP、控制算法、图形处理等)。
- 需要更高的处理性能。
- 需要 USB OTG 功能(做主机或高速)。
- 需要连接摄像头 (DCMI)。
- 需要硬件真随机数 (TRNG) 用于加密。
- 需要更大的 SRAM。
- 项目对功耗敏感,需要更低的工作/待机功耗。
- 需要更高的 SPI/I2C 通信速率。
总的来说,STM32F401 是性能更强、功能更现代、能效更好的升级版。除非成本或特定的外设需求(如内置 DAC)成为决定性因素,或者项目非常依赖已有的 F103 成熟方案,否则在新的设计中选择 F401 (或其同系列 M4 产品如 F405/F407) 通常是更优的选择。
ch32v103与stm32f103的区别
ch32v103与stm32f103的区别 Ch32v103与STM32f103是两种不同的芯片,虽然它们都是基于ARM Cortex-M3内核的32位微控制器,但它们在硬件配置、功能、性能等方面
2023-08-22 15:49:00
使用STM32F401的大内存特性
需要使用STM32F401的大内存特性,买了1批STM32F401CCU6. QFN48封装的。随便翻了一下PDF,第一感觉和F103的48脚封装差不太多,于是将F103的板子改了个QFN48的封装
wonick
2021-08-12 07:17:26
STM32F103VET6
2024-04-30 10:50:55
ch32f103和stm32的区别
ch32f103和stm32的区别 STM32 系列是意法半导体公司旗下的 ARM Cortex-M3 和 Cortex-M4 微控制器,系列产品将 MCU 和专用模块集成到单一芯片中,广泛应用
2023-08-22 15:48:42
使用STM32F401时需注意什么
使用STM32F401时需注意:stm32f401的系统库文件配置的晶振频率为25MHz,在外部使用8MHz的晶振是需对其进行修改,修改内容如下:1、修改stm32f4xx.h中的HSE_VALUE
zh咖啡不加糖
2021-08-12 08:10:18
stm32f103 flash模拟eeprom
STM32F103是意法半导体(STMicroelectronics)推出的一款32位单片机系列,该系列芯片具有高性能和丰富的外设接口,广泛应用于工业控制、消费电子、汽车电子等领域。其中
2024-01-09 11:21:36
STM32F103和STM32F107的主要区别有哪些
STM32F103和STM32F107的晶振有何区别?STM32F103和STM32F107的启动文件有何区别?
lancy
2021-10-15 07:58:18
学习STM32F103的ADC功能
三勺最近在学习STM32F103的ADC功能,居然连最简单的独立模式的单通道的电压采集都不能实现,这就不能忍了,这是对智商的侮辱。
2023-10-24 16:06:03
芯片短缺如何用HK32F103换掉STM32F103
本篇笔记主要记录因为芯片短缺,使用HK32F103换掉了STM32F103的过程和注意事项。 准备工作 准备之前的STM32F103工程。 测试准备 芯片更换 因为今年F103的价格炒的飞高,之前用
2021-11-01 14:14:48
STM32F405与STM32F401两个IC的SPI模块有什么区别吗?
当我将相同的代码与带有 SPI1 的 STM32F405 一起使用时,我没有得到正确的结果。相同的代码适用于 STM32F401(SPI2),但不适用于 STM32F405(SPI1)。两个 IC 的 SPI 模块有什么区别吗?
普罗旺斯的薰衣草
2022-12-22 06:59:16
基于STM32F103的三相变频器方案设计
成熟三相变频器方案,基于STM32F103设计开发: 原理图和PCB源文件(AD软件)。 BOM清单 基于STM32F103控制源代码工程文件(keil) 软件硬件设计详细说明 责任编辑:xj 原文
2020-12-07 10:33:38
对GD32F103和STM32F103的区别进行介绍
GD32F103和STM32F103区别介绍关键词Key words:GD32F103、STM32F103摘要Abstract:本文主要是GD32F103和STM32F103区别进行介绍。目录简介
Arvinhw
2022-02-11 06:28:12
怎样使用STM32F103和STM32F401CCU6进行ADC采样
使用STM32F103和STM32F401CCU6对双轴摇杆(两个电压通道)进行ADC采样并通过DMA读取数值STM32 ADC(模数转换)工作模式单次转换模式In Single
小芳
2021-12-13 06:19:44
STM32F103RCT6
2024-04-30 10:43:57
灵动微MM32F3277可替换意法半导体STM32F103
意法半导体STM32F103微控制器使用Cortex-M3内核,CPU最高速度为72兆赫兹。该产品组合涵盖16 KB到1MB的闪存,带有电机控制外设、USB全速接口和CAN。灵动微MM32F3277系列可兼容替换意法半导体STM32F103。
2021-09-22 14:51:07
基于STM32F103单片机设计
情况,基于STM32F103单片机设计一个数字电压表仿真设计。该设计应满足的功能要求为: 1、以STM32单片机为控制核心设计数字电压表; 2、可以测量0~3.3V输入电压值; 3、液晶屏LCD1602
2023-09-10 09:53:04
STM32CubeIDE下配置STM32F103输出带死区的互补PWM波
STM32F103的TIM1和TIM8是高级定时器,可以产生嵌入死区时间的互补PWM波,使用STM32CubeIDE完成相关配置,可以直接生成代码,输出带死区的PWM波。
2023-11-01 09:41:07
关于ST stm32f103zet6与stm32f103rct6的区别
1、STM32F系列属于中低端的32位ARM微控制器,该系列芯片是意法半导体(ST)公司出品,其内核是Cortex-M3。 其中STM32F系列有:1)STM32F103“增强型”系列 2
2023-03-16 12:42:22
怎样将STM32F103工程移植成STM32F107工程呢
STM32F107与STM32F103有何区别?怎样将STM32F103工程移植成STM32F107工程呢?
jack_study
2021-10-27 08:07:01