登录/注册

嵌入式开发常用工具

更多

好的,嵌入式开发领域庞大且技术栈多样,以下是一些最常用的开发工具,按类别组织并用中文说明:

一、编程语言与编译器

  1. C/C++编译器套件: 这是嵌入式开发的绝对核心。

    • GCC & G++ (GNU Compiler Collection): 开源标杆,支持极多的处理器架构(如ARM、RISC-V、AVR、MIPS等),通过交叉编译工具链使用。例如:arm-none-eabi-gcc, riscv-none-embed-gcc
    • Keil MDK-ARM (Microcontroller Development Kit): ARM官方推荐的商业集成开发环境(IDE)之一,内含ARM自家的Armcc/Armclang编译器(ARM Compiler),广泛用于Cortex-M系列MCU开发。
    • IAR Embedded Workbench: 另一款强大的商业IDE和编译器提供商(IAR C/C++ Compiler),以其优秀的代码优化和跨平台支持著称,支持多种架构。
    • LLVM/Clang: 日益流行的开源编译器前端/框架,性能高,模块化好,在嵌入式领域的应用也在快速增长(常作为GCC的替代或补充)。
    • Arm Compiler for Embedded: ARM提供的专业编译器(以前称为DS-5 Development Studio中的部分),提供高性能代码生成。
    • Lauterbach TRACE32: 强大的商业开发/调试工具链,也包含其自己的高性能编译器。
  2. 汇编器: 用于编写和优化底层代码(启动代码、中断向量表、极致优化等)。通常包含在上述编译器套件中(如GNU as, Arm armasm)。

  3. 链接器: 将编译后的目标文件和库文件组合成最终的可执行映像(通常是.elf, .hex, .bin格式)。通常包含在上述编译器套件中(如GNU ld, Arm armlink)。

  4. Python: 日益重要的辅助语言,用于编写构建脚本自动化测试脚本通信协议模拟数据处理调试辅助工具等。

二、集成开发环境

  1. Keil MDK-ARM: 集成编辑器、编译器、调试器、工程管理、RTOS支持等,界面相对传统,ARM Cortex-M生态最流行之一。
  2. IAR Embedded Workbench: 功能强大,界面现代,优化出色,支持多种架构(ARM、RISC-V、AVR、MSP430等)。
  3. Eclipse CDT: 开源、强大的可扩展IDE框架。很多基于Eclipse的发行版广泛用于嵌入式,如:
    • STM32CubeIDE: ST官方基于Eclipse,免费,专为STM32设计,集成CubeMX配置工具。
    • NXP MCUXpresso IDE: NXP官方基于Eclipse,免费。
    • TI Code Composer Studio: TI官方基于Eclipse,免费。
  4. Visual Studio Code (VSCode): 极其流行的轻量级编辑器。通过丰富的插件(如C/C++扩展、Cortex-Debug、PlatformIO、J-Link插件、RISC-V支持插件等)变身为强大的IDE。跨平台(Windows, Linux, macOS)。
  5. JetBrains CLion: 商业C/C++ IDE,提供优秀的代码智能提示、重构和调试功能,通过插件支持嵌入式开发(需要配合OpenOCD/J-Link/GDB服务器等调试器)。
  6. PlatformIO: 开源生态系统,基于VSCode(或Atom、CLion插件),简化跨平台嵌入式开发,支持海量开发板和框架,内置构建工具和库管理。

三、调试器

  1. JTAG/SWD调试器: 硬件接口,用于下载代码、单步执行、设置断点、查看/修改变量/寄存器/内存。

    • J-Link系列: SEGGER公司的标杆,支持极广的芯片和接口,速度快,功能强大。
    • ST-LINK系列: STM32开发板自带或独立调试器,经济实惠(特别是ST板载的),对ST产品支持好。开源克隆版本也多。
    • CMSIS-DAP: ARM定义的标准接口协议的开源实现(例如LPC-Link II, ARM的ULINK2等)。
    • OpenOCD: 开源的片上调试器软件,驱动多种USB-JTAG适配器硬件(FTDI芯片的、CMSIS-DAP兼容的、J-Link克隆版等)。通常与GDB配合使用。
    • DAPLink: 由ARM推动的开放式硬件调试标准,整合了USB MSD(拖拽下载)、CDC(串口)、HID(调试接口,兼容CMSIS-DAP),常见于很多开发板上。
    • J-Link OB (On-Board): 类似DAPLink的概念,J-Link授权厂商在开发板上集成精简版的J-Link调试功能。
  2. 调试代理 (GDB Server):

    • GDB: GNU调试器,是命令行调试的标准,也是很多IDE调试功能的底层支撑。
    • OpenOCD: 也作为GDB Server运行,连接调试器和目标板,提供GDB调试接口。
    • SEGGER J-Link GDB Server: J-Link专属的高性能GDB Server。
    • pyOCD: 基于Python的开源调试工具,支持CMSIS-DAP调试器(包括许多DAPLink板载调试器)和部分J-Link,提供GDB Server接口,支持Python脚本化调试。
  3. 逻辑分析仪: 用于捕获和分析硬件总线(如SPI, I2C, UART, GPIO)上的数字信号,调试时序问题和通信协议问题。

    • Saleae Logic: 流行的商业硬件和软件,用户体验好。
    • Sigrok / PulseView: 开源项目,支持多种硬件(如Digilent Digital Discovery, Saleae克隆版等)。
  4. 串口调试工具: 通过UART与目标板通信,输出调试信息(printf调试法)、发送命令。

    • PuTTY / Tera Term / Minicom / Screen: 跨平台的串口终端软件。
    • RealTerm / Docklight: 提供更高级的串口数据分析功能(如数据包解析、脚本)。

