# Visual Studio Code IDE (VSCode)

Visual Studio 代码 (打开新窗口) 是一款功能强大的跨平台源代码编辑器/IDE,可用于 Ubuntu 18.04 LTS 和 macOS 上的 PX4 开发(即将支持 Windows)。

在 PX4 开发中使用 VSCode 有很多原因:

  • 设置 的确 只需几分钟。
  • 丰富的扩展生态系统可提供 PX4 开发所需的大量工具:C/C++(具有坚实的 cmake 整合)、 Python, 金沙2、ROS 信息,甚至 UAVCAN dsdl。
  • 出色的 Github 集成。

本主题介绍如何设置集成开发环境并开始开发。

备注

还有其他功能强大的集成开发环境,但要将它们与 PX4 集成,通常需要花费更多精力。使用 VScode配置存储在 PX4/PX4-Autopilot 树 (PX4-Autopilot/.vscode (打开新窗口)因此,设置过程就像添加项目文件夹一样简单。

# 先决条件

您必须已经安装了命令行 PX4 开发人员环境 为您的平台下载 固件 源代码库。

# 安装和设置

  1. 下载并安装 VSCode (打开新窗口) (您将获得适合您操作系统的正确版本)。

  2. 打开 VSCode 并添加 PX4 源代码:

    • 选择 打开文件夹 ... 欢迎页面上的选项(或使用菜单: 文件 > 打开文件夹): 打开文件夹
    • 将出现文件选择对话框。选择 PX4-自动驾驶仪 目录,然后按 好的.

    然后,项目文件和配置将加载到 VSCode.

  3. 新闻 全部安装该工作区有扩展建议 提示(将出现在集成开发环境的右下方)。 安装扩展程序

    VSCode 将打开 扩展 左侧的面板,以便您可以查看安装进度。

    将 PX4 载入 VSCode Explorer

  4. 右下角可能会出现一些通知/提示信息

    TIP

    如果提示消失,请单击底部蓝条右侧的小"警报"图标。

    • 如果提示安装新版本的 cmake:
    • 如果提示登录 github.com 并添加您的证书:
      • 这取决于你!它提供了 Github 和集成开发环境之间的深度集成,可以简化你的工作流程。
    • 其他提示是可选的,如果有用,也可以安装。

# 建造 PX4

要建设

  1. 选择构建目标("cmake build config"):
    • 目前的 cmake build target 显示在蓝色 配置 底部的栏(如果这已经是您想要的目标,请跳至下一步)。 选择 Cmake 构建目标

      备注

      您选择的 cmake 目标会影响当 构建/调试 (例如,要进行硬件调试,必须选择一个硬件目标,如 px4_fmu-v5).

    • 单击配置栏上的目标以显示其他选项,然后选择您想要的选项(这将替换任何已选目标)。

    • Cmake 然后将配置您的项目(见右下角的通知)。 Cmake 配置项目

    • 等待配置完成。完成后,通知将消失,您将看到构建位置: Cmake 配置项目.

  2. 然后,您可以在配置栏中启动构建(选择 建设调试). 运行调试或构建

至少构建一次后,您就可以使用 [代码自动补全](#代码自动补全) 和其他 VSCode 特点

# 调试

# SITL 调试

在 SITL 上调试 PX4:

  1. 选择侧边栏上的调试图标(红色标记),显示调试面板。 运行调试

  2. 然后选择调试目标(例如 调试 SITL(Gazebo Iris)) 从顶栏调试下拉菜单(紫色方框)中选择。

    备注

    提供的调试目标(紫色方框)与构建目标(底部栏的黄色方框)相匹配。例如,要调试 SITL 目标,您的构建目标必须包含 SITL。

  3. 单击调试"播放"箭头(顶部栏中调试目标旁边的粉色框)开始调试。

在调试过程中,你可以设置断点、跳过代码,也可以像正常一样进行开发。

# 硬件调试

中的说明 SWD 调试端口 解释如何连接常见飞行控制器上的 SWD 接口(例如,使用 Dronecode 或 Blackmagic 探头)。

连接到 SWD 接口后,在 VSCode 中进行硬件调试的方法与以下相同 SITL 调试 但您必须选择适合您的调试器类型(和固件)的调试目标,例如 jlink (px4_fmu-v5).

TIP

查看 jlink 选项时,您必须选择了 用于构建固件的 cmake 目标.

显示硬件目标和不同探头选项的图片

# 完成代码

为了让代码自动补全功能(以及其他 IntelliSense 功能)正常工作,您需要激活配置,并拥有 创建了代码.

输入完成后,您无需再做其他任何操作;工具链会在您输入时自动为您提供符号。

IntelliSense

# 故障排除

本节包括有关设置和构建错误的指导。

# Ubuntu 18.04:"Visual Studio Code 无法在此大型工作区中查看文件更改";

该错误会在启动时出现。在某些系统中,应用程序的文件句柄上限为 8192 个,这意味着 VSCode 可能无法检测到以下文件中的文件修改 /PX4-自动驾驶仪.

您可以增加这一限制来避免错误,但要以消耗内存为代价。请按照 此处的说明 (打开新窗口).65536 的值应该足够了。