首页 > 解决方案 > 使用 DJI OSDK 时代码不执行我的主要功能

问题描述

我有一个在 RPi 上运行的带有 OSDK 的 N3。我能够毫无问题地运行遥测样本。但是,当我尝试制作自己的程序时,该程序不会执行我的主要功能。

我使用 CMAKE 构建程序,就像提供的示例一样。但是,该示例运行良好,但我的在进入主要功能之前就停止了。有谁知道为什么会发生这种情况?我错过了什么吗?

这是我的程序的输出:

argv[1] = UserConfig.txt
Read App ID
User Configuration read successfully. 


STATUS/1 @ init, L56: Attempting to open device /dev/ttyAMA0 with baudrate 230400...

STATUS/1 @ init, L66: ...Serial started successfully.

STATUS/1 @ parseDroneVersionInfo, L762: Device Serial No. = [redacted]

STATUS/1 @ parseDroneVersionInfo, L764: Hardware = N3

STATUS/1 @ parseDroneVersionInfo, L765: Firmware = 3.2.36.8

ERRORLOG/1 @ initVirtualRC, L1188: Virtual RC is not supported on this platform!

STATUS/1 @ activate, L1398: version 0x3022408

STATUS/1 @ activate, L1411: Activation successful

STATUS/1 @ verify, L247: Verify subscription successful.
STATUS/1 @ initGimbal, L926: Checking if gimbal is connected ...
STATUS/1 @ startPackage, L353: Start package 0 result: 0.
STATUS/1 @ startPackage, L355: Package 0 info: freq=50, nTopics=1.

STATUS/1 @ removePackage, L471: Remove package 0 successful.
STATUS/1 @ initGimbal, L970: Gimbal not mounted!

STATUS/1 @ reset, L570: Reset Subscription Successful.

标签: dji-sdk

解决方案


更正,我已将我的 CMAKE 文件从另一个目录复制到我的新项目目录中。这导致 CMakeCache 链接到旧目录并正在执行旧代码。

我更新了 CMakeCache 以包含新项目的目录,一切正常。

留下这个,以防有人也犯了这个错误。


推荐阅读