STM32、ESP32、Arduino、单片机和树莓派之间的关系

Posted by KalosAner on January 12, 2025

微控制器

首先介绍一下微控制器,微控制器(MCU,Microcontroller Unit)是一种嵌入式系统的核心器件,通常集成了中央处理器(CPU)、存储器(RAM和ROM)、输入输出接口(I/O)以及外设(如定时器、串口、ADC/DAC等),是一个高度集成的小型计算机,通常可以独立运行程序。

单片机

单片机,又名单片微控制器,是一种在单个芯片上集成了处理器、存储器和输入/输出接口的微型计算机。通常用于简单的控制任务,如传感器数据的采集和处理。

单片机通常没有操作系统(或运行的是简单的实时操作系统,例如RTOS),这是因为它设计的初衷是低功耗、低成本和特定任务处理,程序是直接运行在硬件上的。程序的主函数(main())会从单片机复位后直接开始执行,所有的功能都由程序设计来实现。

Snipaste_2025-01-12_20-30-25

图示是一个具有40个引脚的单片机,其内部集成了 CPU、存储器和输入/输出接口等,有的微型计算机可以根据需要更换电路板上的CPU、存储器和输入/输出接口部件,从而提升性能和扩展功能;而单片机是无法更换CPU、存储器和输入/输出接口的(因为它们都做在一块集成电路内部),如果要进行复杂的控制,可以选用功能强大的单片机。

STM32、ESP32

STM32 和 ESP32 都是单片机,在本质上没有区别,但是功能和性能不同。

Arduino

Arduino是一个开源的电子原型平台,包含硬件(开发板)和软件(Arduino IDE)。硬件中包含微控制器,一般是基于 AVR 微控制器或者 ARM 微控制器,比普通的单片机性能更好,也有包含 ESP32 的单片机。

树莓派

树莓派是一个低成本的小型单板计算机(SBC),可以运行Linux系统。单板计算机(SBC)和单片机类似,是一种将 处理器(CPU)、内存(RAM)、存储(如 SD 卡或 eMMC)、输入输出接口(I/O)、电源管理等 集成在单一电路板上的计算机。

总结

特性 STM32 ESP32 Arduino 单片机 树莓派
类型 微控制器 微控制器 开发平台 硬件核心 单板计算机
主控芯片 ARM Cortex-M Xtensa LX6/LX7 AVR/ARM/ESP32 8051/ARM等 Broadcom SoC
系统 无操作系统(裸机/RTOS) 无操作系统(裸机/RTOS) 无操作系统 无操作系统(裸机/RTOS) Linux
应用范围 工业/高性能控制 物联网 教育/创客 广泛嵌入式应用 教学/边缘计算
开发难度 中等 依种类而定
实时性 较低