四、版本控制与构建系统

  1. Git: 绝对主流的分布式版本控制系统(如GitHub, GitLab, Bitbucket)。
  2. Subversion: 在某些传统嵌入式项目中仍有使用(集中式)。
  3. Make: GNU Make是最常用的构建自动化工具,通过Makefile描述构建规则。
  4. CMake: 跨平台的构建系统生成器,可生成Makefile、Ninja、Visual Studio工程、Keil/IAR工程文件等。在现代嵌入式项目中越来越普遍。
  5. Ninja: 专注于速度的小型构建系统,常由CMake生成其构建脚本build.ninja
  6. Meson: 新兴的构建系统生成器,语法更现代,集成度高,也常生成Ninja文件。

五、硬件相关工具

  1. 万用表: 测量电压、电流、电阻等基本参数。
  2. 示波器: 测量电压随时间变化的波形,调试模拟信号、数字信号时序、电源噪声等。
  3. 电源供应器: 为开发板和被测电路提供稳定可控的电压。
  4. 焊接工具: 烙铁、热风枪、焊锡、助焊剂,用于焊接元器件、连接器。
  5. 开发评估板: 芯片厂商提供的标准开发平台,用于快速评估和原型开发。

六、测试与分析工具

  1. Wireshark: 强大的网络协议分析器,也支持解析串口、USB、CAN等协议。
  2. Cantact/PCAN/USBtin: CAN总线分析工具(硬件+软件)。
  3. FreeRTOS+Trace / Percepio Tracealyzer: 用于可视化和分析RTOS任务行为、调度、资源使用情况。
  4. SystemView: SEGGER提供的实时系统可视化分析工具。
  5. Valgrind: Linux主机端强大的内存分析工具(如memcheck, callgrind),常用于开发和初步测试(特别是运行在嵌入式Linux上的应用)。
  6. 单元测试框架: 如CppUTest, Unity, Google Test (gtest) 用于编写和运行软件模块的单元测试。

七、文档与支持工具

  1. Doxygen: 根据源代码注释自动生成API参考文档。
  2. 芯片参考手册: 由半导体厂商提供,深入了解芯片细节。数据手册提供关键电气参数。
  3. 开发板用户手册/原理图: 了解硬件设计细节。
  4. 文本编辑器(通用型): Vim, Emacs, Sublime Text, Notepad++,用于查看代码、配置文件等。

关键点总结

选择工具时,芯片厂商(NXP, ST, TI等)提供的官方工具套件和评估板通常是最容易上手的起点。随着项目深入和技能提升,开发者往往会转向开源或商业的通用强大工具,以获得更灵活高效的工作流。

盘点工程师常用嵌入式开发工具

嵌入式开发涉及硬件与软件的紧密结合,开发工具的选择对效率和质量至关重要。以下是嵌入式开发中

2025-02-07 10:06:56

嵌入式软件开发常用工具有哪些?

分享一些嵌入式软件开发常用工具。 1、Keil MDK:这是德国Keil公司开发

2023-11-10 11:03:04

单片机常用工具

单片机常用工具

2023-10-13 06:16:12

嵌入式Linux系统开发实验分享

本实验为验证性实验,其目的是了解嵌入式 Linux 开发的交叉开发模式;掌握嵌入

资料下载 吐个泡泡er 2022-05-09 14:43:44

嵌入式开发培训学什么?嵌入式开发板知识讲解

嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有WinCE,

资料下载 李娜 2021-11-02 20:21:03

嵌入式开发资料免费分享

嵌入式开发资料免费分享嵌入式工程师经验分享:如何学习嵌入式开发截取文档部分学习嵌入式

资料下载 佚名 2021-10-21 11:07:55

嵌入式开发(一):嵌入式开发新手入门

本篇文章整理下嵌入式开发中一些入门的基础技能,都是根据以往的工程经验整理,适用于之前没做过嵌入式开发的新手。嵌入式开发流程一般如下,一般是在PC

资料下载 佚名 2021-10-14 10:58:31

电工常用工具仪表的使用

电工常用工具仪表的使用说明。

资料下载 姚小熊27 2021-03-18 11:48:28

OpenHarmony常用工具汇总

OpenHarmony 开发过程中我们一定会面对各种开发问题,比如如何看 log,如何看系统状态,如何调试,等等。本章内容就是总结一些常用工具。

2023-01-04 12:02:00

Fibocom 常用工具分享

Fibocom 常用工具分享串口调试器SSCOM,链接如下*附件:串口调试器SSCOM.rarUSB转TTL串口监测工具-CH340驱动,链接如下*附件:CH340驱动(USB串口驱动)_XP_WIN7共用.rarU

2022-12-01 15:32:35

嵌入式开发工具使用

嵌入式开发工具使用一.实验目的二.实验内容三.预备知识四.实验设备及工具(包括软件调试工具)五.实验步骤5.1 交叉编译

2021-10-28 09:43:20

修理电机常用工具和设备

修理电机常用工具和设备有哪些?下面就跟小编一起来看看吧!

2021-07-20 09:50:38

嵌入式开发中的几种常用工具介绍

嵌入式开发中常用的虚拟机与容器 1.本文说明 2.VMware Workstatio 2.Oracle VM VirtualBox 3.window10 中的WSL2 Linux子系统

2021-04-02 10:05:07

嵌入式开发的产品有哪些_嵌入式开发的流程

本文主要阐述了嵌入式开发的产品,其次介绍了嵌入式开发的流程。

2020-08-31 15:38:26

嵌入式开发常用工具软件

嵌入式开发中那些常用的工具软件

2020-01-14 17:00:30

7天热门专题 换一换
相关标签