嵌入式系统开发 需要的环境配置

嵌入式开发的环境配置取决于"目标芯片/板卡"和"操作系统(或无OS)"。以下是通用核心组件 + 分场景清单,你按需选一条路线即可。


🧱 一、所有路线都需要的"基础设施"

  1. 交叉编译工具链(最重要)

    • 例如 ARM: gcc-arm-none-eabi(MCU/裸机)、arm-linux-gnueabihf-*(Linux应用)

    • RISC-V: riscv64-unknown-elf-gcc/ riscv64-unknown-linux-gnu-gcc

  2. 调试/烧录工具

    • 硬件:J-Link、ST-Link、DAPLink、FTDI串口模块等

    • 软件:OpenOCD、pyOCD、J-Link GDB Server

  3. IDE / 编辑器 + 构建系统

    • IDE:VS Code + Cortex-Debug / PlatformIO;或商业 IDE(Keil、IAR、SEGGER Embedded Studio)

    • 构建系统:CMake(推荐)、Makefile;RT-Thread/BSP 常用 scons/env.py

  4. 目标板通信

    • 串口/UART:minicom/screen(mac/Linux)、MobaXterm/PuTTY/WindTerm(Windows)

    • 网络:SSH/Telnet、TFTP/NFS(若跑 Linux)

  5. 工程基建(强烈建议尽早引入)

    • Git + 合适的分支策略(如 main/dev/feature)

    • 包/依赖管理:虽不如 Web 成熟,但可用 Conan/vcpkg/manual vendor SDK


📍 二、按常见路线快速选配

A. STM32/Cortex-M MCU(裸机/FreeRTOS)

  • 工具链:arm-none-eabi-gcc+ libnewlib-nano

  • 调试:ST-Link/V2/V3 + OpenOCD

  • 固件库/框架:STM32CubeMX/LL/HAL,或 libopencm3/ch32v003-hal 等裸写寄存器方案

  • VS Code 插件:C/C++、Cortex-Debug、HexView

B. 嵌入式 Linux(树莓派/IMX6ULL/RK3568 等)

  • 工具链:对应 SoC 的 Linaro/SDK 预编译链(如 arm-linux-gnueabihf-

  • 构建:Buildroot/Yocto/OpenWrt(做根文件系统);内核用 Kbuild

  • 调试:gdbserver 远程 attach、strace/perf/valgrind 定位问题

  • 部署:scp/rsync/nfs;uboot/tftp 启动调试

C. RISC-V MCU(GD32V/ESP32-C3/K210 等)

  • 工具链:SiFive/平头哥/官方 SDK 提供的 riscv-none-elf 或 riscv64-unknown-elf

  • 调试:ft2232h/openocd/jtag 适配;部分开发板自带 USB-JTAG

  • IDE:VS Code + RISC-V 插件;PlatformIO 对 ESP32-C3 开箱即用


⚡ 三、STM32F103 最小可运行示例(Ubuntu/WSL/macOS)

复制代码
# 安装工具链 & openocd
sudo apt install gcc-arm-none-eabi openocd

# 获取代码模板(带 Makefile+linker script)
git clone --depth 1 https://github.com/STMicroelectronics/STM32CubeF1.git
cd STM32CubeF1/Projects/YourBoard/Example

# 编译(确保 Makefile 里 CC=arm-none-eabi-gcc)
make -j$(nproc)

# 连接 ST-Link,openocd 监听 gdb
openocd -f interface/stlink.cfg -f target/stm32f1x.cfg

✅ 四、怎么选更省心?

告诉我:芯片型号/板子名(如 STM32F407、树莓派 CM4) ​ + 是否跑 Linux ​ + 你最习惯的系统(Win/Mac/Ubuntu),我可以给你一套"复制粘贴就能跑通"的命令清单和目录结构。

相关推荐
hai3152475431 小时前
RISC-V核E203核前向旁路的架构性顽疾
驱动开发·架构·硬件架构·硬件工程·risc-v
hai3152475431 小时前
RISC-V CVA6 AXI适配器+DMA桥蜂鸟E203处理器的总线接口单元(BIU)仲裁器
驱动开发·fpga开发·硬件架构·硬件工程·精益工程
崇山峻岭之间4 小时前
单片机LCD实验
单片机·嵌入式硬件
m0_377108145 小时前
STM32-adc
stm32·单片机·嵌入式硬件
【云轩】6 小时前
如何设计一台能模拟电机的电子负载:一个硬件工程师的实战笔记
笔记·嵌入式硬件
SmartRadio6 小时前
STM32WLE5 LoRa Smart TDMA 完整协议栈实现(工程级可直接编译)-【1】
javascript·stm32·单片机·嵌入式硬件·lora·自组网·smart tdma
上海合宙LuatOS7 小时前
Air8000多网通信- Netdrv
物联网·luatos·多网融合
rrrr31239 小时前
Nanya(南亚科技)DRAM芯片选型详解
硬件工程
TDengine (老段)10 小时前
TDengine WAL 预写日志机制 — 持久性保障与崩溃恢复
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
Geometry Fu10 小时前
《物联网安全》第3.1章 RFID安全
物联网·安全·rfid