DJI Core
PSDK Core相关功能的头文件为dji_core.h
,本文档描述了dji_core.h
文件中结构体和函数原型的关键信息和使用方法。
目录
宏定义、枚举与结构体
函数原型
DjiCore_Init
DjiCore_SetAlias
DjiCore_SetFirmwareVersion
DjiCore_SetSerialNumber
DjiCore_ApplicationStart
DjiCore_DeInit
宏定义、枚举与结构体
typedef struct T_DjiUserInfo
本结构体用于描述基于PSDK开发的负载的信息。
说明: 请确认Name、ID 和 Key等信息与开发者网站一致。更多信息请查看用户中心。
typedef struct {
char appName[32]; /*!< 指定 DJI SDK 应用名称。 该信息可通过登录开发者网站 https://developer.dji.com/user/apps/#all 获取。 以“\0”结尾。 */
char appId[16]; /*!< 指定 DJI SDK 应用 ID。 该信息可通过登录开发者网站 https://developer.dji.com/user/apps/#all 获取。*/
char appKey[32]; /*!< 指定 DJI SDK 应用密钥。 该信息可通过登录开发者网站 https://developer.dji.com/user/apps/#all 获取。 */
char appLicense[512]; /*!< 指定 DJI SDK 应用证书. 该信息可通过登录开发者网站 https://developer.dji.com/user/apps/#all 获取。 */
char developerAccount[64]; /*!< 指定 DJI SDK 开发者账号邮箱。 该信息可通过登录开发者网站 https://developer.dji.com/user/apps/#all 获取。 开发者账号等相关信息需要能够对应。 以“\0”结尾。 */
char baudRate[7]; /*!< 指定 DJI SDK 通信串口波特率。*/
} T_DjiUserInfo;
函数原型
function DjiCore_Init
功能:初始化 Payload SDK 内核。 | product:all |
以阻塞模式初始化 Payload SDK 内核。
说明:
- 这个接口的调用位置需要特别注意,需要在console/OSAL handler函数/HAL handler函数注册完成后调用。 同时,必须在调用其他功能模块接口开始时进行初始化。 您需要正确填写开发者信息,以确保初始化成功。 如需更多说明,请参阅教程“PSDK 初始化”。
- 该函数在获得正确的飞行器类型和 PSDK 适配器类型之前不会返回。 该逻辑保证飞行器和PSDK适配器在PSDK功能模块和用户程序运行前已经正常启动。 该函数的一般执行时间为 2~4 秒。
T_DjiReturnCode DjiCore_Init(const T_DjiUserInfo *userInfo);
userInfo: 指向 PSDK 应用程序信息的指针。
返回值
根据程序执行的情况输出对应的返回值,详情请参见:DjiErrorCode
function DjiCore_SetAlias
功能:为 DJI 应用或产品设置一个满足条件的别名。 | product:all |
别名将在 DJI Pilot 中显示(如果存在)。
说明:
- 仍然需要将从 DJI SDK 开发者网站获取的正确的 DJI APP 名称传递给 DjiCore_Init() 接口。 DJI APP 名称将用于绑定或验证。
- 别名会在一段时间后生效,最大值为1s。
T_DjiReturnCode DjiCore_SetAlias(const char *productAlias);
productAlias: 指向产品别名字符串的指针,别名以 '\0' 结尾。 字符串的最大长度为 31。如果别名字符串的长度大于 31,别名字符串将被截断并传入。
返回值
根据程序执行的情况输出对应的返回值,详情请参见:DjiErrorCode
功能:为 DJI 应用或产品设置一个自定义的固件版本。 | product:all |
Note: 负载固件版本会始终显示在 DJI Pilot 负载设置界面上。
T_DjiReturnCode DjiCore_SetFirmwareVersion(T_DjiFirmwareVersion version);
version:设置的自定义的固件版本
返回值
根据程序执行的情况输出对应的返回值,详情请参见:DjiErrorCode
功能:为 DJI 应用或产品设置一个自定义的序列号。 | product:all |
Note: 负载自定义序列号会始终显示在 DJI Pilot 负载设置界面上。
T_DjiReturnCode DjiCore_SetSerialNumber(const char *productSerialNumber);
productSerialNumber:自定义的序列号,需要小于 32 字节
返回值
根据程序执行的情况输出对应的返回值,详情请参见:DjiErrorCode
function DjiCore_ApplicationStart
功能:通知 Payload SDK 核心应用程序启动。 | product:all |
说明: 该接口的调用位置需要特别注意,需要在所有模块初始化和注册接口后完成调用。
T_DjiReturnCode DjiCore_ApplicationStart(void);
返回值
根据程序执行的情况输出对应的返回值,详情请参见:DjiErrorCode
功能:以阻塞模式反初始化 Payload SDK Core | product:all |
T_DjiReturnCode DjiCore_DeInit(void);
返回值
根据程序执行的情况输出对应的返回值,详情请参见:DjiErrorCode