嵌入式开发环境搭建全流程(Win/Linux)
“为什么我写个点灯程序,编译出错、烧录失败、串口没反应?”
别急,你不是不会写程序,可能是环境出了锅。本文将带你从零搭建一套稳定、好用、不掉坑的嵌入式开发环境,适用于 Windows 和 Linux 双平台,涵盖 STM32、ESP32、EFR32 三大主流架构。
🧰 一、开发环境都包含啥?
学嵌入式,所谓“环境”主要包含以下几个部分:
- 编译器工具链(GCC / Keil / IAR / Clang 等)
- 代码编辑器或IDE(VS Code / STM32CubeIDE / Arduino IDE / Simplicity Studio 等)
- 驱动与烧录工具(ST-Link / J-Link / USB驱动)
- 串口终端工具(SecureCRT / PuTTY / MobaXterm / CoolTerm)
- 库/SDK(官方提供的芯片驱动、外设封装)
如果你只是装了一个 IDE,就直接写代码,那不是勇敢,那是赌命 😅
🪟 二、Windows下的嵌入式开发环境搭建
✅ 1. STM32 开发环境搭建(推荐新手)
推荐工具链:
- STM32CubeIDE(ST官方一体化IDE,包含GCC)
- STM32CubeMX(图形化外设配置工具)
- ST-Link驱动
步骤如下:
-
下载 STM32CubeIDE:
👉 https://www.st.com/en/development-tools/stm32cubeide.html -
安装 STM32CubeMX(可选):
可以单独安装,也可以在IDE内集成使用。 -
安装 ST-Link 驱动:
烧录/调试必备:STSW-LINK009 -
安装串口工具:
如:SecureCRT、PuTTY、Tera Term,推荐中文简洁的 MobaXterm。
✅ 测试是否OK:
- 插上开发板(如STM32F103最小系统板)
- 打开CubeIDE,创建工程,编译 & 烧录
- 用串口工具看输出 “Hello STM32”
⚠️ 常见坑提醒:
- 没装ST-Link驱动
- 没选对端口/串口号
- 安装了“中文版路径”导致工程出错
✅ 2. ESP32 开发环境搭建
推荐工具链:
- VS Code + PlatformIO(图形界面好用)
- 或 Arduino IDE(轻量,入门快)
- 官方 ESP-IDF(功能最全)
步骤:
方式A:VS Code + PlatformIO
- 安装 VS Code
- 安装 PlatformIO 插件
- 创建 ESP32 项目,一键配置好工具链
方式B:Arduino IDE
- 安装 Arduino IDE
- 在“首选项”里添加 ESP32 开发板URL:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
- 安装 ESP32 开发板包
- 打开示例代码,选择串口、板子,直接上传
✅ 测试是否OK:
串口打印 “Hello ESP32”,或用手机连Wi-Fi热点看到 ESP32 提供的网页。
✅ 3. EFR32(Silicon Labs)
推荐工具链:
- Simplicity Studio 5(官方推荐)
- Gecko SDK(含BLE/Zigbee栈)
- 安装J-Link驱动(EFR32常用J-Link烧录)
步骤:
-
下载 Simplicity Studio:
👉 https://www.silabs.com/developers/simplicity-studio -
插上开发板或 Debug Adapter,自动识别芯片型号并下载对应SDK(如EFR32BG22)
-
创建 SoC Empty 工程(BLE/Zigbee 等协议支持)
-
下载 J-Link 驱动:https://www.segger.com/downloads/jlink
✅ 测试是否OK:
新建 BLE 项目,烧录后用手机扫描蓝牙广播,能看到“EFR32”设备。
⚠️ 常见坑:
- J-Link驱动不全,烧录失败
- 未安装 Gecko SDK
- 工程名或路径包含中文导致崩溃
🐧 三、Linux 下的搭建流程(Ubuntu为例)
通用建议:
- 所有驱动、工具安装都要加
sudo
- 优先使用官方提供的 .deb 安装包
STM32 on Linux:
-
安装 STM32CubeIDE
.deb
包 -
安装
stlink-tools
(命令行烧录)sudo apt install stlink-tools
ESP32 on Linux:
-
推荐用 ESP-IDF 官方方式搭建
git clone --recursive https://github.com/espressif/esp-idf.git cd esp-idf ./install.sh
-
VS Code 搭配 PlatformIO 也一样可用
EFR32 on Linux:
- Simplicity Studio 支持 Linux
安装.sh
安装脚本(Java环境需预装) - 若使用命令行烧录,安装 SEGGER J-Link Linux驱动
🛠️ 四、你可能还需要的工具清单
工具名 | 用途 | 推荐度 |
---|---|---|
STM32CubeMX | 图形化外设配置 | ⭐⭐⭐⭐ |
PuTTY/MobaXterm | 串口调试 | ⭐⭐⭐⭐ |
ST-Link Utility | 手动烧录、读写芯片 | ⭐⭐⭐ |
J-Link Commander | 命令行烧录调试 | ⭐⭐⭐ |
VS Code + Cortex-Debug | STM32调试神器 | ⭐⭐⭐⭐ |
Logic Analyzer软件 | 抓波形调试利器 | ⭐⭐⭐⭐ |
✅ 五、一键Checklist:我的环境OK了吗?
环节 | 自检提示 | 状态 |
---|---|---|
IDE安装成功 | 可打开并创建工程 | ✅ |
编译无报错 | 能编译出hex/bin文件 | ✅ |
烧录正常 | 板子能运行你的程序 | ✅ |
串口显示正常 | 终端能看到程序输出 | ✅ |
外设能被驱动 | LED闪烁 / 按键响应 / 显示屏正常 | ✅ |
🎉 总结一下
“搭环境不难,难的是全都踩完坑还不放弃。”
但你只要照着本教程来:
- 不装奇奇怪怪工具
- 不跳过驱动和路径检查
- 不强行中文路径和空格文件夹名
你就能:一次搞定,写代码丝滑顺畅!