2025-05-02 11:55:24 +08:00
..
2025-04-22 14:12:47 +08:00
2025-04-22 10:04:45 +08:00
2025-04-22 10:04:45 +08:00
2025-04-22 10:04:45 +08:00
2025-04-22 10:04:45 +08:00
2025-04-22 10:04:45 +08:00
2025-04-22 10:04:45 +08:00
2025-05-02 11:55:24 +08:00
2025-04-22 10:04:45 +08:00
2025-04-22 10:04:45 +08:00
2025-04-22 10:04:45 +08:00
2025-04-22 10:04:45 +08:00

说明

第三方库的源代码及其许可见3rdparty目录注意此目录的源代码无需添加构建的源代码列表由h3rdparty_*.c引入

现有以下第三方库:

提供的配置宏定义如下:

宏定义 说明 备注
H3RDPARTY_USING_SYSTEM_CJSON 使用系统cJSON库 需要手动引入第三方库,只定义此宏定义可能不能通过编译
H3RDPARTY_USING_SYSTEM_NANOPB 使用系统nanopb库 需要手动引入第三方库,只定义此宏定义可能不能通过编译
H3RDPARTY_USING_SYSTEM_PAHO_MQTT_EMBEDDED_C_PACKET 使用系统paho.mqtt.embedded-c 某些环境内置paho.mqtt.embedded-c库,可使用此宏定义防止冲突
H3RDPARTY_USING_SYSTEM_SOFTFP 使用系统softfp 某些环境下函数可能冲突,可使用此宏定义防止冲突

nanopb

嵌入式系统Protocol Buffers。

本组件预定义一些Protocol Buffers可用于测试。具体见pbinc

使用nanopb时需要先使用Protocol Buffers消息文件(.proto文件)通过nanopb_generator工具生成.pb.h.pb.c文件。

nanopb_generator可通过以下方式获取

  • 直接下载nanopb源代码,使用源代码中的generator/nanopb_generator.py
  • 通过python的pip工具安装nanopb包安装完成后若PATH变量设置正确则可直接使用nanopb_generator。此方法适用于所有支持python且支持pip的平台。
  • 通过系统的软件包管理工具安装nanopb软件包。此方法适用于python软件包被系统管理的情况如ubuntu可使用sudo apt-get install nanopb安装相应工具,安装完成即可使用nanopb_generator

paho.mqtt.embedded-c

嵌入式系统MQTT主要使用其MQTT数据包解析功能。

由于paho.mqtt.embedded-c的头文件中的枚举值没有加前缀,容易与其它库冲突,因此默认不包含其头文件。

若要使用相应库功能,请使用以下代码:

//引入MQTT包解析功能
#include H3RDPARTY_PAHO_MQTT_EMBEDDED_C_PACKET_HEADER

softfp

对IEEE 754-2008 32/64/128位浮点支持主要用于hsimulator组件。

若要使用相应库功能,请使用以下代码:

#include H3RDPARTY_SOFTFP_HEADER
#include H3RDPARTY_SOFTFLOAT_HEADER