正在显示
39 个修改的文件
包含
4774 行增加
和
0 行删除
.editorconfig
0 → 100644
.gitignore
0 → 100644
| 1 | +# Compiled class file | ||
| 2 | + | ||
| 3 | +ThirdParty | ||
| 4 | +ModuleLib | ||
| 5 | +备份 | ||
| 6 | +linux_kernel | ||
| 7 | + | ||
| 8 | +project_build/AUTEL_道通PSDK | ||
| 9 | +project_build/GDU_普宙PSDK | ||
| 10 | +project_build/DT | ||
| 11 | + | ||
| 12 | +# project_build/Only_Serial/* | ||
| 13 | +# !project_build/Only_Serial/application | ||
| 14 | +# !project_build/Only_Serial/CMakeLists.txt | ||
| 15 | + | ||
| 16 | + | ||
| 17 | +# project_build/DJI_大疆PSDK/* | ||
| 18 | +# !project_build/DJI_大疆PSDK/samples | ||
| 19 | +project_build/DJI_大疆PSDK/samples/sample_c++ | ||
| 20 | + | ||
| 21 | +# project_build/DJI_大疆PSDK/samples/sample_c/platform/* | ||
| 22 | +# !project_build/DJI_大疆PSDK/samples/sample_c/platform/linux | ||
| 23 | + | ||
| 24 | + | ||
| 25 | +# project_build/DJI_大疆PSDK/samples/sample_c/platform/linux/all/* | ||
| 26 | +# !project_build/DJI_大疆PSDK/samples/sample_c/platform/linux/all/application | ||
| 27 | +# !project_build/DJI_大疆PSDK/samples/sample_c/platform/linux/all/hal | ||
| 28 | +# !project_build/DJI_大疆PSDK/samples/sample_c/platform/linux/all/CMakeLists.txt | ||
| 29 | + | ||
| 30 | +project_build/Psdk312/* | ||
| 31 | + | ||
| 32 | +project_build/特殊固件 | ||
| 33 | +project_build/DJI_Test | ||
| 34 | +project_build/Psdk2257 | ||
| 35 | +project_build/zy_101 | ||
| 36 | +project_build/DJI_311 | ||
| 37 | + | ||
| 38 | +# project_build/Attention_提示程序 | ||
| 39 | + | ||
| 40 | +# Prerequisites | ||
| 41 | +*.d | ||
| 42 | + | ||
| 43 | +# Compiled Object files | ||
| 44 | +*.slo | ||
| 45 | +*.lo | ||
| 46 | +*.o | ||
| 47 | +*.obj | ||
| 48 | + | ||
| 49 | +# Precompiled Headers | ||
| 50 | +*.gch | ||
| 51 | +*.pch | ||
| 52 | + | ||
| 53 | +# Compiled Dynamic libraries | ||
| 54 | +*.so | ||
| 55 | +*.dylib | ||
| 56 | +*.dll | ||
| 57 | +*.so* | ||
| 58 | + | ||
| 59 | +# Fortran module files | ||
| 60 | +*.mod | ||
| 61 | +*.smod | ||
| 62 | + | ||
| 63 | +# Compiled Static libraries | ||
| 64 | +*.lai | ||
| 65 | +*.la | ||
| 66 | +*.a | ||
| 67 | +*.lib | ||
| 68 | + | ||
| 69 | +# 执行程序 | ||
| 70 | +*.exe | ||
| 71 | +*.out | ||
| 72 | +*.app | ||
| 73 | +build | ||
| 74 | + | ||
| 75 | +# 编译文件 | ||
| 76 | +bin/ | ||
| 77 | +obj/ | ||
| 78 | +*.bin | ||
| 79 | +*.dir | ||
| 80 | +*.exe | ||
| 81 | +*.dll | ||
| 82 | +*.pdb | ||
| 83 | +Upgrade_Package | ||
| 84 | + | ||
| 85 | +# 存档文件 | ||
| 86 | +*.png | ||
| 87 | +*.jpg | ||
| 88 | +*.mp4 | ||
| 89 | +*.h264 | ||
| 90 | |||
| 91 | + | ||
| 92 | +## 忽略其他常见临时文件 | ||
| 93 | +*.log | ||
| 94 | +*.tmp | ||
| 95 | +*.cache | ||
| 96 | +Thumbs.db | ||
| 97 | +EOF | ||
| 98 | + | ||
| 99 | +**/.vs/ | ||
| 100 | +*.user | ||
| 101 | +*.suo | ||
| 102 | +*.userosscache | ||
| 103 | +*.sln.docstates | ||
| 104 | + | ||
| 105 | +**/.vscode/ |
CmakeConfig/Compiler.cmake
0 → 100644
| 1 | +# 编译链的配置 | ||
| 2 | + | ||
| 3 | +#1、编译链与设备类型的选择 | ||
| 4 | +set(DEVICE_NAME JZ_T40S) | ||
| 5 | +#上一行为禁止修改行 | ||
| 6 | + | ||
| 7 | +message("**************************JZSDK构建编译开始***************************\n") | ||
| 8 | + | ||
| 9 | +if("${DEVICE_NAME}" STREQUAL "JZ_H1E") | ||
| 10 | + set(MAKE_COMPILER ARM_CORTEXA9_LINUX) | ||
| 11 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H1T") | ||
| 12 | + set(MAKE_COMPILER ARM_CORTEXA9_LINUX) | ||
| 13 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H150S") | ||
| 14 | + set(MAKE_COMPILER ARM_CORTEXA9_LINUX) | ||
| 15 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H150T") | ||
| 16 | + #set(MAKE_COMPILER ARM_CORTEXA9_LINUX) | ||
| 17 | + set(MAKE_COMPILER LINARO_ARM_CORTEX_LINUX) | ||
| 18 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H10") | ||
| 19 | + set(MAKE_COMPILER ARM_CORTEXA9_LINUX) | ||
| 20 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H10T") | ||
| 21 | + set(MAKE_COMPILER ARM_CORTEXA9_LINUX) | ||
| 22 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_U3") | ||
| 23 | + set(MAKE_COMPILER ARM_CORTEXA9_LINUX) | ||
| 24 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_U3S") | ||
| 25 | + # set(MAKE_COMPILER ARM_CORTEXA9_LINUX) | ||
| 26 | + set(MAKE_COMPILER LINARO_ARM_CORTEX_LINUX) | ||
| 27 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_U3D") | ||
| 28 | + set(MAKE_COMPILER ARM_CORTEXA9_LINUX) | ||
| 29 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_U30") | ||
| 30 | + set(MAKE_COMPILER ARM_CORTEXA9_LINUX) | ||
| 31 | +elseif("${DEVICE_NAME}" STREQUAL "TF_A1") | ||
| 32 | + set(MAKE_COMPILER ARM_CORTEXA9_LINUX) | ||
| 33 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_C1") | ||
| 34 | + set(MAKE_COMPILER ARM_X86_64_ARRCH64) | ||
| 35 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_ST") | ||
| 36 | + set(MAKE_COMPILER ARM_X86_64_ARRCH64) | ||
| 37 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H150A") | ||
| 38 | + set(MAKE_COMPILER LINARO_ARM_CORTEX_LINUX) | ||
| 39 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_T40") | ||
| 40 | + set(MAKE_COMPILER LINARO_ARM_CORTEX_LINUX) | ||
| 41 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_T40S") | ||
| 42 | + set(MAKE_COMPILER LINARO_ARM_CORTEX_LINUX) | ||
| 43 | +endif() | ||
| 44 | + | ||
| 45 | +if(${MAKE_COMPILER} STREQUAL "ARM_CORTEXA9_LINUX") | ||
| 46 | + set(TOOLCHAIN_NAME arm-linux-gnueabihf-gcc) | ||
| 47 | + set(CMAKE_C_COMPILER "/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc") | ||
| 48 | + set(CMAKE_CXX_COMPILER "/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++") | ||
| 49 | + message("使用ARM_CORTEXA9_LINUX编译链") | ||
| 50 | + | ||
| 51 | +elseif(${MAKE_COMPILER} STREQUAL "LINARO_ARM_CORTEX_LINUX") | ||
| 52 | + set(TOOLCHAIN_NAME arm-linux-gnueabihf-gcc) | ||
| 53 | + set(CMAKE_C_COMPILER "/usr/local/arm/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc") | ||
| 54 | + set(CMAKE_CXX_COMPILER "/usr/local/arm/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++") | ||
| 55 | + message("使用LINARO_ARM_CORTEX_LINUX编译链") | ||
| 56 | + | ||
| 57 | +elseif(${MAKE_COMPILER} STREQUAL "ARM_X86_64_ARRCH64") | ||
| 58 | + # 交叉编译链3 | ||
| 59 | + set(TOOLCHAIN_NAME aarch64-linux-gnu-gcc) | ||
| 60 | + set(CMAKE_C_COMPILER "/usr/local/arm/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-gcc") | ||
| 61 | + set(CMAKE_CXX_COMPILER "/usr/local/arm/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-g++") | ||
| 62 | + message("使用ARM_X86_64_ARRCH64编译链") | ||
| 63 | + | ||
| 64 | +elseif(${MAKE_COMPILER} STREQUAL "LOCAL") | ||
| 65 | + # 本地测试编译链 | ||
| 66 | + set(CMAKE_C_COMPILER "/usr/bin/gcc") | ||
| 67 | + set(CMAKE_CXX_COMPILER "/usr/bin/g++") | ||
| 68 | + message("使用LOCAL编译链") | ||
| 69 | + | ||
| 70 | +else() | ||
| 71 | + message(FATAL_ERROR "不支持的编译链") | ||
| 72 | +endif() | ||
| 73 | + | ||
| 74 | +message("\n**************************编译链配置完毕***********************\n") |
CmakeConfig/module_build.cmake
0 → 100644
| 1 | +# 模组构建文件,用于加载源代码 与 配置代码中的开关 | ||
| 2 | +# ${ROOT_DIRS}为cmakelist文件提供的工程根目录 | ||
| 3 | + | ||
| 4 | +message("\n*************************开始模块构建***********************\n") | ||
| 5 | + | ||
| 6 | +set(IFLAY_TTS_MODULE VERSION_SWITCH_OFF) | ||
| 7 | +set(ESPEAK_TTS_MODULE VERSION_SWITCH_OFF) | ||
| 8 | +set(ALSALIB_MODULE VERSION_SWITCH_OFF) | ||
| 9 | +set(OPUS_MODULE VERSION_SWITCH_OFF) | ||
| 10 | +set(LIB_RK_MMP VERSION_SWITCH_OFF) | ||
| 11 | +set(LIB_RK_RGB VERSION_SWITCH_OFF) | ||
| 12 | +set(LIB_USB VERSION_SWITCH_OFF) | ||
| 13 | +set(LIB_KT_IRC VERSION_SWITCH_OFF) | ||
| 14 | +set(LIB_SAT_IRC VERSION_SWITCH_OFF) | ||
| 15 | + | ||
| 16 | +add_definitions(-D COMPILE_MODE_MODULE) #设置代码为编译模式 | ||
| 17 | + | ||
| 18 | +#加载基础库JZSDK库基础代码 | ||
| 19 | +file(GLOB_RECURSE JZSDK_COMMON_SRC ${ROOT_DIRS}JZsdk_Common/*.c) | ||
| 20 | +list(APPEND ALL_SRC_FILES ${JZSDK_COMMON_SRC}) | ||
| 21 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}JZsdk_Common) | ||
| 22 | + | ||
| 23 | +file(GLOB_RECURSE JZSDK_CONFIG_SRC_baseConfig ${ROOT_DIRS}JZsdk_Config/BaseConfig.c) | ||
| 24 | +file(GLOB_RECURSE JZSDK_CONFIG_SRC_Paramterpar ${ROOT_DIRS}JZsdk_Config/ParamterParsing.c) | ||
| 25 | + | ||
| 26 | +list(APPEND ALL_SRC_FILES ${JZSDK_CONFIG_SRC_baseConfig}) | ||
| 27 | +list(APPEND ALL_SRC_FILES ${JZSDK_CONFIG_SRC_Paramterpar}) | ||
| 28 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}JZsdk_Config) | ||
| 29 | + | ||
| 30 | +file(GLOB_RECURSE JZSDK_HAL_SRC ${ROOT_DIRS}JZsdk_hal/*.c) | ||
| 31 | +list(APPEND ALL_SRC_FILES ${JZSDK_HAL_SRC}) | ||
| 32 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}JZsdk_hal) | ||
| 33 | + | ||
| 34 | +message("\nJZSDK基础代码加载完毕\n") | ||
| 35 | + | ||
| 36 | +#如果要加载设备信息模块,需要加载以下附属内容 | ||
| 37 | +if(${DEVICE_INFO_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 38 | + message("\n设备信息模块源码加载中") | ||
| 39 | + file(GLOB_RECURSE DEVICE_MESSAGE_SRC ${ROOT_DIRS}Module/DeviceInfo/*.c) | ||
| 40 | + list(APPEND ALL_SRC_FILES ${DEVICE_MESSAGE_SRC}) | ||
| 41 | + | ||
| 42 | +endif() | ||
| 43 | + | ||
| 44 | +#如果要加载云台模块,需要加载以下附属内容 | ||
| 45 | +if(${GIMBAL_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 46 | + message("\n云台模块源码加载中") | ||
| 47 | + file(GLOB_RECURSE GIMBAL_SRC ${ROOT_DIRS}Module/Gimbal/*.c) | ||
| 48 | + list(APPEND ALL_SRC_FILES ${GIMBAL_SRC}) | ||
| 49 | + | ||
| 50 | + #打开云台的代码编译部分 | ||
| 51 | + add_definitions(-DMACRO_GIMBAL_MODULE) | ||
| 52 | + | ||
| 53 | +endif() | ||
| 54 | + | ||
| 55 | +#如果要加载引脚模块,需要加载以下附属内容 | ||
| 56 | +if(${IRCUT_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 57 | + message("\n引脚模块源码加载中") | ||
| 58 | + file(GLOB_RECURSE MODULE_IRCUT_SRC ${ROOT_DIRS}Module/Ircut/*.c) | ||
| 59 | + list(APPEND ALL_SRC_FILES ${MODULE_IRCUT_SRC}) | ||
| 60 | + | ||
| 61 | +endif() | ||
| 62 | + | ||
| 63 | +#如果要加载探照灯模块,需要加载以下附属内容 | ||
| 64 | +if(${SEARCHLIGHT_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 65 | + message("\n探照灯模块加载中") | ||
| 66 | + | ||
| 67 | + #打开探照灯的代码编译部分 | ||
| 68 | + add_definitions(-DMACRO_SEARCHLIGHT_MODULE) | ||
| 69 | + | ||
| 70 | + #将探照灯的源代码加入编译中 | ||
| 71 | + file(GLOB_RECURSE SEARCHLIGHT_SRC ${ROOT_DIRS}Module/SearchLight/*.c) | ||
| 72 | + list(APPEND ALL_SRC_FILES ${SEARCHLIGHT_SRC}) | ||
| 73 | + | ||
| 74 | +endif() | ||
| 75 | + | ||
| 76 | +#如果要加载警示灯模块,需要加载以下附属内容 | ||
| 77 | +if(${WARNLIGHT_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 78 | + message("\n警示灯模块加载中") | ||
| 79 | + | ||
| 80 | + #打开探照灯的代码编译部分 | ||
| 81 | + add_definitions(-DMACRO_WARNLIGHT_MODULE) | ||
| 82 | + | ||
| 83 | + #将探照灯的源代码加入编译中 | ||
| 84 | + file(GLOB_RECURSE WARNLIGHT_SRC ${ROOT_DIRS}Module/WarnLight/*.c) | ||
| 85 | + list(APPEND ALL_SRC_FILES ${WARNLIGHT_SRC}) | ||
| 86 | + | ||
| 87 | +endif() | ||
| 88 | + | ||
| 89 | +#如果要加载侧面激光模块,需要加载以下附属内容 | ||
| 90 | +if(${SIDE_LASER_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 91 | + message("\n侧面激光模块加载中") | ||
| 92 | + | ||
| 93 | + #打开侧面激光的代码编译部分 | ||
| 94 | + add_definitions(-DMACRO_SIDE_LASER_MODULE) | ||
| 95 | + | ||
| 96 | + file(GLOB_RECURSE MODULE_SIDE_LASER_SRC ${ROOT_DIRS}Module/SideLaser/*.c) | ||
| 97 | + list(APPEND ALL_SRC_FILES ${MODULE_SIDE_LASER_SRC}) | ||
| 98 | +endif() | ||
| 99 | + | ||
| 100 | +#如果要加载媒体管理模块,需要加载以下附属内容 | ||
| 101 | +if(${MEDIA_PROC_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 102 | + message("\n媒体管理模块加载中") | ||
| 103 | + | ||
| 104 | + #将媒体管理模块的源代码加入编译中 | ||
| 105 | + add_definitions(-DMACRO_MEDIA_PROC_MODULE) | ||
| 106 | + | ||
| 107 | + file(GLOB_RECURSE MEDIA_PROC_SRC ${ROOT_DIRS}Module/MediaProc/*.c) | ||
| 108 | + file(GLOB_RECURSE MEDIA_PROC_SRC_CPP ${ROOT_DIRS}Module/MediaProc/*.cpp) | ||
| 109 | + list(APPEND ALL_SRC_FILES ${MEDIA_PROC_SRC}) | ||
| 110 | + list(APPEND ALL_SRC_FILES ${MEDIA_PROC_SRC_CPP}) | ||
| 111 | + | ||
| 112 | + #如果要加载红外相机模块,额外加载以下附属内容 | ||
| 113 | + if(${IRC_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 114 | + message("加载红外相机模块") | ||
| 115 | + add_definitions(-DMACRO_IRC_MODULE) | ||
| 116 | + | ||
| 117 | + message("加载RK MMP模块") | ||
| 118 | + set(LIB_RK_MMP VERSION_SWITCH_ON) | ||
| 119 | + | ||
| 120 | + message("加载RK RGA模块") | ||
| 121 | + set(LIB_RK_RGB VERSION_SWITCH_ON) | ||
| 122 | + | ||
| 123 | + message("加载USB模块") | ||
| 124 | + set(LIB_USB VERSION_SWITCH_ON) | ||
| 125 | + | ||
| 126 | + if(${LIB_KT_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 127 | + message("加载昆腾红外相机模块") | ||
| 128 | + set(LIB_KT_IRC VERSION_SWITCH_ON) | ||
| 129 | + | ||
| 130 | + endif() | ||
| 131 | + | ||
| 132 | + if(${LIB_SATIRC_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 133 | + message("加载飒特红外相机模块") | ||
| 134 | + set(LIB_SAT_IRC VERSION_SWITCH_ON) | ||
| 135 | + | ||
| 136 | + endif() | ||
| 137 | + | ||
| 138 | + endif() | ||
| 139 | + | ||
| 140 | +endif() | ||
| 141 | + | ||
| 142 | +#如果要加载音频库模块,需要加载以下附属内容 | ||
| 143 | +if(${AUDIODEAL_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 144 | + message("\n音频库模块加载中") | ||
| 145 | + | ||
| 146 | + message("加载音频库") | ||
| 147 | + add_definitions(-DMACRO_AUDIODEAL_MODULE) | ||
| 148 | + file(GLOB_RECURSE AUDIODEAL_SRC ${ROOT_DIRS}Module/AudioDeal/*.c) | ||
| 149 | + list(APPEND ALL_SRC_FILES ${AUDIODEAL_SRC}) | ||
| 150 | + | ||
| 151 | +endif() | ||
| 152 | + | ||
| 153 | +#如果要加载喊话器模块,需要加载以下附属内容 | ||
| 154 | +if(${MEGAPHONE_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 155 | + message("\n喊话器模块加载中") | ||
| 156 | + | ||
| 157 | + message("加载喊话器") | ||
| 158 | + add_definitions(-DMACRO_MEGAPHONE_MODULE) #加载喊话器模块 | ||
| 159 | + file(GLOB_RECURSE MEGAPHONE_SRC ${ROOT_DIRS}Module/Megaphone/*.c) | ||
| 160 | + list(APPEND ALL_SRC_FILES ${MEGAPHONE_SRC}) | ||
| 161 | + | ||
| 162 | + #加载tts模块 | ||
| 163 | + if(TTS_MODULE STREQUAL "JZ_TTS_MODULE_1" ) | ||
| 164 | + | ||
| 165 | + message("加载讯飞一代TTS模块") | ||
| 166 | + add_definitions(-DMACRO_IFLAY_TTS_1_MODULE) | ||
| 167 | + | ||
| 168 | + message("加载espeak模块") | ||
| 169 | + add_definitions(-DMACRO_ESPEAK_TTS_MODULE) | ||
| 170 | + | ||
| 171 | + elseif(TTS_MODULE STREQUAL "JZ_TTS_MODULE_2" ) | ||
| 172 | + | ||
| 173 | + message("加载讯飞二代TTS模块") | ||
| 174 | + add_definitions(-DMACRO_IFLAY_TTS_2_MODULE) | ||
| 175 | + file(GLOB_RECURSE IFLTTEK_2_SRC ${ROOT_DIRS}Module/Megaphone/TTS/iflytek_2/*.cpp) | ||
| 176 | + list(APPEND ALL_SRC_FILES ${IFLTTEK_2_SRC}) | ||
| 177 | + | ||
| 178 | + endif() | ||
| 179 | + | ||
| 180 | + message("加载alsalib模块") | ||
| 181 | + set(ALSALIB_MODULE VERSION_SWITCH_ON) | ||
| 182 | + | ||
| 183 | + message("加载OPUS模块") | ||
| 184 | + set(OPUS_MODULE VERSION_SWITCH_ON) | ||
| 185 | +endif() | ||
| 186 | + | ||
| 187 | + | ||
| 188 | +#如果要加载通用模块,需要加载以下附属内容 | ||
| 189 | +if(${COMMON_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 190 | + | ||
| 191 | + message("\n通用模块加载中") | ||
| 192 | + file(GLOB_RECURSE COMMON_MODULE_SRC ${ROOT_DIRS}Module/CommonMod/*.c) | ||
| 193 | + list(APPEND ALL_SRC_FILES ${COMMON_MODULE_SRC}) | ||
| 194 | + | ||
| 195 | +endif() | ||
| 196 | + | ||
| 197 | +#如果要加载拓展接口模块,需要加载以下附属内容 | ||
| 198 | +if(${EXTENSION_API_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 199 | + message("\n拓展接口模块加载中") | ||
| 200 | + | ||
| 201 | + file(GLOB_RECURSE EXTENSION_API_MODULE_SRC ${ROOT_DIRS}Module/ExtensionAPI/*.c) | ||
| 202 | + list(APPEND ALL_SRC_FILES ${EXTENSION_API_MODULE_SRC}) | ||
| 203 | +endif() | ||
| 204 | + | ||
| 205 | + | ||
| 206 | + | ||
| 207 | +#如果要加载UI模块,需要加载以下附属内容 | ||
| 208 | +if(${UI_CONTROL_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 209 | + message("\nUI模块源码加载中") | ||
| 210 | + | ||
| 211 | + file(GLOB_RECURSE MODULE_UICONTROL_SRC ${ROOT_DIRS}Module/UI_control/*.c) | ||
| 212 | + list(APPEND ALL_SRC_FILES ${MODULE_UICONTROL_SRC}) | ||
| 213 | + | ||
| 214 | +endif() | ||
| 215 | + | ||
| 216 | +# wiringPi | ||
| 217 | +if(${WIRINGPI_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 218 | + message("\nwiringPi模块加载中") | ||
| 219 | + | ||
| 220 | + file(GLOB_RECURSE WIRINGPI_SRC ${ROOT_DIRS}ThirdParty/wiringPi/*.c) | ||
| 221 | + list(APPEND ALL_SRC_FILES ${WIRINGPI_SRC}) | ||
| 222 | + list(APPEND ALL_INC_FILES ${ROOT_DIRS}ThirdParty/wiringPi) | ||
| 223 | + | ||
| 224 | + #打开wiringPi的代码编译部分 | ||
| 225 | + add_definitions(-DMACRO_WIRINGPI_MODULE) | ||
| 226 | + | ||
| 227 | +endif() | ||
| 228 | + | ||
| 229 | +# 如果要加入特殊图像处理模块,需要加载以下附属内容 | ||
| 230 | +if(${IMAGEPROCESSING_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 231 | + message("\n特殊图像处理模块加载中") | ||
| 232 | + | ||
| 233 | + file(GLOB_RECURSE MODULE_IMAGEPROCESSING_SRC ${ROOT_DIRS}Module/ImageProcessing/*.c) | ||
| 234 | + file(GLOB_RECURSE MODULE_IMAGEPROCESSING_cpp_SRC ${ROOT_DIRS}Module/ImageProcessing/*.cpp) | ||
| 235 | + list(APPEND ALL_SRC_FILES ${MODULE_IMAGEPROCESSING_SRC}) | ||
| 236 | + list(APPEND ALL_SRC_FILES ${MODULE_IMAGEPROCESSING_cpp_SRC}) | ||
| 237 | +endif() | ||
| 238 | + | ||
| 239 | +message("\n模组加载完毕\n") | ||
| 240 | + | ||
| 241 | +# 头文件加载,后续再进行优化 | ||
| 242 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module/Megaphone) | ||
| 243 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module/Ircut) | ||
| 244 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module/Gimbal) | ||
| 245 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module/Lighting) | ||
| 246 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module/UI_control) | ||
| 247 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module/Camera) | ||
| 248 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module/COMMONManager) | ||
| 249 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module/TestAPP) | ||
| 250 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module/ImageProcessing) | ||
| 251 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module/SerialManagement) | ||
| 252 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module/ExtensionAPI) | ||
| 253 | +list(APPEND ALL_INC_FILES ${ROOT_DIRS}Module) | ||
| 254 | + | ||
| 255 | +message("**************************库构建完毕***************************\n") |
CmakeConfig/module_config.cmake
0 → 100644
| 1 | +# 设备类型的模块配置文件 | ||
| 2 | +# 主要用于根据设备类型 | ||
| 3 | +# 将对应的模块打开 | ||
| 4 | + | ||
| 5 | +###################### 自己的库 ############################## | ||
| 6 | +# AudioDeal 音频处理模块 | ||
| 7 | +set(AUDIODEAL_MODULE VERSION_SWITCH_OFF) | ||
| 8 | + | ||
| 9 | +# 信息模块 | ||
| 10 | +set(DEVICE_INFO_MODULE VERSION_SWITCH_OFF) | ||
| 11 | + | ||
| 12 | +# Gimbal 云台处理模块 | ||
| 13 | +set(GIMBAL_MODULE VERSION_SWITCH_OFF) | ||
| 14 | + | ||
| 15 | +# IRCUT 引脚处理模块 | ||
| 16 | +set(IRCUT_MODULE VERSION_SWITCH_OFF) | ||
| 17 | + | ||
| 18 | +############### 光源模块 ########################## | ||
| 19 | + | ||
| 20 | +# SEARCHLIGHT 探照灯处理模块 | ||
| 21 | +set(SEARCHLIGHT_MODULE VERSION_SWITCH_OFF) | ||
| 22 | + | ||
| 23 | +# WARNLIGHT 警示灯处理模块 | ||
| 24 | +set(WARNLIGHT_MODULE VERSION_SWITCH_OFF) | ||
| 25 | + | ||
| 26 | +################ 喊话器模块 ####################### | ||
| 27 | + | ||
| 28 | +# 喊话器模块 | ||
| 29 | +set(MEGAPHONE_MODULE VERSION_SWITCH_OFF) | ||
| 30 | + | ||
| 31 | +# TTS模块 | ||
| 32 | +set(TTS_MODULE VERSION_SWITCH_OFF) | ||
| 33 | + | ||
| 34 | +################################################## | ||
| 35 | + | ||
| 36 | + | ||
| 37 | + | ||
| 38 | +# 电源管理模块 | ||
| 39 | +set(COMMON_MODULE VERSION_SWITCH_OFF) | ||
| 40 | + | ||
| 41 | +#拓展接口模块 | ||
| 42 | +set(EXTENSION_API_MODULE VERSION_SWITCH_OFF) | ||
| 43 | + | ||
| 44 | +# UI管理模块 | ||
| 45 | +set(UI_CONTROL_MODULE VERSION_SWITCH_OFF) | ||
| 46 | + | ||
| 47 | + | ||
| 48 | +# MediaProc 媒体管理模块 | ||
| 49 | +set(MEDIA_PROC_MODULE VERSION_SWITCH_OFF) | ||
| 50 | + | ||
| 51 | +# 红外相机模块 | ||
| 52 | +set(IRC_MODULE VERSION_SWITCH_OFF) | ||
| 53 | + | ||
| 54 | +# 侧面激光模块 | ||
| 55 | +set(SIDE_LASER_MODULE VERSION_SWITCH_OFF) | ||
| 56 | + | ||
| 57 | +###################### 第三方库 ############################## | ||
| 58 | + | ||
| 59 | +# FFMPEG及其附属模块 | ||
| 60 | +set(FFMPEG_MODULE VERSION_SWITCH_OFF) | ||
| 61 | + | ||
| 62 | +# cedarxLib | ||
| 63 | +set(CedarxLib VERSION_SWITCH_OFF) | ||
| 64 | + | ||
| 65 | +# wiringPi库 | ||
| 66 | +set(WIRINGPI_MODULE VERSION_SWITCH_OFF) | ||
| 67 | + | ||
| 68 | +# OpenCV库 | ||
| 69 | +set(IMAGEPROCESSING_MODULE VERSION_SWITCH_OFF) | ||
| 70 | + | ||
| 71 | +# 鲲腾库 | ||
| 72 | +set(LIB_KT_MODULE VERSION_SWITCH_OFF) | ||
| 73 | + | ||
| 74 | +# 飒特库 | ||
| 75 | +set(LIB_SATIRC_MODULE VERSION_SWITCH_OFF) | ||
| 76 | + | ||
| 77 | +# speex库 | ||
| 78 | +set(SPEEX_MODULE VERSION_SWITCH_OFF) | ||
| 79 | + | ||
| 80 | +########################## 通用库加载 ########################################### | ||
| 81 | + | ||
| 82 | +# 添加信息模块 | ||
| 83 | +set(DEVICE_INFO_MODULE VERSION_SWITCH_ON) | ||
| 84 | + | ||
| 85 | +# 添加UI管理模块 | ||
| 86 | +set(UI_CONTROL_MODULE VERSION_SWITCH_ON) | ||
| 87 | + | ||
| 88 | +# 添加通用模块 | ||
| 89 | +set(COMMON_MODULE VERSION_SWITCH_ON) | ||
| 90 | + | ||
| 91 | +# 添加IRCUT 引脚处理模块 | ||
| 92 | +set(IRCUT_MODULE VERSION_SWITCH_ON) | ||
| 93 | + | ||
| 94 | +# 添加拓展接口模块 | ||
| 95 | +set(EXTENSION_API_MODULE VERSION_SWITCH_ON) | ||
| 96 | + | ||
| 97 | + | ||
| 98 | + | ||
| 99 | +message("通用库加载完成") | ||
| 100 | + | ||
| 101 | +########################### 独立库加载 ########################################## | ||
| 102 | + | ||
| 103 | +if("${DEVICE_NAME}" STREQUAL "JZ_H1E") | ||
| 104 | + | ||
| 105 | + # 添加AudioDeal 音频处理模块 | ||
| 106 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 107 | + | ||
| 108 | + # 添加Gimbal 云台处理模块 | ||
| 109 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 110 | + | ||
| 111 | + # 添加喊话器模块 | ||
| 112 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 113 | + | ||
| 114 | + # 添加TTS模块 | ||
| 115 | + set(TTS_MODULE JZ_TTS_MODULE_1) | ||
| 116 | + | ||
| 117 | + # 添加FFMPEG及其附属模块 | ||
| 118 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 119 | + | ||
| 120 | + #设备独立配置源文件 | ||
| 121 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_H1_series/JZ_H1E/*.c) | ||
| 122 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 123 | + | ||
| 124 | + message("h1e基础配置完毕\n") | ||
| 125 | + | ||
| 126 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H1T") | ||
| 127 | + | ||
| 128 | + # 添加AudioDeal 音频处理模块 | ||
| 129 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 130 | + | ||
| 131 | + # 添加TTS模块 | ||
| 132 | + set(TTS_MODULE JZ_TTS_MODULE_1) | ||
| 133 | + | ||
| 134 | + # 添加Gimbal 云台处理模块 | ||
| 135 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 136 | + | ||
| 137 | + # 添加SEARCHLIGHT 探照灯处理模块 | ||
| 138 | + set(SEARCHLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 139 | + | ||
| 140 | + # 添加WARNLIGHT 警示灯处理模块 | ||
| 141 | + set(WARNLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 142 | + | ||
| 143 | + # 添加喊话器模块 | ||
| 144 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 145 | + | ||
| 146 | + # 添加TTS模块 | ||
| 147 | + set(TTS_MODULE JZ_TTS_MODULE_1) | ||
| 148 | + | ||
| 149 | + # 添加FFMPEG及其附属模块 | ||
| 150 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 151 | + | ||
| 152 | + #设备独立配置源文件 | ||
| 153 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_H1_series/JZ_H1T/*.c) | ||
| 154 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 155 | + | ||
| 156 | + message("h1t基础配置完毕\n") | ||
| 157 | + | ||
| 158 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_U3") | ||
| 159 | + | ||
| 160 | + # 添加AudioDeal 音频处理模块 | ||
| 161 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 162 | + | ||
| 163 | + # 添加Gimbal 云台处理模块 | ||
| 164 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 165 | + | ||
| 166 | + # 添加SEARCHLIGHT 探照灯处理模块 | ||
| 167 | + set(SEARCHLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 168 | + | ||
| 169 | + # 添加WARNLIGHT 警示灯处理模块 | ||
| 170 | + set(WARNLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 171 | + | ||
| 172 | + # 添加喊话器模块 | ||
| 173 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 174 | + | ||
| 175 | + # 添加TTS模块 | ||
| 176 | + set(TTS_MODULE JZ_TTS_MODULE_1) | ||
| 177 | + | ||
| 178 | + # 添加FFMPEG及其附属模块 | ||
| 179 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 180 | + | ||
| 181 | + #设备独立配置源文件 | ||
| 182 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_U3_series/JZ_U3/*.c) | ||
| 183 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 184 | + | ||
| 185 | + message("u3基础配置完毕\n") | ||
| 186 | + | ||
| 187 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_U3S") | ||
| 188 | + | ||
| 189 | + # 添加Gimbal 云台处理模块 | ||
| 190 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 191 | + | ||
| 192 | + # 添加WARNLIGHT 警示灯处理模块 | ||
| 193 | + set(WARNLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 194 | + | ||
| 195 | + # 添加探照灯模块 | ||
| 196 | + set(SEARCHLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 197 | + | ||
| 198 | + # 添加激光模块 | ||
| 199 | + set(SIDE_LASER_MODULE VERSION_SWITCH_ON) | ||
| 200 | + | ||
| 201 | + # 添加AudioDeal 音频处理模块 | ||
| 202 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 203 | + | ||
| 204 | + # 添加speex音频处理模块 | ||
| 205 | + # set(SPEEX_MODULE VERSION_SWITCH_ON) | ||
| 206 | + | ||
| 207 | + # 添加喊话器模块 | ||
| 208 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 209 | + | ||
| 210 | + # 添加TTS模块 | ||
| 211 | + set(TTS_MODULE JZ_TTS_MODULE_1) | ||
| 212 | + | ||
| 213 | + # 添加FFMPEG及其附属模块 | ||
| 214 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 215 | + | ||
| 216 | + #设备独立配置源文件 | ||
| 217 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_U3_series/JZ_U3S/*.c) | ||
| 218 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 219 | + | ||
| 220 | + message("U3S PZ配置完毕\n") | ||
| 221 | + | ||
| 222 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_U3D") | ||
| 223 | + | ||
| 224 | + # 添加AudioDeal 音频处理模块 | ||
| 225 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 226 | + | ||
| 227 | + # 添加Gimbal 云台处理模块 | ||
| 228 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 229 | + | ||
| 230 | + # 添加SEARCHLIGHT 探照灯处理模块 | ||
| 231 | + set(SEARCHLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 232 | + | ||
| 233 | + # 添加WARNLIGHT 警示灯处理模块 | ||
| 234 | + set(WARNLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 235 | + | ||
| 236 | + # 添加喊话器模块 | ||
| 237 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 238 | + | ||
| 239 | + # 添加TTS模块 | ||
| 240 | + set(TTS_MODULE JZ_TTS_MODULE_1) | ||
| 241 | + | ||
| 242 | + # 添加FFMPEG及其附属模块 | ||
| 243 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 244 | + | ||
| 245 | + #设备独立配置源文件 | ||
| 246 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_U3_series/JZ_U3D/*.c) | ||
| 247 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 248 | + | ||
| 249 | + message("u3d基础配置完毕\n") | ||
| 250 | + | ||
| 251 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_U30") | ||
| 252 | + | ||
| 253 | + # 添加AudioDeal 音频处理模块 | ||
| 254 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 255 | + | ||
| 256 | + # 添加Gimbal 云台处理模块 | ||
| 257 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 258 | + | ||
| 259 | + # 添加SEARCHLIGHT 探照灯处理模块 | ||
| 260 | + set(SEARCHLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 261 | + | ||
| 262 | + # 添加WARNLIGHT 警示灯处理模块 | ||
| 263 | + set(WARNLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 264 | + | ||
| 265 | + # 添加喊话器模块 | ||
| 266 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 267 | + | ||
| 268 | + # 添加TTS模块 | ||
| 269 | + set(TTS_MODULE JZ_TTS_MODULE_1) | ||
| 270 | + | ||
| 271 | + # 添加FFMPEG及其附属模块 | ||
| 272 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 273 | + | ||
| 274 | + #设备独立配置源文件 | ||
| 275 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_U3_series/JZ_U30/*.c) | ||
| 276 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 277 | + | ||
| 278 | + message("u30基础配置完毕\n") | ||
| 279 | + | ||
| 280 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H10") | ||
| 281 | + # 添加AudioDeal 音频处理模块 | ||
| 282 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 283 | + | ||
| 284 | + # 添加Gimbal 云台处理模块 | ||
| 285 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 286 | + | ||
| 287 | + # 添加喊话器模块 | ||
| 288 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 289 | + | ||
| 290 | + # 添加TTS模块 | ||
| 291 | + set(TTS_MODULE JZ_TTS_MODULE_1) | ||
| 292 | + | ||
| 293 | + # 添加wringpi | ||
| 294 | + set(WIRINGPI_MODULE VERSION_SWITCH_ON) | ||
| 295 | + | ||
| 296 | + # 添加FFMPEG及其附属模块 | ||
| 297 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 298 | + | ||
| 299 | + #设备独立配置源文件 | ||
| 300 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_H10_series/JZ_H10/*.c) | ||
| 301 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 302 | + | ||
| 303 | + message("h10基础配置完毕\n") | ||
| 304 | + | ||
| 305 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H10T") | ||
| 306 | + | ||
| 307 | + # 添加AudioDeal 音频处理模块 | ||
| 308 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 309 | + | ||
| 310 | + # 添加Gimbal 云台处理模块 | ||
| 311 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 312 | + | ||
| 313 | + # 添加喊话器模块 | ||
| 314 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 315 | + | ||
| 316 | + # 添加TTS模块 | ||
| 317 | + set(TTS_MODULE JZ_TTS_MODULE_1) | ||
| 318 | + | ||
| 319 | + # 添加FFMPEG及其附属模块 | ||
| 320 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 321 | + | ||
| 322 | + #设备独立配置源文件 | ||
| 323 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_H10_series/JZ_H10T/*.c) | ||
| 324 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 325 | + | ||
| 326 | + message("h10t基础配置完毕\n") | ||
| 327 | + | ||
| 328 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H150S") | ||
| 329 | + # 添加AudioDeal 音频处理模块 | ||
| 330 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 331 | + | ||
| 332 | + # 添加Gimbal 云台处理模块 | ||
| 333 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 334 | + | ||
| 335 | + # 添加喊话器模块 | ||
| 336 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 337 | + | ||
| 338 | + # 添加TTS模块 | ||
| 339 | + set(TTS_MODULE JZ_TTS_MODULE_1) | ||
| 340 | + | ||
| 341 | + # 添加MediaProc 媒体管理模块 | ||
| 342 | + set(MEDIA_PROC_MODULE VERSION_SWITCH_ON) | ||
| 343 | + | ||
| 344 | + # 添加wringpi | ||
| 345 | + set(WIRINGPI_MODULE VERSION_SWITCH_ON) | ||
| 346 | + | ||
| 347 | + # 添加FFMPEG及其附属模块 | ||
| 348 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 349 | + | ||
| 350 | + #设备独立配置源文件 | ||
| 351 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_H150S_H150T/*.c) | ||
| 352 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 353 | + | ||
| 354 | + message("h150s基础配置完毕\n") | ||
| 355 | + | ||
| 356 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H150T") | ||
| 357 | + | ||
| 358 | + # 添加AudioDeal 音频处理模块 | ||
| 359 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 360 | + | ||
| 361 | + # 添加Gimbal 云台处理模块 | ||
| 362 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 363 | + | ||
| 364 | + # 添加喊话器模块 | ||
| 365 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 366 | + | ||
| 367 | + # 添加TTS模块 | ||
| 368 | + set(TTS_MODULE JZ_TTS_MODULE_1) | ||
| 369 | + | ||
| 370 | + # 添加MediaProc 媒体管理模块 | ||
| 371 | + set(MEDIA_PROC_MODULE VERSION_SWITCH_ON) | ||
| 372 | + | ||
| 373 | + # 添加wringpi | ||
| 374 | + set(WIRINGPI_MODULE VERSION_SWITCH_ON) | ||
| 375 | + | ||
| 376 | + # 添加FFMPEG及其附属模块 | ||
| 377 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 378 | + | ||
| 379 | + #设备独立配置源文件 | ||
| 380 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_H150S_H150T/*.c) | ||
| 381 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 382 | + | ||
| 383 | + message("h150t基础配置完毕\n") | ||
| 384 | + | ||
| 385 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_C1") | ||
| 386 | + | ||
| 387 | + # 添加Gimbal 云台处理模块 | ||
| 388 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 389 | + | ||
| 390 | + # 添加MediaProc 媒体管理模块 | ||
| 391 | + set(MEDIA_PROC_MODULE VERSION_SWITCH_ON) | ||
| 392 | + | ||
| 393 | + # 添加红外相机模块 | ||
| 394 | + set(IRC_MODULE VERSION_SWITCH_ON) | ||
| 395 | + | ||
| 396 | + # 添加昆腾模块 | ||
| 397 | + set(LIB_KT_MODULE VERSION_SWITCH_ON) | ||
| 398 | + | ||
| 399 | + #设备独立配置源文件 | ||
| 400 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZC1/*.c) | ||
| 401 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 402 | + | ||
| 403 | + message("C1基础配置完毕\n") | ||
| 404 | + | ||
| 405 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_ST") | ||
| 406 | + | ||
| 407 | + # 添加Gimbal 云台处理模块 | ||
| 408 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 409 | + | ||
| 410 | + # 添加MediaProc 媒体管理模块 | ||
| 411 | + set(MEDIA_PROC_MODULE VERSION_SWITCH_ON) | ||
| 412 | + | ||
| 413 | + # 添加红外相机模块 | ||
| 414 | + set(IRC_MODULE VERSION_SWITCH_ON) | ||
| 415 | + | ||
| 416 | + # 添加飒特模块 | ||
| 417 | + set(LIB_SATIRC_MODULE VERSION_SWITCH_ON) | ||
| 418 | + | ||
| 419 | + #设备独立配置源文件 | ||
| 420 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_ST/*.c) | ||
| 421 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 422 | + | ||
| 423 | + message("ST基础配置完毕\n") | ||
| 424 | + | ||
| 425 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_H150A") | ||
| 426 | + | ||
| 427 | + # 添加WARNLIGHT 警示灯处理模块 | ||
| 428 | + set(WARNLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 429 | + | ||
| 430 | + # 添加AudioDeal 音频处理模块 | ||
| 431 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 432 | + | ||
| 433 | + # 添加喊话器模块 | ||
| 434 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 435 | + | ||
| 436 | + # 添加TTS模块 | ||
| 437 | + set(TTS_MODULE JZ_TTS_MODULE_2) | ||
| 438 | + | ||
| 439 | + # 添加FFMPEG及其附属模块 | ||
| 440 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 441 | + | ||
| 442 | + #设备独立配置源文件 | ||
| 443 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_H150A/*.c) | ||
| 444 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 445 | + | ||
| 446 | + message("JZ_H150A基础配置完毕\n") | ||
| 447 | + | ||
| 448 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_T40S") | ||
| 449 | + | ||
| 450 | + # 添加Gimbal 云台处理模块 | ||
| 451 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 452 | + | ||
| 453 | + # 添加WARNLIGHT 警示灯处理模块 | ||
| 454 | + set(WARNLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 455 | + | ||
| 456 | + # 添加探照灯模块 | ||
| 457 | + set(SEARCHLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 458 | + | ||
| 459 | + # 添加激光模块 | ||
| 460 | + set(SIDE_LASER_MODULE VERSION_SWITCH_ON) | ||
| 461 | + | ||
| 462 | + # 添加AudioDeal 音频处理模块 | ||
| 463 | + set(AUDIODEAL_MODULE VERSION_SWITCH_ON) | ||
| 464 | + | ||
| 465 | + # 添加speex音频处理模块 | ||
| 466 | + # set(SPEEX_MODULE VERSION_SWITCH_ON) | ||
| 467 | + | ||
| 468 | + # 添加喊话器模块 | ||
| 469 | + set(MEGAPHONE_MODULE VERSION_SWITCH_ON) | ||
| 470 | + | ||
| 471 | + # 添加TTS模块 | ||
| 472 | + set(TTS_MODULE JZ_TTS_MODULE_2) | ||
| 473 | + | ||
| 474 | + # 添加FFMPEG及其附属模块 | ||
| 475 | + set(FFMPEG_MODULE VERSION_SWITCH_ON) | ||
| 476 | + | ||
| 477 | + #设备独立配置源文件 | ||
| 478 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_T40_T40S/*.c) | ||
| 479 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 480 | + | ||
| 481 | + message("JZ_T40S基础配置完毕\n") | ||
| 482 | + | ||
| 483 | +elseif("${DEVICE_NAME}" STREQUAL "JZ_T40") | ||
| 484 | + | ||
| 485 | + # 添加Gimbal 云台处理模块 | ||
| 486 | + set(GIMBAL_MODULE VERSION_SWITCH_ON) | ||
| 487 | + | ||
| 488 | + # 添加WARNLIGHT 警示灯处理模块 | ||
| 489 | + set(WARNLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 490 | + | ||
| 491 | + # 添加探照灯模块 | ||
| 492 | + set(SEARCHLIGHT_MODULE VERSION_SWITCH_ON) | ||
| 493 | + | ||
| 494 | + # 添加激光模块 | ||
| 495 | + set(SIDE_LASER_MODULE VERSION_SWITCH_ON) | ||
| 496 | + | ||
| 497 | + #设备独立配置源文件 | ||
| 498 | + file(GLOB_RECURSE DEVICE_CONFOG_SRC ${ROOT_DIRS}JZsdk_Config/DeviceSample/JZ_T40_T40S/*.c) | ||
| 499 | + list(APPEND ALL_SRC_FILES ${DEVICE_CONFOG_SRC}) | ||
| 500 | + | ||
| 501 | + message("JZ_T40基础配置完毕\n") | ||
| 502 | +endif() | ||
| 503 | + | ||
| 504 | +message("***********************模组模块配置完毕*********************************\n") |
CmakeConfig/module_lib_loading.cmake
0 → 100644
| 1 | +# 第一方/第三方 模块加载文件 | ||
| 2 | +# 主要用于加载动态库给编译使用 | ||
| 3 | +# ${ROOT_DIRS}为cmakelist文件提供的工程根目录 | ||
| 4 | + | ||
| 5 | + | ||
| 6 | +if(${TTS_MODULE} STREQUAL "JZ_TTS_MODULE_1") | ||
| 7 | + set(iFLYTEK_TTS_1_DIRS "${ROOT_DIRS}ThirdParty/iFLYTEK_TTS/lib/arm-cortexa9-linux-gnueabihf") | ||
| 8 | + include_directories(${ROOT_DIRS}ThirdParty/iFLYTEK_TTS/include) | ||
| 9 | + target_link_libraries( | ||
| 10 | + ${PROJECT_NAME} | ||
| 11 | + ${iFLYTEK_TTS_1_DIRS}/libmsc.so | ||
| 12 | + ) | ||
| 13 | + message("讯飞一代TTS模块已加载\n") | ||
| 14 | +endif() | ||
| 15 | + | ||
| 16 | +if(${TTS_MODULE} STREQUAL "JZ_TTS_MODULE_1") | ||
| 17 | + set(ESPEAK_TTS_DIRS "${ROOT_DIRS}ThirdParty/Espeak/lib/arm-cortexa9-linux-gnueabihf") | ||
| 18 | + include_directories(${ROOT_DIRS}ThirdParty/Espeak/include) | ||
| 19 | + target_link_libraries( | ||
| 20 | + ${PROJECT_NAME} | ||
| 21 | + ${ESPEAK_TTS_DIRS}/libportaudio.so.2 | ||
| 22 | + ${ESPEAK_TTS_DIRS}/libTTS_Player.so | ||
| 23 | + ) | ||
| 24 | + message("Espeak模块已加载\n") | ||
| 25 | +endif() | ||
| 26 | + | ||
| 27 | +if(${TTS_MODULE} STREQUAL "JZ_TTS_MODULE_2") | ||
| 28 | + set(iFLYTEK_TTS_2_DIRS "${ROOT_DIRS}ThirdParty/iFLYTEK_TTS_2/lib/arm-cortexa9-linux-gnueabihf") | ||
| 29 | + include_directories(${ROOT_DIRS}ThirdParty/iFLYTEK_TTS_2/include) | ||
| 30 | + | ||
| 31 | + target_link_libraries( | ||
| 32 | + ${PROJECT_NAME} | ||
| 33 | + aikit | ||
| 34 | + rt | ||
| 35 | + ) | ||
| 36 | + message("讯飞二代TTS模块已加载\n") | ||
| 37 | +endif() | ||
| 38 | + | ||
| 39 | +if(${ALSALIB_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 40 | + set(ALSALIB_DIRS "${ROOT_DIRS}ThirdParty/AlsaLib/lib/arm-cortexa9-linux-gnueabihf") | ||
| 41 | + include_directories(${ROOT_DIRS}ThirdParty/AlsaLib/include) | ||
| 42 | + target_link_libraries( | ||
| 43 | + ${PROJECT_NAME} | ||
| 44 | + ${ALSALIB_DIRS}/libasound.so.2.0.0 | ||
| 45 | + ) | ||
| 46 | + message("alsalib已加载\n") | ||
| 47 | +endif() | ||
| 48 | + | ||
| 49 | +if(${OPUS_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 50 | + set(OPUS_DIRS "${ROOT_DIRS}ThirdParty/opus/lib/arm-cortexa9-linux-gnueabihf") | ||
| 51 | + include_directories(${ROOT_DIRS}ThirdParty/opus/include) | ||
| 52 | + target_link_libraries( | ||
| 53 | + ${PROJECT_NAME} | ||
| 54 | + ${OPUS_DIRS}/libopus.so | ||
| 55 | + ) | ||
| 56 | + message("OPUS模块已加载\n") | ||
| 57 | +endif() | ||
| 58 | + | ||
| 59 | +if(${SPEEX_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 60 | + | ||
| 61 | + add_definitions(-DMACRO_SPEEX_MODULE) #加载模块 | ||
| 62 | + | ||
| 63 | + set(SPEEX_DIRS "${ROOT_DIRS}ThirdParty/Speex/lib/arm-cortexa9-linux-gnueabihf") | ||
| 64 | + include_directories(${ROOT_DIRS}ThirdParty/Speex/include) | ||
| 65 | + target_link_libraries( | ||
| 66 | + ${PROJECT_NAME} | ||
| 67 | + ${SPEEX_DIRS}/libspeexdsp.so | ||
| 68 | + ) | ||
| 69 | + message("Speex模块已加载\n") | ||
| 70 | +endif() | ||
| 71 | + | ||
| 72 | +# if(${CedarxLib} STREQUAL "VERSION_SWITCH_ON") | ||
| 73 | +# message("\nCedarX已加载\n") | ||
| 74 | +# target_link_libraries(${PROJECT_NAME} | ||
| 75 | +# ${ROOT_DIRS}ModuleLib/Camera/CedarX/libawh264.so | ||
| 76 | +# ${ROOT_DIRS}ModuleLib/Camera/CedarX/libMemAdapter.so | ||
| 77 | +# ${ROOT_DIRS}ModuleLib/Camera/CedarX/libVE.so | ||
| 78 | +# ${ROOT_DIRS}ModuleLib/Camera/CedarX/libvencoder.so | ||
| 79 | +# ${ROOT_DIRS}ModuleLib/Camera/CedarX/libvideoengine.so | ||
| 80 | +# ${ROOT_DIRS}ModuleLib/Camera/CedarX/libvdecoder.so | ||
| 81 | +# ) | ||
| 82 | + | ||
| 83 | +# message("\n OpenCV已加载\n") | ||
| 84 | +# target_link_libraries(${PROJECT_NAME} | ||
| 85 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_calib3d.so | ||
| 86 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_core.so | ||
| 87 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_dnn.so | ||
| 88 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_features2d.so | ||
| 89 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_flann.so | ||
| 90 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_highgui.so | ||
| 91 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_imgcodecs.so | ||
| 92 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_imgproc.so | ||
| 93 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_ml.so | ||
| 94 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_objdetect.so | ||
| 95 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_photo.so | ||
| 96 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_shape.so | ||
| 97 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_stitching.so | ||
| 98 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_superres.so | ||
| 99 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_videoio.so | ||
| 100 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_video.so | ||
| 101 | +# ${ROOT_DIRS}ModuleLib/OpenCV/libopencv_videostab.so | ||
| 102 | +# ) | ||
| 103 | + | ||
| 104 | +# message("\n ffmpeg已加载\n") | ||
| 105 | +# target_link_libraries(${PROJECT_NAME} | ||
| 106 | +# ${ROOT_DIRS}ModuleLib/ffmpeg/libavcodec.so | ||
| 107 | +# ${ROOT_DIRS}ModuleLib/ffmpeg/libavdevice.so | ||
| 108 | +# ${ROOT_DIRS}ModuleLib/ffmpeg/libavfilter.so | ||
| 109 | +# ${ROOT_DIRS}ModuleLib/ffmpeg/libavformat.so | ||
| 110 | +# ${ROOT_DIRS}ModuleLib/ffmpeg/libavutil.so | ||
| 111 | +# ${ROOT_DIRS}ModuleLib/ffmpeg/libswresample.so | ||
| 112 | +# ${ROOT_DIRS}ModuleLib/ffmpeg/libswscale.so | ||
| 113 | +# ) | ||
| 114 | + | ||
| 115 | +# message("\n SearchLightCenter已加载\n") | ||
| 116 | +# target_link_libraries(${PROJECT_NAME} | ||
| 117 | +# ${ROOT_DIRS}ModuleLib/SearchLightCenter/libcenter.so | ||
| 118 | +# ) | ||
| 119 | + | ||
| 120 | +# endif() | ||
| 121 | + | ||
| 122 | +# ffmpeg库加载 | ||
| 123 | +if(${FFMPEG_MODULE} STREQUAL "VERSION_SWITCH_ON") | ||
| 124 | + message("\nffmpeg模块加载\n") | ||
| 125 | + | ||
| 126 | +#根据编译链进行加载 | ||
| 127 | +if(${MAKE_COMPILER} STREQUAL "ARM_CORTEXA9_LINUX") | ||
| 128 | + message("ARM_CORTEXA9_LINUX\n") | ||
| 129 | + set(FFMPEG_6_0_DIRS "${ROOT_DIRS}ThirdParty/ffmpeg_6_0/lib/arm-cortexa9-linux-gnueabihf") | ||
| 130 | + include_directories(${ROOT_DIRS}ThirdParty/ffmpeg_6_0/include) | ||
| 131 | + target_link_libraries( | ||
| 132 | + ${PROJECT_NAME} | ||
| 133 | + ${FFMPEG_6_0_DIRS}/libavcodec.so.60 | ||
| 134 | + ${FFMPEG_6_0_DIRS}/libavdevice.so.60 | ||
| 135 | + ${FFMPEG_6_0_DIRS}/libavfilter.so.9 | ||
| 136 | + ${FFMPEG_6_0_DIRS}/libavformat.so.60 | ||
| 137 | + ${FFMPEG_6_0_DIRS}/libavutil.so.58 | ||
| 138 | + ${FFMPEG_6_0_DIRS}/libpostproc.so.57 | ||
| 139 | + ${FFMPEG_6_0_DIRS}/libswresample.so.4 | ||
| 140 | + ${FFMPEG_6_0_DIRS}/libswscale.so.7 | ||
| 141 | + ) | ||
| 142 | + | ||
| 143 | + message("x264模块已加载\n") | ||
| 144 | + set(X264_DIRS "${ROOT_DIRS}ThirdParty/x264_2245/lib/arm-cortexa9-linux-gnueabihf") | ||
| 145 | + include_directories(${ROOT_DIRS}ThirdParty/x264_2245/include) | ||
| 146 | + target_link_libraries( | ||
| 147 | + ${PROJECT_NAME} | ||
| 148 | + ${X264_DIRS}/libx264.so.157 | ||
| 149 | + ) | ||
| 150 | + | ||
| 151 | + message("FDK_AAC模块已加载\n") | ||
| 152 | + set(FDK_AAC_DIRS "${ROOT_DIRS}ThirdParty/fdk_aac_2_0_3/lib/arm-cortexa9-linux-gnueabihf") | ||
| 153 | + include_directories(${ROOT_DIRS}ThirdParty/fdk_aac_2_0_3/include) | ||
| 154 | + target_link_libraries( | ||
| 155 | + ${PROJECT_NAME} | ||
| 156 | + ${FDK_AAC_DIRS}/libfdk-aac.so.2 | ||
| 157 | + ) | ||
| 158 | +endif() | ||
| 159 | + | ||
| 160 | +#根据编译链进行加载 | ||
| 161 | +if(${MAKE_COMPILER} STREQUAL "LINARO_ARM_CORTEX_LINUX") | ||
| 162 | + message("LINARO_ARM_CORTEX_LINUX\n") | ||
| 163 | + set(FFMPEG_6_0_DIRS "${ROOT_DIRS}ThirdParty/ffmpeg_6_0/lib/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf") | ||
| 164 | + include_directories(${ROOT_DIRS}ThirdParty/ffmpeg_6_0/include) | ||
| 165 | + target_link_libraries( | ||
| 166 | + ${PROJECT_NAME} | ||
| 167 | + ${FFMPEG_6_0_DIRS}/libavcodec.so.60 | ||
| 168 | + ${FFMPEG_6_0_DIRS}/libavdevice.so.60 | ||
| 169 | + ${FFMPEG_6_0_DIRS}/libavfilter.so.9 | ||
| 170 | + ${FFMPEG_6_0_DIRS}/libavformat.so.60 | ||
| 171 | + ${FFMPEG_6_0_DIRS}/libavutil.so.58 | ||
| 172 | + ${FFMPEG_6_0_DIRS}/libpostproc.so.57 | ||
| 173 | + ${FFMPEG_6_0_DIRS}/libswresample.so.4 | ||
| 174 | + ${FFMPEG_6_0_DIRS}/libswscale.so.7 | ||
| 175 | + ) | ||
| 176 | + | ||
| 177 | + message("x264模块已加载\n") | ||
| 178 | + set(X264_DIRS "${ROOT_DIRS}ThirdParty/x264_2245/lib/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf") | ||
| 179 | + include_directories(${ROOT_DIRS}ThirdParty/x264_2245/include) | ||
| 180 | + target_link_libraries( | ||
| 181 | + ${PROJECT_NAME} | ||
| 182 | + ${X264_DIRS}/libx264.so.157 | ||
| 183 | + ) | ||
| 184 | + | ||
| 185 | + message("FDK_AAC模块已加载\n") | ||
| 186 | + set(FDK_AAC_DIRS "${ROOT_DIRS}ThirdParty/fdk_aac_2_0_3/lib/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf") | ||
| 187 | + include_directories(${ROOT_DIRS}ThirdParty/fdk_aac_2_0_3/include) | ||
| 188 | + target_link_libraries( | ||
| 189 | + ${PROJECT_NAME} | ||
| 190 | + ${FDK_AAC_DIRS}/libfdk-aac.so.2 | ||
| 191 | + ) | ||
| 192 | +endif() | ||
| 193 | + | ||
| 194 | +endif() | ||
| 195 | + | ||
| 196 | +#RK_mmp库 | ||
| 197 | +if(${LIB_RK_MMP} STREQUAL "VERSION_SWITCH_ON") | ||
| 198 | + message("RK_MMP库已加载\n") | ||
| 199 | + add_definitions(-DMACRO_RK_MPP_MODULE) #加载模块 | ||
| 200 | + | ||
| 201 | + include_directories(${ROOT_DIRS}/ThirdParty/RK_mmp/aarch64-none-linux-gnu/include) | ||
| 202 | + target_link_libraries( | ||
| 203 | + ${PROJECT_NAME} | ||
| 204 | + ${ROOT_DIRS}/ThirdParty/RK_mmp/aarch64-none-linux-gnu/lib/librockchip_mpp.so.0 | ||
| 205 | + ${ROOT_DIRS}/ThirdParty/RK_mmp/aarch64-none-linux-gnu/lib/librockchip_vpu.so.0 | ||
| 206 | + ) | ||
| 207 | +endif() | ||
| 208 | + | ||
| 209 | +#RK_rgb库 | ||
| 210 | +if(${LIB_RK_RGB} STREQUAL "VERSION_SWITCH_ON") | ||
| 211 | + message("RK_RGB库已加载\n") | ||
| 212 | + add_definitions(-DMACRO_RK_RGA_MODULE) #加载模块 | ||
| 213 | + | ||
| 214 | + include_directories(${ROOT_DIRS}/ThirdParty/RK_rga/aarch64-none-linux-gnu/include) | ||
| 215 | + target_link_libraries( | ||
| 216 | + ${PROJECT_NAME} | ||
| 217 | + ${ROOT_DIRS}/ThirdParty/RK_rga/aarch64-none-linux-gnu/lib/librga.so | ||
| 218 | + ) | ||
| 219 | +endif() | ||
| 220 | + | ||
| 221 | +#usb库 | ||
| 222 | +if(${LIB_USB} STREQUAL "VERSION_SWITCH_ON") | ||
| 223 | + add_definitions(-DMACRO_USB_MODULE) #加载usb模块 | ||
| 224 | + | ||
| 225 | + message("USB库已加载\n") | ||
| 226 | + include_directories(${ROOT_DIRS}/ThirdParty/libusb/aarch64-none-linux-gnu/include) | ||
| 227 | + target_link_libraries( | ||
| 228 | + ${PROJECT_NAME} | ||
| 229 | + ${ROOT_DIRS}/ThirdParty/libusb/aarch64-none-linux-gnu/lib/libusb-1.0.so.0.4.0 | ||
| 230 | + ) | ||
| 231 | + | ||
| 232 | + message("udev库已加载\n") | ||
| 233 | + | ||
| 234 | + include_directories(${ROOT_DIRS}/ThirdParty/udev/aarch64-none-linux-gnu/include) | ||
| 235 | + target_link_libraries( | ||
| 236 | + ${PROJECT_NAME} | ||
| 237 | + ${ROOT_DIRS}/ThirdParty/udev/aarch64-none-linux-gnu/lib/libudev.so.1.6.3 | ||
| 238 | + ) | ||
| 239 | +endif() | ||
| 240 | + | ||
| 241 | +#kt_IRC库 | ||
| 242 | +if(${LIB_KT_IRC} STREQUAL "VERSION_SWITCH_ON") | ||
| 243 | + | ||
| 244 | + add_definitions(-DMACRO_KTIRC_MODULE) | ||
| 245 | + | ||
| 246 | + message("ktIRC库已加载\n") | ||
| 247 | + include_directories(${ROOT_DIRS}/ThirdParty/KT_IRC/include) | ||
| 248 | + target_link_libraries( | ||
| 249 | + ${PROJECT_NAME} | ||
| 250 | + ${ROOT_DIRS}/ThirdParty/KT_IRC/aarch64-none-linux-gnu/lib/libm330aarchx64.so | ||
| 251 | + ) | ||
| 252 | + | ||
| 253 | +endif() | ||
| 254 | + | ||
| 255 | +#飒特 IRC库 | ||
| 256 | +if(${LIB_SAT_IRC} STREQUAL "VERSION_SWITCH_ON") | ||
| 257 | + | ||
| 258 | + add_definitions(-DMACRO_SATIRC_MODULE) | ||
| 259 | + | ||
| 260 | + message("STIRC库已加载\n") | ||
| 261 | + include_directories(${ROOT_DIRS}/ThirdParty/SatIrcLib/include) | ||
| 262 | + target_link_libraries( | ||
| 263 | + ${PROJECT_NAME} | ||
| 264 | + ${ROOT_DIRS}/ThirdParty/SatIrcLib/aarch64-none-linux-gnu/lib/libsatir.so | ||
| 265 | + ) | ||
| 266 | + | ||
| 267 | +endif() | ||
| 268 | + | ||
| 269 | +message("**************************动态库加载完毕***************************\n") |
CmakeConfig/module_link_directories.cmake
0 → 100644
CppProperties.json
0 → 100644
| 1 | +{ | ||
| 2 | + "configurations": [ | ||
| 3 | + { | ||
| 4 | + "inheritEnvironments": [ | ||
| 5 | + "msvc_x86" | ||
| 6 | + ], | ||
| 7 | + "name": "x86-Debug", | ||
| 8 | + "includePath": [ | ||
| 9 | + "${env.INCLUDE}", | ||
| 10 | + "${workspaceRoot}\\**" | ||
| 11 | + ], | ||
| 12 | + "defines": [ | ||
| 13 | + "WIN32", | ||
| 14 | + "_DEBUG", | ||
| 15 | + "UNICODE", | ||
| 16 | + "_UNICODE" | ||
| 17 | + ], | ||
| 18 | + "intelliSenseMode": "windows-msvc-x86" | ||
| 19 | + } | ||
| 20 | + ] | ||
| 21 | +} |
JZsdk_Common/JZsdkLib.c
0 → 100644
| 1 | +#include <stdio.h> | ||
| 2 | +#include "JZsdkLib.h" | ||
| 3 | + | ||
| 4 | +#include "./JZsdk_TaskManagement/TaskManagement.h" | ||
| 5 | + | ||
| 6 | +static T_JZsdkReturnCode JZsdk_PrepareSystemEnvironment() | ||
| 7 | +{ | ||
| 8 | + T_JZsdkReturnCode ret; | ||
| 9 | + | ||
| 10 | + ret = JZsdk_OsalInit(); | ||
| 11 | + if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) | ||
| 12 | + { | ||
| 13 | + | ||
| 14 | + } | ||
| 15 | + else | ||
| 16 | + { | ||
| 17 | + JZSDK_LOG_INFO("JZSDK_OSAL_INIT_SUCCESS"); | ||
| 18 | + } | ||
| 19 | + | ||
| 20 | + return ret; | ||
| 21 | +} | ||
| 22 | + | ||
| 23 | + | ||
| 24 | +//初始化sdk | ||
| 25 | +T_JZsdkReturnCode JZsdk_LibInit(int LogFlag) | ||
| 26 | +{ | ||
| 27 | + //环境初始化 | ||
| 28 | + JZsdk_PrepareSystemEnvironment(); | ||
| 29 | + | ||
| 30 | + if (LogFlag == JZ_FLAGCODE_ON) | ||
| 31 | + { | ||
| 32 | + //1、初始化log | ||
| 33 | + JZsdk_LoggerInit(); | ||
| 34 | + } | ||
| 35 | + | ||
| 36 | + //2、任务管理系统初始化 | ||
| 37 | + TaskManagement_Init(); | ||
| 38 | + | ||
| 39 | + JZSDK_LOG_INFO("JZSDK_LIB_INIT_SUCCESS"); | ||
| 40 | +} |
JZsdk_Common/JZsdkLib.h
0 → 100644
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdkLib.h | ||
| 4 | + * JZsdk的头文件 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDKLIB_H | ||
| 11 | +#define JZSDKLIB_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | +#include "JZsdk_Base/JZsdkBase.h" | ||
| 22 | +#include "JZsdk_Base/JZsdk_Code/JZsdk_Code.h" | ||
| 23 | + | ||
| 24 | +#include "JZsdk_CommonFuntion/JZsdkCommonFuntion.h" | ||
| 25 | +#include "JZsdk_TaskManagement/TaskManagement.h" | ||
| 26 | +/* Exported types ------------------------------------------------------------*/ | ||
| 27 | + | ||
| 28 | +/* Exported functions --------------------------------------------------------*/ | ||
| 29 | +T_JZsdkReturnCode JZsdk_LibInit(int LogFlag); | ||
| 30 | + | ||
| 31 | + | ||
| 32 | +#ifdef __cplusplus | ||
| 33 | +} | ||
| 34 | +#endif | ||
| 35 | + | ||
| 36 | +#endif | ||
| 37 | +/************************ (C) COPYRIGHT DJI Innovations *******END OF FILE******/ |
JZsdk_Common/JZsdk_Base/JZring/JZring.c
0 → 100644
| 1 | +#include "JZsdk_Base/JZsdk_Code/JZsdk_Code.h" | ||
| 2 | +#include <string.h> | ||
| 3 | +#include <pthread.h> // 添加线程互斥锁支持 | ||
| 4 | +#include "JZring.h" | ||
| 5 | + | ||
| 6 | +typedef struct T_JZring | ||
| 7 | +{ | ||
| 8 | + U8_t *buffer; // 缓冲区指针 | ||
| 9 | + U32_t size; // 缓冲区总容量 | ||
| 10 | + U32_t head; // 写入位置(下一个可写位置) | ||
| 11 | + U32_t tail; // 读取位置(下一个可读位置) | ||
| 12 | + U32_t count; // 当前数据量 | ||
| 13 | + pthread_mutex_t mutex; // 互斥锁保护共享资源 | ||
| 14 | +} T_JZring; | ||
| 15 | + | ||
| 16 | +// 初始化环形缓冲区 | ||
| 17 | +T_JZsdkReturnCode JZring_Init(T_JZringHandle *ring, U8_t *buffer, U32_t size) | ||
| 18 | +{ | ||
| 19 | + if (!ring || !buffer || size == 0) | ||
| 20 | + { | ||
| 21 | + return JZ_ERROR_SYSTEM_MODULE_CODE_INVALID_PARAMETER; | ||
| 22 | + } | ||
| 23 | + | ||
| 24 | + T_JZring *r = (T_JZring*)malloc(sizeof(T_JZring)); | ||
| 25 | + if (!r) { | ||
| 26 | + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; | ||
| 27 | + } | ||
| 28 | + | ||
| 29 | + // 初始化互斥锁 | ||
| 30 | + if (pthread_mutex_init(&r->mutex, NULL) != 0) { | ||
| 31 | + free(r); | ||
| 32 | + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; | ||
| 33 | + } | ||
| 34 | + | ||
| 35 | + r->buffer = buffer; | ||
| 36 | + r->size = size; | ||
| 37 | + r->head = 0; | ||
| 38 | + r->tail = 0; | ||
| 39 | + r->count = 0; | ||
| 40 | + | ||
| 41 | + *ring = (T_JZringHandle)r; | ||
| 42 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 43 | +} | ||
| 44 | + | ||
| 45 | +// 获取缓冲区总容量 | ||
| 46 | +T_JZsdkReturnCode JZring_GetSize(T_JZringHandle ring, U32_t *size) | ||
| 47 | +{ | ||
| 48 | + if (!ring || !size) { | ||
| 49 | + return JZ_ERROR_SYSTEM_MODULE_CODE_INVALID_PARAMETER; | ||
| 50 | + } | ||
| 51 | + | ||
| 52 | + T_JZring *r = (T_JZring*)ring; | ||
| 53 | + | ||
| 54 | + pthread_mutex_lock(&r->mutex); | ||
| 55 | + *size = r->size; | ||
| 56 | + pthread_mutex_unlock(&r->mutex); | ||
| 57 | + | ||
| 58 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 59 | +} | ||
| 60 | + | ||
| 61 | +// 获取当前数据量 | ||
| 62 | +T_JZsdkReturnCode JZring_GetDataCount(T_JZringHandle ring, U32_t *count) | ||
| 63 | +{ | ||
| 64 | + if (!ring || !count) { | ||
| 65 | + return JZ_ERROR_SYSTEM_MODULE_CODE_INVALID_PARAMETER; | ||
| 66 | + } | ||
| 67 | + | ||
| 68 | + T_JZring *r = (T_JZring*)ring; | ||
| 69 | + | ||
| 70 | + pthread_mutex_lock(&r->mutex); | ||
| 71 | + *count = r->count; | ||
| 72 | + pthread_mutex_unlock(&r->mutex); | ||
| 73 | + | ||
| 74 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 75 | +} | ||
| 76 | + | ||
| 77 | +// 从环形缓冲区读取数据 | ||
| 78 | +T_JZsdkReturnCode JZring_Read(T_JZringHandle ring, U8_t *data, U32_t size, U32_t *readSize) | ||
| 79 | +{ | ||
| 80 | + if (!ring || !data || !readSize) { | ||
| 81 | + return JZ_ERROR_SYSTEM_MODULE_CODE_INVALID_PARAMETER; | ||
| 82 | + } | ||
| 83 | + | ||
| 84 | + T_JZring *r = (T_JZring*)ring; | ||
| 85 | + *readSize = 0; | ||
| 86 | + | ||
| 87 | + pthread_mutex_lock(&r->mutex); | ||
| 88 | + | ||
| 89 | + if (r->count == 0 || size == 0) { | ||
| 90 | + pthread_mutex_unlock(&r->mutex); | ||
| 91 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 92 | + } | ||
| 93 | + | ||
| 94 | + // 计算实际可读数量 | ||
| 95 | + U32_t bytes_to_read = (size > r->count) ? r->count : size; | ||
| 96 | + *readSize = bytes_to_read; | ||
| 97 | + | ||
| 98 | + // 计算连续可读空间(可能被尾部分割) | ||
| 99 | + U32_t contig = r->size - r->tail; | ||
| 100 | + if (bytes_to_read <= contig) { | ||
| 101 | + memcpy(data, r->buffer + r->tail, bytes_to_read); | ||
| 102 | + } else { | ||
| 103 | + memcpy(data, r->buffer + r->tail, contig); | ||
| 104 | + memcpy(data + contig, r->buffer, bytes_to_read - contig); | ||
| 105 | + } | ||
| 106 | + | ||
| 107 | + // 更新读指针和数据计数 | ||
| 108 | + r->tail = (r->tail + bytes_to_read) % r->size; | ||
| 109 | + r->count -= bytes_to_read; | ||
| 110 | + | ||
| 111 | + pthread_mutex_unlock(&r->mutex); | ||
| 112 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 113 | +} | ||
| 114 | + | ||
| 115 | +// 写入数据到环形缓冲区 | ||
| 116 | +T_JZsdkReturnCode JZring_Write(T_JZringHandle ring, const U8_t *data, U32_t size) | ||
| 117 | +{ | ||
| 118 | + if (!ring || !data) { | ||
| 119 | + return JZ_ERROR_SYSTEM_MODULE_CODE_INVALID_PARAMETER; | ||
| 120 | + } | ||
| 121 | + | ||
| 122 | + if (size == 0) { | ||
| 123 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 124 | + } | ||
| 125 | + | ||
| 126 | + T_JZring *r = (T_JZring*)ring; | ||
| 127 | + | ||
| 128 | + pthread_mutex_lock(&r->mutex); | ||
| 129 | + | ||
| 130 | + // 直接检查可用空间 | ||
| 131 | + if (size > (r->size - r->count)) | ||
| 132 | + { | ||
| 133 | + pthread_mutex_unlock(&r->mutex); | ||
| 134 | + return JZ_ERROR_SYSTEM_MODULE_CODE_BUFFER_SIZE_NOT_ENOUGH; | ||
| 135 | + } | ||
| 136 | + | ||
| 137 | + // 计算连续可写空间(可能被尾部分割) | ||
| 138 | + U32_t contig = r->size - r->head; | ||
| 139 | + if (size <= contig) { | ||
| 140 | + memcpy(r->buffer + r->head, data, size); | ||
| 141 | + } else { | ||
| 142 | + memcpy(r->buffer + r->head, data, contig); | ||
| 143 | + memcpy(r->buffer, data + contig, size - contig); | ||
| 144 | + } | ||
| 145 | + | ||
| 146 | + // 更新写指针和数据计数 | ||
| 147 | + r->head = (r->head + size) % r->size; | ||
| 148 | + r->count += size; | ||
| 149 | + | ||
| 150 | + pthread_mutex_unlock(&r->mutex); | ||
| 151 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 152 | +} | ||
| 153 | + | ||
| 154 | +// 获取空闲空间 | ||
| 155 | +T_JZsdkReturnCode JZring_GetFreeSpace(T_JZringHandle ring, U32_t *size) | ||
| 156 | +{ | ||
| 157 | + if (!ring || !size) { | ||
| 158 | + return JZ_ERROR_SYSTEM_MODULE_CODE_INVALID_PARAMETER; | ||
| 159 | + } | ||
| 160 | + | ||
| 161 | + T_JZring *r = (T_JZring*)ring; | ||
| 162 | + | ||
| 163 | + pthread_mutex_lock(&r->mutex); | ||
| 164 | + *size = r->size - r->count; | ||
| 165 | + pthread_mutex_unlock(&r->mutex); | ||
| 166 | + | ||
| 167 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 168 | +} | ||
| 169 | + | ||
| 170 | +// 检查缓冲区是否为空 | ||
| 171 | +T_JZsdkReturnCode JZring_IsEmpty(T_JZringHandle ring, bool *isEmpty) | ||
| 172 | +{ | ||
| 173 | + if (!ring || !isEmpty) { | ||
| 174 | + return JZ_ERROR_SYSTEM_MODULE_CODE_INVALID_PARAMETER; | ||
| 175 | + } | ||
| 176 | + | ||
| 177 | + T_JZring *r = (T_JZring*)ring; | ||
| 178 | + | ||
| 179 | + pthread_mutex_lock(&r->mutex); | ||
| 180 | + *isEmpty = (r->count == 0); | ||
| 181 | + pthread_mutex_unlock(&r->mutex); | ||
| 182 | + | ||
| 183 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 184 | +} | ||
| 185 | + | ||
| 186 | +// 检查缓冲区是否已满 | ||
| 187 | +T_JZsdkReturnCode JZring_IsFull(T_JZringHandle ring, bool *isFull) | ||
| 188 | +{ | ||
| 189 | + if (!ring || !isFull) { | ||
| 190 | + return JZ_ERROR_SYSTEM_MODULE_CODE_INVALID_PARAMETER; | ||
| 191 | + } | ||
| 192 | + | ||
| 193 | + T_JZring *r = (T_JZring*)ring; | ||
| 194 | + | ||
| 195 | + pthread_mutex_lock(&r->mutex); | ||
| 196 | + *isFull = (r->count == r->size); | ||
| 197 | + pthread_mutex_unlock(&r->mutex); | ||
| 198 | + | ||
| 199 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 200 | +} | ||
| 201 | + | ||
| 202 | +// 重置环形缓冲区 | ||
| 203 | +T_JZsdkReturnCode JZring_Reset(T_JZringHandle ring) | ||
| 204 | +{ | ||
| 205 | + if (!ring) { | ||
| 206 | + return JZ_ERROR_SYSTEM_MODULE_CODE_INVALID_PARAMETER; | ||
| 207 | + } | ||
| 208 | + | ||
| 209 | + T_JZring *r = (T_JZring*)ring; | ||
| 210 | + | ||
| 211 | + pthread_mutex_lock(&r->mutex); | ||
| 212 | + r->head = 0; | ||
| 213 | + r->tail = 0; | ||
| 214 | + r->count = 0; | ||
| 215 | + pthread_mutex_unlock(&r->mutex); | ||
| 216 | + | ||
| 217 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 218 | +} | ||
| 219 | + | ||
| 220 | +// 反初始化环形缓冲区 | ||
| 221 | +T_JZsdkReturnCode JZring_DeInit(T_JZringHandle ring) | ||
| 222 | +{ | ||
| 223 | + if (!ring) { | ||
| 224 | + return JZ_ERROR_SYSTEM_MODULE_CODE_INVALID_PARAMETER; | ||
| 225 | + } | ||
| 226 | + | ||
| 227 | + T_JZring *r = (T_JZring*)ring; | ||
| 228 | + | ||
| 229 | + // 销毁互斥锁 | ||
| 230 | + pthread_mutex_destroy(&r->mutex); | ||
| 231 | + | ||
| 232 | + // 释放管理结构体 | ||
| 233 | + free(r); | ||
| 234 | + | ||
| 235 | + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; | ||
| 236 | +} |
JZsdk_Common/JZsdk_Base/JZring/JZring.h
0 → 100644
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZring.h | ||
| 4 | + * 环形缓冲区 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZ_RING_H | ||
| 11 | +#define JZ_RING_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | +#include "JZsdk_Base/JZsdk_Code/JZsdk_Code.h" | ||
| 15 | + | ||
| 16 | +#ifdef __cplusplus | ||
| 17 | +extern "C" { | ||
| 18 | +#endif | ||
| 19 | + | ||
| 20 | +/* Exported constants --------------------------------------------------------*/ | ||
| 21 | +typedef void* T_JZringHandle; | ||
| 22 | + | ||
| 23 | +/* Exported types ------------------------------------------------------------*/ | ||
| 24 | + | ||
| 25 | + | ||
| 26 | +/* Exported functions --------------------------------------------------------*/ | ||
| 27 | +T_JZsdkReturnCode JZring_Init(T_JZringHandle *ring, U8_t *buffer, U32_t size); | ||
| 28 | +T_JZsdkReturnCode JZring_Write(T_JZringHandle ring, const U8_t *data, U32_t size); | ||
| 29 | +T_JZsdkReturnCode JZring_Read(T_JZringHandle ring, U8_t *data, U32_t size, U32_t *readSize); | ||
| 30 | + | ||
| 31 | +T_JZsdkReturnCode JZring_GetDataCount(T_JZringHandle ring, U32_t *count); | ||
| 32 | +T_JZsdkReturnCode JZring_Reset(T_JZringHandle ring); | ||
| 33 | +T_JZsdkReturnCode JZring_DeInit(T_JZringHandle ring); | ||
| 34 | + | ||
| 35 | +#ifdef __cplusplus | ||
| 36 | +} | ||
| 37 | +#endif | ||
| 38 | + | ||
| 39 | +#endif |
JZsdk_Common/JZsdk_Base/JZsdkBase.h
0 → 100644
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdkBase.h | ||
| 4 | + * JZsdk基础部件的头文件 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDKBASE_H | ||
| 11 | +#define JZSDKBASE_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | +#include "JZsdk_Logger/JZsdk_Logger.h" | ||
| 22 | +#include "JZsdk_Code/JZsdk_FLagCode.h" | ||
| 23 | +#include "JZsdk_Osal/JZsdk_Osal.h" | ||
| 24 | + | ||
| 25 | +/* Exported types ------------------------------------------------------------*/ | ||
| 26 | + | ||
| 27 | + | ||
| 28 | +/* Exported functions --------------------------------------------------------*/ | ||
| 29 | + | ||
| 30 | + | ||
| 31 | +#ifdef __cplusplus | ||
| 32 | +} | ||
| 33 | +#endif | ||
| 34 | + | ||
| 35 | +#endif |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_Code.h | ||
| 4 | + * 用于记录各类码的表 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_CODE_H | ||
| 11 | +#define JZSDK_CODE_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | + | ||
| 22 | +#include "./JZsdk_typedef/JZsdk_typedef.h" | ||
| 23 | +#include "./JZsdk_typedef/JZsdk_AttributeDef.h" | ||
| 24 | + | ||
| 25 | +#include "./JZsdk_ReturnCode/JZsdk_ReturnCode.h" | ||
| 26 | +#include "./JZsdk_Platform/JZsdk_Platform.h" | ||
| 27 | + | ||
| 28 | + | ||
| 29 | +#include "./JZsdk_InsCode.h" | ||
| 30 | +#include "./JZsdk_FLagCode.h" | ||
| 31 | +#include "./JZsdk_WidgetCode.h" | ||
| 32 | +#include "./JZsdk_DeviceCode.h" | ||
| 33 | +#include "./JZsdk_DefineCode.h" | ||
| 34 | + | ||
| 35 | +/* Exported types ------------------------------------------------------------*/ | ||
| 36 | + | ||
| 37 | + | ||
| 38 | +/* Exported functions --------------------------------------------------------*/ | ||
| 39 | + | ||
| 40 | +#ifdef __cplusplus | ||
| 41 | +} | ||
| 42 | +#endif | ||
| 43 | + | ||
| 44 | +#endif |
| 1 | +#include <stdio.h> | ||
| 2 | +#include "./JZsdk_DefineCode.h" | ||
| 3 | + | ||
| 4 | +unsigned char * JZsdk_DefineCode_GetPortName(int Port) | ||
| 5 | +{ | ||
| 6 | + switch (Port) | ||
| 7 | + { | ||
| 8 | + case UART_4G: | ||
| 9 | + return "设备4G"; | ||
| 10 | + break; | ||
| 11 | + | ||
| 12 | + case UART_DEV_1: | ||
| 13 | + return "设备UART1"; | ||
| 14 | + break; | ||
| 15 | + | ||
| 16 | + case UART_DEV_2: | ||
| 17 | + return "设备UART2"; | ||
| 18 | + break; | ||
| 19 | + | ||
| 20 | + case HAL_DATA_TRANSMISSION: | ||
| 21 | + return "HAL数据"; | ||
| 22 | + break; | ||
| 23 | + | ||
| 24 | + case NET_DEV_1: | ||
| 25 | + return "设备NET1"; | ||
| 26 | + break; | ||
| 27 | + | ||
| 28 | + case NO_SPECIFIED: | ||
| 29 | + return "无指定设备"; | ||
| 30 | + break; | ||
| 31 | + | ||
| 32 | + default: | ||
| 33 | + return "无指定设备"; | ||
| 34 | + break; | ||
| 35 | + } | ||
| 36 | +} |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_DefiningCode.h | ||
| 4 | + * 用于记录各种定义类型的表 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_DEFININGCODE_H | ||
| 11 | +#define JZSDK_DEFININGCODE_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" | ||
| 17 | +{ | ||
| 18 | +#endif | ||
| 19 | + | ||
| 20 | +/* Exported constants --------------------------------------------------------*/ | ||
| 21 | +/* 常亮定义*/ | ||
| 22 | + | ||
| 23 | +/* Exported types ------------------------------------------------------------*/ | ||
| 24 | +typedef enum JZ_DEVICE_PORT_TYPE | ||
| 25 | +{ | ||
| 26 | + DEVICE_PSDK = 0x0000, // psdk功能 | ||
| 27 | + | ||
| 28 | + UART_4G = 0x0010, // 4G功能 | ||
| 29 | + UART_DEV_1 = 0x0011, // 1号设备功能 | ||
| 30 | + UART_DEV_2 = 0x0012, // 2号设备功能 | ||
| 31 | + UART_DEV_3 = 0x0013, // 3号设备功能 | ||
| 32 | + UART_DEV_4 = 0x0014, // 4号设备功能 | ||
| 33 | + UART_DEV_5 = 0x0015, // 5号设备功能 | ||
| 34 | + | ||
| 35 | + USB_DEV_1 = 0x0020, // usb设备 | ||
| 36 | + USB_DEV_2 = 0x0021, // usb设备 | ||
| 37 | + USB_DEV_3 = 0x0022, // usb设备 | ||
| 38 | + USB_DEV_4 = 0x0023, // usb设备 | ||
| 39 | + USB_DEV_5 = 0x0024, // usb设备 | ||
| 40 | + | ||
| 41 | + NET_DEV_1 = 0x0030, // 网络设备 | ||
| 42 | + NET_DEV_2 = 0x0031, // 网络设备 | ||
| 43 | + NET_DEV_3 = 0x0032, // 网络设备 | ||
| 44 | + | ||
| 45 | + HAL_DATA_TRANSMISSION = 0x0040, // hal定制的特殊数据传播 | ||
| 46 | + | ||
| 47 | + HAL_MAX = 0x0050, // hal最大值 | ||
| 48 | + | ||
| 49 | + COMBINE_DEVICE = 0x1998, // 组合设备 | ||
| 50 | + NO_SPECIFIED = 0x1999, // 无制定设备 | ||
| 51 | +} JZ_DEVICE_PORT_TYPE; | ||
| 52 | + | ||
| 53 | +typedef enum JZ_MODULE_CONTROL_WAY | ||
| 54 | +{ | ||
| 55 | + JZ_MODULE_CONTROL_WAY_INDEPENDENT = 0x1000, // 独立控制 | ||
| 56 | + JZ_MODULE_CONTROL_WAY_TRANSPARENT = 0x1001, //透传控制 | ||
| 57 | +}JZ_MODULE_CONTROL_WAY; // 模块控制方式 | ||
| 58 | + | ||
| 59 | +typedef enum JZ_DATA_TRANS_TYPE | ||
| 60 | +{ | ||
| 61 | + JZ_DATA_TRANS_TYPE_REAL_TIME_MP2 = 0x1000, // 实时mp2数据传输中 | ||
| 62 | + JZ_DATA_TRANS_TYPE_AUDIO_FILE = 0x1001, // 音频文件传输中 | ||
| 63 | + JZ_DATA_TRANS_TYPE_OPUS_FILE = 0x1002, // opus文件传输中 | ||
| 64 | + JZ_DATA_TRANS_TYPE_REAL_TIME_OPUS = 0x1003, // 实时opus传输中 | ||
| 65 | + JZ_DATA_TRANS_TYPE_TTS = 0x1004, //TTS传输模式 | ||
| 66 | +}JZ_DATA_TRANS_TYPE; | ||
| 67 | + | ||
| 68 | +/* Exported functions --------------------------------------------------------*/ | ||
| 69 | +unsigned char * JZsdk_DefineCode_GetPortName(int Port); | ||
| 70 | + | ||
| 71 | +#ifdef __cplusplus | ||
| 72 | +} | ||
| 73 | +#endif | ||
| 74 | + | ||
| 75 | +#endif |
| 1 | +/* ******************************************************************** | ||
| 2 | +* | ||
| 3 | +* 用来规范version_choose的参数 | ||
| 4 | +* | ||
| 5 | +***********************************************/ | ||
| 6 | +#ifndef JZSDK_DEVICE_CODE_H | ||
| 7 | +#define JZSDK_DEVICE_CODE_H | ||
| 8 | + | ||
| 9 | +//特殊版本号 | ||
| 10 | +#define SPECIAL_NORMAL 0x01 //普通版本 | ||
| 11 | +#define SPECIAL_DAOTONG 0x02 //道通版本 | ||
| 12 | +#define SPECIAL_H10_M300 0x03 //h10 m300版本 | ||
| 13 | + | ||
| 14 | +//软件模式 | ||
| 15 | +#define APP_PSDK 0x01 | ||
| 16 | +#define APP_UART 0x02 | ||
| 17 | +#define APP_TEST 0x03 | ||
| 18 | +#define APP_ATTENTION 0x04 | ||
| 19 | + | ||
| 20 | +//平台选择 | ||
| 21 | +#define PLATFORM_H3 0x01 | ||
| 22 | +#define PLATFORM_V3S 0x02 | ||
| 23 | + | ||
| 24 | +//固件属地 | ||
| 25 | +#define OVERSEAS_VERSION 0x01 | ||
| 26 | +#define DOMESTIC_VERSION 0x02 | ||
| 27 | + | ||
| 28 | +//加载开关 | ||
| 29 | +#define VERSION_SWITCH_ON 0x0001 //加载 | ||
| 30 | +#define VERSION_SWITCH_OFF 0x0000 //不加载 | ||
| 31 | + | ||
| 32 | +//设备选择 | ||
| 33 | +#define JZ_H1E 0x11 | ||
| 34 | + | ||
| 35 | +#define JZ_H1T 0x16 | ||
| 36 | + | ||
| 37 | +#define JZ_U3 0x17 | ||
| 38 | +#define JZ_U3S 0x18 | ||
| 39 | +#define JZ_U3D 0x19 | ||
| 40 | +#define JZ_U30 0x1A | ||
| 41 | + | ||
| 42 | +#define JZ_T40S 0x1C | ||
| 43 | +#define JZ_T40_LEFT_GIMBAL 0x1C11 | ||
| 44 | +#define JZ_T40_RIGHT_GIMBAL 0x1C12 | ||
| 45 | +#define JZ_T40_LEFT_LIGHT 0x1C21 | ||
| 46 | +#define JZ_T40_RIGHT_LIGHT 0x1C22 | ||
| 47 | +#define JZ_T40 0x1D | ||
| 48 | + | ||
| 49 | +#define JZ_H150S 0x13 | ||
| 50 | +#define JZ_H150T 0x15 | ||
| 51 | +#define JZ_H150A 0x1E | ||
| 52 | + | ||
| 53 | +#define JZ_H10 0x12 | ||
| 54 | +#define JZ_H10T 0x14 | ||
| 55 | + | ||
| 56 | + | ||
| 57 | +#define TF_A1 0x1010 | ||
| 58 | +#define JZ_C1 0x1011 | ||
| 59 | +#define JZ_ST 0x1012 | ||
| 60 | + | ||
| 61 | + | ||
| 62 | +/*********************************** | ||
| 63 | + * | ||
| 64 | + * 已退出历史舞台 | ||
| 65 | + * | ||
| 66 | + * *********************************/ | ||
| 67 | + | ||
| 68 | +// //音频滤波的方式 | ||
| 69 | +// //目前只有和h10使用带阻滤波 | ||
| 70 | +// #define DIRECTED_STOPBAND_FILTERING 0x10001 //带阻滤波 | ||
| 71 | +// #define HIGH_PASS_FILTERING 0x10002 //高通滤波 | ||
| 72 | +// #define INTERGRATED_FILTERING_1 0x10003 //综合滤波1代 | ||
| 73 | + | ||
| 74 | + | ||
| 75 | +#endif |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_FLagCode.h | ||
| 4 | + * 用于标识码的表 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_FLAGCODE_H | ||
| 11 | +#define JZSDK_FLAGCODE_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | + | ||
| 22 | +typedef enum JZ_Flag_Code{ | ||
| 23 | + JZ_FLAGCODE_OFF = 0x0000, | ||
| 24 | + JZ_FLAGCODE_ON = 0x0001, | ||
| 25 | + JZ_FLAGCODE_GET = 0x0010, //获取指令 | ||
| 26 | + JZ_FLAGCODE_SET = 0x0011, //设置指令 | ||
| 27 | + | ||
| 28 | + JZ_FLAGCODE_NORMAL = 0x00FF, //默认模式 | ||
| 29 | +} JZ_Flag_Code; | ||
| 30 | + | ||
| 31 | +/* Exported types ------------------------------------------------------------*/ | ||
| 32 | + | ||
| 33 | + | ||
| 34 | +/* Exported functions --------------------------------------------------------*/ | ||
| 35 | + | ||
| 36 | +#ifdef __cplusplus | ||
| 37 | +} | ||
| 38 | +#endif | ||
| 39 | + | ||
| 40 | +#endif |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_InsCode.h | ||
| 4 | + * 用于错误码的表 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_INSCODE_H | ||
| 11 | +#define JZSDK_INSCODE_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | + | ||
| 22 | +typedef enum { | ||
| 23 | + | ||
| 24 | +//5A类帧 | ||
| 25 | + JZ_INSCODE_5AFRAME_FRAME = 0x10000000, //接收类帧 | ||
| 26 | + | ||
| 27 | + JZ_INSCODE_5AFRAME_ASKFORCONNECT = 0x10000100, //申请连接 | ||
| 28 | + JZ_INSCODE_5AFRAME_HEARTBEAT = 0x10000101, //心跳帧 | ||
| 29 | + JZ_INSCODE_5AFRAME_TIMESTAMP = 0x10000102, //时间戳帧 | ||
| 30 | + JZ_INSCODE_5AFRAME_ALL_VERSION = 0x10000103, //全版本查询 | ||
| 31 | + JZ_INSCODE_5AFRAME_ALL_SERIAL_NUMBER = 0x10000104, //全序列号查询 | ||
| 32 | + JZ_INSCODE_5AFRAME_LOG_MESSAGE_PRINTF = 0x10000105, //log信息打印 | ||
| 33 | + JZ_INSCODE_5AFRAME_DEVICE_MESSAGE = 0x10000106, //设备信息 | ||
| 34 | + | ||
| 35 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_DEVICE_TYPE_VERSION = 0x5A5A5059, //查询设备类型版本号 | ||
| 36 | + | ||
| 37 | + JZ_INSCODE_5AFRAME_FRAME_POWER_STATUS = 0x10000110, //电源状态设置 | ||
| 38 | + | ||
| 39 | + JZ_INSCODE_5AFRAME_PRESET_TASK = 0x10000120, //预置任务 | ||
| 40 | + JZ_INSCODE_5AFRAME_SYNCHRONIZES_TASK_TIME = 0x10000121, //任务同步时间帧 | ||
| 41 | + | ||
| 42 | + JZ_INSCODE_5AFRAME_REALTIMEMP2_START = 0x10000200, //开启实时MP2 | ||
| 43 | + JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION = 0x10000201, //无限制传输实时MP2 | ||
| 44 | + JZ_INSCODE_5AFRAME_REALTIMEMP2_STOP = 0x10000202, //结束实时MP2 | ||
| 45 | + JZ_INSCODE_5AFRAME_REALTIMEMP2_LIMIT_TRANSMISSION = 0x10000203, //有限制传输MP2 | ||
| 46 | + | ||
| 47 | + | ||
| 48 | + JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START = 0x10000300, //打开音频文件上传 | ||
| 49 | + JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION = 0x10000301, //无限制传输音频文件 | ||
| 50 | + JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP = 0x10000302, //关闭音频文件上传 | ||
| 51 | + JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_LIMIT_TRANSMISSION = 0x10000303, //定长传输音频文件 | ||
| 52 | + JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_LIMIT_TRANSMISSION_2 = 0x5A5A5105, //定长传输音频文件2型 | ||
| 53 | + JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP_AND_CHECK = 0x10000304, //关闭音频文件上传并校验 | ||
| 54 | + | ||
| 55 | + JZ_INSCODE_5AFRAME_AUDIO_PLAYFILE = 0x10000400, //播放指定音频 | ||
| 56 | + JZ_INSCODE_5AFRAME_AUDIO_CONTINUE = 0x10000401, //音频继续播放 | ||
| 57 | + JZ_INSCODE_5AFRAME_AUDIO_PAUSE = 0x10000402, //音频暂停播放 | ||
| 58 | + JZ_INSCODE_5AFRAME_AUDIO_STOP = 0x10000403, //音频停止播放 | ||
| 59 | + | ||
| 60 | + JZ_INSCODE_5AFRAME_AUDIO_LASTSONG = 0x10000410, //音频上一曲 | ||
| 61 | + JZ_INSCODE_5AFRAME_AUDIO_NEXTSONG = 0x10000411, //音频下一曲 | ||
| 62 | + | ||
| 63 | + JZ_INSCODE_5AFRAME_AUDIO_GETMUSICLIST = 0x10000420, //获取音频列表 | ||
| 64 | + | ||
| 65 | + | ||
| 66 | + JZ_INSCODE_5AFRAME_AMPLIFIER_STOP = 0x10000500, //强制关闭功放 | ||
| 67 | + JZ_INSCODE_5AFRAME_AMPLIFIER_OPEN = 0x10000501, //强制开启功放 | ||
| 68 | + JZ_INSCODE_5AFRAME_AMPLIFIER_AUTO = 0x10000502, //恢复自动功放 | ||
| 69 | + | ||
| 70 | + JZ_INSCODE_5AFRAME_VOLUME = 0x10000600, //调节音量 | ||
| 71 | + | ||
| 72 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_VOLUME = 0x10000620, //查询音量 | ||
| 73 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_PLAY = 0x10000621, //查询播放状态 | ||
| 74 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_GIMBAL = 0x10000622, //查询云台角度 | ||
| 75 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_GIMBAL_FINETUNING = 0x10000623, //查询云台微调角度 | ||
| 76 | + | ||
| 77 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_PLAYFILENAME = 0x10000624, //查询播放文件名 | ||
| 78 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_SOFTWAREVERSION = 0x10000625, //查询软件版本号 | ||
| 79 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_LOOPPLAY = 0x10000626, //查询是否打开循环 | ||
| 80 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_ADUIO_LOOP_INTERVAL = 0x10000639, //查询音频循环间隔 | ||
| 81 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_CURRENT_PLAYTIME = 0x10000640, //查询当前播放时间回调是否打开 | ||
| 82 | + | ||
| 83 | + | ||
| 84 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_TTSTONE = 0x10000627, //查询音色 | ||
| 85 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_TTSSPEED = 0x10000628, //查询语速 | ||
| 86 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_LIGHTATTRIBUTE = 0x10000629, //查询探照灯 灯3个属性 | ||
| 87 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_LUMEN = 0x10000630, //查询探照灯流明 | ||
| 88 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_FREQUENCY = 0x10000631, //查询探照灯频率 | ||
| 89 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_MODE = 0x10000632, //查询探照灯模式 | ||
| 90 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_TEMPERATURE = 0x10000633, //查询探照灯温度 | ||
| 91 | + | ||
| 92 | + | ||
| 93 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_LASER_STATUS = 0x10000634, //查询激光状态 | ||
| 94 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_WARNINGLIGHT_STATUS = 0x10000635, //查询警灯状态 | ||
| 95 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_WARNINGLIGHT_COLOR = 0x10000636, //查询警灯颜色 | ||
| 96 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_SERIALNUMBER = 0x10000637, //查询序列号 | ||
| 97 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_AUDIO_DETAIL_MESSAGE = 0x10000638, //查询音频详细信息 | ||
| 98 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_WARNINGLIGHT_CONTROL_2 = 0x10000639, //查询警灯模式2 | ||
| 99 | + | ||
| 100 | + JZ_INSCODE_5AFRAME_PLAY_LOOP = 0x10000690, //开启关闭循环 | ||
| 101 | + JZ_INSCODE_5AFRAME_ADUIO_PLAY_LOOP_INTERVAL = 0x10000691, //设置音频循环间隔 | ||
| 102 | + | ||
| 103 | + JZ_INSCODE_5AFRAME_DELETE_AUDIO = 0x10000700, //删除音频 | ||
| 104 | + JZ_INSCODE_5AFRAME_DELETE_VOICE_RECORD = 0x10000710, //删除录音 | ||
| 105 | + JZ_INSCODE_5AFRAME_DELETE_VIDEO_RECORD = 0x10000720, //删除视频 | ||
| 106 | + JZ_INSCODE_5AFRAME_RENAME_AUDIO = 0x10000730, //重命名音频 | ||
| 107 | + JZ_INSCODE_5AFRAME_RENAME_VOICE_RECORD = 0x10000740, //重命名录音 | ||
| 108 | + JZ_INSCODE_5AFRAME_RENAME_VIDEO_RECORD = 0x10000750, //重命名视频 | ||
| 109 | + | ||
| 110 | + | ||
| 111 | + JZ_INSCODE_5AFRAME_TTS_SET_TONE = 0x10000801, //TTS设置音色 | ||
| 112 | + JZ_INSCODE_5AFRAME_TTS_SET_SPEED = 0x10000802, //TTS设置语速 | ||
| 113 | + JZ_INSCODE_5AFRAME_TTS_TRANS_START = 0x10000803, //TTS开始发送 | ||
| 114 | + JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION = 0x10000804, //TTS正在无限制接收 | ||
| 115 | + JZ_INSCODE_5AFRAME_TTS_TRANS_STOP = 0x10000805, //TTS发送完毕 | ||
| 116 | + JZ_INSCODE_5AFRAME_TTS_TRANS_LIMIT_TRANSMISSION = 0x10000806, //TTS正在定长接收 | ||
| 117 | + | ||
| 118 | + JZ_INSCODE_5AFRAME_CURRENT_PLAY_TIME = 0x10004406, //设置播放回传 | ||
| 119 | + | ||
| 120 | + | ||
| 121 | + JZ_INSCODE_5AFRAME_OPUS_TRANS_START_1 = 0x10000900, //opus传输开始1型 | ||
| 122 | + JZ_INSCODE_5AFRAME_OPUS_TRANS_START_2 = 0x10000901, //opus传输开始2型 | ||
| 123 | + //JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION = 0x10000901, //opus 无限制传输中 | ||
| 124 | + JZ_INSCODE_5AFRAME_OPUS_TRANS_LIMIT_TRANSMISSION = 0x10000903, //opus传输中 | ||
| 125 | + | ||
| 126 | + JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP = 0x10000902, //opus传输结束 | ||
| 127 | + JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP_AND_CHECK = 0x10000904, //opus传输结束并校验 | ||
| 128 | + | ||
| 129 | + | ||
| 130 | + JZ_INSCODE_5AFRAME_OPUS_PLAY = 0x10000910, //opus播放 | ||
| 131 | + | ||
| 132 | + JZ_INSCODE_5AFRAME_PCM_PLAY = 0x10000920, //pcm播放 | ||
| 133 | + | ||
| 134 | + JZ_INSCODE_5AFRAME_PCM_GETPCMLIST = 0x10000930, //获pcm列表 | ||
| 135 | + | ||
| 136 | + | ||
| 137 | + JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_START = 0x10000A00, //开启opus实时语音 | ||
| 138 | + JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION = 0x10000A01, //无限制传输opus实时语音 | ||
| 139 | + JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_STOP = 0x10000A02, //结束opus实时语音 | ||
| 140 | + JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_LIMIT_TRANSMISSION = 0x10000A03, //定长传输opus实时语音 | ||
| 141 | + | ||
| 142 | + JZ_INSCODE_5AFRAME_GIMBAL_PITCH_CONTROL = 0x10000B00, //云台俯仰控制 | ||
| 143 | + JZ_INSCODE_5AFRAME_GIMBAL_YAW_CONTROL = 0x10000B01, //云台朝向控制 | ||
| 144 | + JZ_INSCODE_5AFRAME_GIMBAL_ROLL_CONTROL = 0x10000B02, //云台旋转控制 | ||
| 145 | + JZ_INSCODE_5AFRAME_GIMBAL_PITCH_FINETUNING_CONTROL = 0x10000B04, //云台俯仰微调 | ||
| 146 | + JZ_INSCODE_5AFRAME_GIMBAL_YAW_FINETUNING_CONTROL = 0x10000B05, //云台朝向微调 | ||
| 147 | + JZ_INSCODE_5AFRAME_GIMBAL_ROLL_FINETUNING_CONTROL = 0x10000B06, //云台旋转微调 | ||
| 148 | + | ||
| 149 | + JZ_INSCODE_5AFRAME_GIMBAL_PITCH_COMPENSATE = 0x10000B10, //云台俯仰补偿 | ||
| 150 | + | ||
| 151 | + | ||
| 152 | + JZ_INSCODE_5AFRAME_LASER_CONTROL = 0x5A5A6051, //激光控制 | ||
| 153 | + JZ_INSCODE_5AFRAME_LASER_MODE = 0x5A5A6052, //激光模式 | ||
| 154 | + JZ_INSCODE_5AFRAME_LASER_LUMEN = 0x5A5A6053, //激光模式 | ||
| 155 | + JZ_INSCODE_5AFRAME_LASER_COLOR = 0x5A5A6054, //激光模式 | ||
| 156 | + JZ_INSCODE_5AFRAME_LASER_POWER_LIMIT = 0x5A5A6055, //激光功率限制 | ||
| 157 | + JZ_INSCODE_5AFRAME_LASER_CHECKSTATUS = 0x5A5A6F53, //查询激光属性 | ||
| 158 | + | ||
| 159 | + JZ_INSCODE_5AFRAME_SEARCHLIGHT_CONTROL = 0x10000E00, //探照灯开光 | ||
| 160 | + JZ_INSCODE_5AFRAME_SEARCHLIGHT_SET_LUMEN = 0x10000E10, //设置探照灯亮度 | ||
| 161 | + JZ_INSCODE_5AFRAME_SEARCHLIGHT_SET_LUMENPOWERLIMIT = 0x10000E11, //设置探照灯亮度功率限制 | ||
| 162 | + | ||
| 163 | + JZ_INSCODE_5AFRAME_SEARCHLIGHT_SET_FREQUENCY = 0x10000E20, //设置把爆闪频率 | ||
| 164 | + JZ_INSCODE_5AFRAME_SEARCHLIGHT_MESSAGE_SUBSCRIPTION_CONTROL = 0x10000E21,//探照灯消息订阅控制 | ||
| 165 | + | ||
| 166 | + JZ_INSCODE_5AFRAME_WARNINGLIGHT_CONTROL = 0x10000F00, //警示灯模式控制 | ||
| 167 | + JZ_INSCODE_5AFRAME_WARNINGLIGHT_CONTROL_2 = 0x10000F01, //警示灯模式控制2 | ||
| 168 | + JZ_INSCODE_5AFRAME_WARNINGLIGHT_COLOUR = 0x10000F10, //警示灯颜色控制 | ||
| 169 | + | ||
| 170 | + JZ_INSCODE_5AFRAME_OUTPUTPOWER_CONTROL = 0x10001000, //对外供电开关 | ||
| 171 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_OUTPUTPOWER = 0x10001001, //对外供电查询 | ||
| 172 | + | ||
| 173 | + JZ_INSCODE_5AFRAME_UPGRADE_PERPARE = 0x10001100, //升级准备 | ||
| 174 | + JZ_INSCODE_5AFRAME_UPGRADE_SEND_CHECKCODE = 0x10001101, //升级发送校验码 | ||
| 175 | + JZ_INSCODE_5AFRAME_UPGRADE_STRAT = 0x10001102, //升级传输开始 | ||
| 176 | + JZ_INSCODE_5AFRAME_UPGRADE_TRANS = 0x10001103, //升级传输数据 | ||
| 177 | + JZ_INSCODE_5AFRAME_UPGRADE_END = 0x10001104, //升级传输结束 | ||
| 178 | + | ||
| 179 | + JZ_INSCODE_5AFRAME_CHECKSTATUS_UPGRADE_STATUS = 0x5A5AA110, //升级状态查询 | ||
| 180 | + | ||
| 181 | + | ||
| 182 | + JZ_INSCODE_5AFRAME_CAMERA_VIDEO_PUSH_INDEX = 0x10001200, //设置视频推送索引 | ||
| 183 | + JZ_INSOCDE_5AFRAME_CAMERA_TAKE_PHOTO = 0x10001201, //拍照 | ||
| 184 | + JZ_INSCODE_5AFRAME_CAMERA_VIDEO_RECORD_START = 0x10001202, //录像开始 | ||
| 185 | + JZ_INSCODE_5AFRAME_CAMERA_VIDEO_RECORD_STOP = 0x10001203, //录像结束 | ||
| 186 | + JZ_INSCODE_5AFRAME_CAMERA_SHUTTER_CONTROL = 0x10001204, //快门控制 | ||
| 187 | + JZ_INSCODE_5AFRAME_CAMERA_FREEZE_CONTROL = 0x10001205, //冻结控制 | ||
| 188 | + | ||
| 189 | + JZ_INSOCDE_5AFRAME_IRC_CORRECT_WAY = 0x10001300, //红外校准方式 | ||
| 190 | + JZ_INSCODE_5AFRAME_IRC_SPC_PARAM = 0x10001301, //单点参数 | ||
| 191 | + JZ_INSCODE_5AFRAME_IRC_TPC_PARAM = 0x10001302, //两点参数 | ||
| 192 | + | ||
| 193 | + JZ_INSOCDE_5AFRAME_IRC_OUTPUT_COLOR_MODE = 0x10001400, //红外输出颜色模式 | ||
| 194 | + JZ_INSCODE_5AFRAME_IRC_PSEUDO_COLOR_PARAM = 0x10001401, //红外伪彩色 | ||
| 195 | + JZ_INSCODE_5AFRAME_IRC_GAS_ENHANCE_PARAM = 0x10001402, //红外气体增强 | ||
| 196 | + | ||
| 197 | +//5B类帧 | ||
| 198 | + JZ_INSCODE_5BFRAME_FRAME = 0x10004000, //发送帧 | ||
| 199 | + | ||
| 200 | + JZ_INSCODE_5BFRAME_INITIATECONNECT = 0x10004101, //主动连接 | ||
| 201 | + JZ_INSCODE_5BFRAME_HEARTBEAT = 0x10004102, //心跳帧回复 | ||
| 202 | + JZ_INSCODE_5BFRAME_TIMESTAMP = 0x10004103, //时间戳帧 | ||
| 203 | + JZ_INSCODE_5BFRAME_ALL_VERSION = 0x10004104, //全版本查询 | ||
| 204 | + JZ_INSCODE_5BFRAME_ALL_SERIAL_NUMBER = 0x10004105, //全序列号查询 | ||
| 205 | + JZ_INSCODE_5BFRAME_DEVICE_MESSAGE = 0x10004107, //设备信息 | ||
| 206 | + | ||
| 207 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_DEVICE_TYPE_VERSION = 0x5B5B5059, //查询设备类型版本号; | ||
| 208 | + | ||
| 209 | + JZ_INSCODE_5BFRAME_PRESET_TASK = 0x10004120, //预置任务 | ||
| 210 | + | ||
| 211 | + JZ_INSCODE_5BFRAME_SUCESS = 0x10004200, //操作成功 | ||
| 212 | + JZ_INSCODE_5BFRAME_FILE_CHECK_DEFEAT = 0x10004201, //校验失败 | ||
| 213 | + JZ_INSCODE_5BFRAME_FILE_DECODE_DEFEAT = 0x10004202, //解码失败 | ||
| 214 | + JZ_INSCODE_5BFRAME_DEFEAT = 0x100042FF, //操作失败 | ||
| 215 | + | ||
| 216 | + JZ_INSCODE_5BFRAME_MUSICLIST_START = 0x10004300, //开启发送音乐列表帧 | ||
| 217 | + JZ_INSCODE_5BFRAME_MUSICLIST_TRANS = 0x10004301, //发送音乐列表帧 | ||
| 218 | + JZ_INSCODE_5BFRAME_MUSICLIST_STOP = 0x10004302, //结束发送音乐列表帧 | ||
| 219 | + JZ_INSCODE_5BFRAME_MUSICLIST_TRANS_2 = 0x10004303, //查询音频详细信息2型 | ||
| 220 | + | ||
| 221 | + | ||
| 222 | + JZ_INSCODE_5BFRAME_AUDIO_PLAYSTATUS = 0x10004310, //音频播放状态返回帧 | ||
| 223 | + JZ_INSCODE_5BFRAME_AUDIO_PLAYSTATUS_END = 0x10004311, //音频播放状态结束帧 | ||
| 224 | + | ||
| 225 | + JZ_INSCODE_5BFRAME_VOLUME = 0x10004400, //音量返回帧 | ||
| 226 | + JZ_INSCODE_5BFRAME_AUDIO_PLAYLOOPSTATUS = 0x10004401, //发送音频循环播放状态 | ||
| 227 | + JZ_INSCODE_5BFRAME_TTS_TONE = 0x10004402, //发送tts音色 | ||
| 228 | + JZ_INSCODE_5BFRAME_TTS_SPEED = 0x10004403, //发送tts语速 | ||
| 229 | + JZ_INSCODE_5BFRAME_AUDIO_PLAYFILENAME = 0x10004404, //当前播放的音频名字 | ||
| 230 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_AUDIO_DETAIL_MESSAGE = 0x10004405, //查询音频详细信息 | ||
| 231 | + JZ_INSCODE_5BFRAME_CURRENT_PLAY_TIME = 0x10004406, //当前播放时间 | ||
| 232 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_CURRENT_PLAYTIME = 0x10004407, //查询当前播放时间回调是否打开 | ||
| 233 | + | ||
| 234 | + | ||
| 235 | + JZ_INSCODE_5BFRAME_GIMBAL_PITCH = 0x10004500, //云台俯仰角度 | ||
| 236 | + JZ_INSCODE_5BFRAME_GIMBAL_YAW = 0x10004501, //云台航向角度 | ||
| 237 | + JZ_INSCODE_5BFRAME_GIMBAL_ROLL = 0x10004502, // | ||
| 238 | + | ||
| 239 | + JZ_INSCODE_5BFRAME_GIMBAL_PITCH_FINETUNING = 0x10004510, //云台俯仰微调值 | ||
| 240 | + | ||
| 241 | + | ||
| 242 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_SEARCHLIGHT_TEMPERATURE = 0x10004600, //查询探照灯温度 | ||
| 243 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_LASER_STATUS_CONTROL = 0x10004601, //查询激光状态_控制 | ||
| 244 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_LASER_STATUS_MODE = 0x10004602, //查询激光状态_模式 | ||
| 245 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_LASER_STATUS_LUMEN = 0x5B5B6053, //查询激光状态_亮度 | ||
| 246 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_LASER_STATUS_COLOR = 0x5B5B6054, //查询激光状态_颜色 | ||
| 247 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_LASER_STATUS_POWERLIMIT = 0x5B5B6055, //查询激光状态_功率 | ||
| 248 | + | ||
| 249 | + | ||
| 250 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_SEARCHLIGHT_FREQUENCY = 0x10004610, //查询探照灯频率 | ||
| 251 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_SEARCHLIGHT_MODE = 0x10004611, //查询探照灯模式 | ||
| 252 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_SEARCHLIGHT_LUMEN = 0x10004612, //查询探照灯流明 | ||
| 253 | + | ||
| 254 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_WARNINGLIGHT_STATUS = 0x10004700, //警示灯模式控制 | ||
| 255 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_WARNINGLIGHT_COLOR = 0x10004701, //警示灯颜色控制 | ||
| 256 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_WARNINGLIGHT_CONTROL_2 = 0x10004702, //查询警灯模式2 | ||
| 257 | + | ||
| 258 | + JZ_INSCODE_5BFRAME_SORTWAREVERSION = 0x10004800, //发送软件版本号 | ||
| 259 | + JZ_INSCODE_5BFRAME_HARDWAREVERSION = 0x10004801, //发送硬件版本号 | ||
| 260 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_SERIALNUMBER = 0x10004802, //回复序列号 | ||
| 261 | + | ||
| 262 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_OUTPUTPOWER = 0x10004900, //对外供电查询 | ||
| 263 | + | ||
| 264 | + JZ_INSCODE_5BFRAME_OPUS_DECODE_STATUS = 0x10005000, //opus解码状态 | ||
| 265 | + JZ_INSCODE_5BFRAME_OPUS_TRANS_STOP_AND_CHECK = 0x10005904, //opus传输结束并校验 | ||
| 266 | + | ||
| 267 | + JZ_INSCODE_5BFRAME_OPUSLIST_START = 0x10005910, //开启发送opus列表帧 | ||
| 268 | + JZ_INSCODE_5BFRAME_OPUSLIST_TRANS = 0x10005911, //传输opus列表帧 | ||
| 269 | + JZ_INSCODE_5BFRAME_OPUSLIST_END = 0x10005912, //传输opus列表帧 | ||
| 270 | + | ||
| 271 | + JZ_INSCODE_5BFRAME_UPGRADE_PERPARE = 0x10001100, //升级准备 | ||
| 272 | + JZ_INSCODE_5BFRAME_UPGRADE_SEND_CHECKCODE = 0x10001101, //升级发送校验码 | ||
| 273 | + JZ_INSCODE_5BFRAME_UPGRADE_STRAT = 0x10001102, //升级传输开始 | ||
| 274 | + JZ_INSCODE_5BFRAME_UPGRADE_TRANS = 0x10001103, //升级传输数据 | ||
| 275 | + JZ_INSCODE_5BFRAME_UPGRADE_END = 0x10001104, //升级传输结束 | ||
| 276 | + JZ_INSCODE_5BFRAME_UPGRADE_CHECKRESULT = 0x10001105, //升级校验结果 | ||
| 277 | + | ||
| 278 | + JZ_INSCODE_5BFRAME_CHECKSTATUS_UPGRADE_STATUS = 0x5B5BA110, //升级状态 | ||
| 279 | + | ||
| 280 | +//6A类 | ||
| 281 | + JZ_INSCODE_6AFRAME_FRAME = 0x10008000, //发送帧 | ||
| 282 | + | ||
| 283 | + JZ_INSCODE_6AFRAME_DEBUG_INS = 0x10008080, //调试指令 | ||
| 284 | + | ||
| 285 | + JZ_INSCODE_6AFRAME_SET_GIMBAL_ORIGIN = 0x10008101, //设置坐标0值 | ||
| 286 | + JZ_INSCODE_6AFRAME_SET_GIMBAL_MAXMIN_RANGE = 0x10008102, //设置云台范围最大最小值 | ||
| 287 | + JZ_INSCODE_6AFRAME_SET_LUMEN_MAXMIN_RANGE = 0x10008103, //设置灯光范围最大最小值 | ||
| 288 | + JZ_INSCODE_6AFRAME_SET_SERIALNUMBER = 0x10008104, //设置序列号 | ||
| 289 | + JZ_INSCODE_6AFRAME_SERVO_SELFCHECK = 0x10008105, //舵机自检 | ||
| 290 | + JZ_INSCODE_6AFRAME_GIMBAL_LINKAGE_CONTROL = 0x10008106, //开关云台联动 | ||
| 291 | + | ||
| 292 | + JZ_INSCODE_6AFRAME_WRITE_APP_NAME = 0x6A6A6940, //写入app名称 | ||
| 293 | + JZ_INSCODE_6AFRAME_WRITE_APP_ID = 0x6A6A6941, //写入app id | ||
| 294 | + JZ_INSCODE_6AFRAME_WRITE_APP_KEY = 0x6A6A6942, //写入app key | ||
| 295 | + JZ_INSCODE_6AFRAME_WRITE_APP_LICENSE = 0x6A6A6943, //写入app license | ||
| 296 | + JZ_INSCODE_6AFRAME_WRITE_DEVELOPER_ACCOUNT = 0x6A6A6944, //写入开发者账号 | ||
| 297 | + | ||
| 298 | + JZ_INSCODE_6AFREAM_CHECKSTATUS_USERINFO = 0x6A6A694F, //查询用户信息 | ||
| 299 | + | ||
| 300 | + JZ_INSCODE_6AFRAME_CHECKSTATUS_SECONDARY_DEVICE_NAME = 0x10008400, //查询从设备设备名 | ||
| 301 | + JZ_INSCODE_6AFRAME_CHECKSTATUS_GIMBAL_LINKAGE = 0x10008401, //查询云台联动 | ||
| 302 | + | ||
| 303 | + JZ_INSCODE_6AFRAME_UART_BITRATE_CHANGE = 0x10008500, //串口比特率修改 | ||
| 304 | + | ||
| 305 | + JZ_INSCODE_6AFRAME_SPECIAL_PARAMETERS = 0x10008510, //设置特殊参数 | ||
| 306 | + JZ_INSCODE_6AFRAME_CHECK_SPECIAL_PARAMETERS = 0x10008511, //查询特殊参数 | ||
| 307 | + | ||
| 308 | +//6B类 | ||
| 309 | + JZ_INSCODE_6BFRAME_CHECKSTATUS_SECONDARY_DEVICE_NAME = 0x1000C400, //回复从设备名 | ||
| 310 | + JZ_INSCODE_6BFRAME_CHECKSTATUS_GIMBAL_LINKAGE = 0x1000C401, //回复云台联动 | ||
| 311 | + JZ_INSCODE_6BFRAME_CHECK_SPECIAL_PARAMETERS = 0x1000C511, //回复特殊参数 | ||
| 312 | + | ||
| 313 | + JZ_INSCODE_6BFRAME_WRITE_APP_NAME = 0x6B6B6940, //写入app名称 | ||
| 314 | + JZ_INSCODE_6BFRAME_WRITE_APP_ID = 0x6B6B6941, //写入app id | ||
| 315 | + JZ_INSCODE_6BFRAME_WRITE_APP_KEY = 0x6B6B6942, //写入app key | ||
| 316 | + JZ_INSCODE_6BFRAME_WRITE_APP_LICENSE = 0x6B6B6943, //写入app license | ||
| 317 | + JZ_INSCODE_6BFRAME_WRITE_DEVELOPER_ACCOUNT = 0x6B6B6944, //写入开发者账号 | ||
| 318 | + | ||
| 319 | +} JZ_InsCode; | ||
| 320 | + | ||
| 321 | + | ||
| 322 | +/* Exported types ------------------------------------------------------------*/ | ||
| 323 | + | ||
| 324 | + | ||
| 325 | +/* Exported functions --------------------------------------------------------*/ | ||
| 326 | + | ||
| 327 | +#ifdef __cplusplus | ||
| 328 | +} | ||
| 329 | +#endif | ||
| 330 | + | ||
| 331 | +#endif |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_Platform.h | ||
| 4 | + * 用于记录各类码的表 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_PLATFORM_H | ||
| 11 | +#define JZSDK_PLATFORM_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | +#include "../JZsdk_typedef/JZsdk_typedef.h" | ||
| 15 | + | ||
| 16 | +#ifdef __cplusplus | ||
| 17 | +extern "C" { | ||
| 18 | +#endif | ||
| 19 | + | ||
| 20 | + | ||
| 21 | +/* Exported constants --------------------------------------------------------*/ | ||
| 22 | +/* 常亮定义*/ | ||
| 23 | + | ||
| 24 | +#define JZSDK_FILE_NAME_SIZE_MAX (128) //文件名最大长度128 | ||
| 25 | +#define JZSDK_FILE_PATH_SIZE_MAX (256) //文件路径最大长度256 | ||
| 26 | +#define JZSDK_CMD_SIZE (256) //cmd指令最大长度 | ||
| 27 | +#define JZSDK_DIR_SIZE (256) //目录名最大长度 | ||
| 28 | + | ||
| 29 | +typedef struct { | ||
| 30 | + U16_t year; | ||
| 31 | + U8_t month; | ||
| 32 | + U8_t day; | ||
| 33 | + U8_t hour; | ||
| 34 | + U8_t minute; | ||
| 35 | + U8_t second; | ||
| 36 | +} T_JZsdkTime; | ||
| 37 | + | ||
| 38 | +typedef struct T_JZsdkFileInfo{ | ||
| 39 | + U32_t size; | ||
| 40 | + T_JZsdkTime createTime; | ||
| 41 | + T_JZsdkTime modifyTime; | ||
| 42 | + char path[JZSDK_FILE_PATH_SIZE_MAX]; | ||
| 43 | + bool isDir; | ||
| 44 | +} T_JZsdkFileInfo; | ||
| 45 | + | ||
| 46 | +typedef struct T_JZsdkVersionInfo{ | ||
| 47 | + U8_t MajorVersion; | ||
| 48 | + U8_t MinorVersion; | ||
| 49 | + U8_t ModifyVersion; | ||
| 50 | + U8_t DebugVersion; | ||
| 51 | +}T_JZsdkVersionInfo; | ||
| 52 | + | ||
| 53 | + | ||
| 54 | +/* Exported macro ------------------------------------------------------------*/ | ||
| 55 | + | ||
| 56 | + | ||
| 57 | +/* Exported types ------------------------------------------------------------*/ | ||
| 58 | + | ||
| 59 | + | ||
| 60 | +/* Exported functions --------------------------------------------------------*/ | ||
| 61 | + | ||
| 62 | +#ifdef __cplusplus | ||
| 63 | +} | ||
| 64 | +#endif | ||
| 65 | + | ||
| 66 | +#endif | ||
| 67 | + | ||
| 68 | + |
| 1 | + | ||
| 2 | + | ||
| 3 | +/** | ||
| 4 | + ******************************************************************** | ||
| 5 | + * @file JZsdk_ReturnCode.h | ||
| 6 | + * 用于记录各类码的表 | ||
| 7 | + * | ||
| 8 | + ********************************************************************* | ||
| 9 | + */ | ||
| 10 | + | ||
| 11 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 12 | +#ifndef JZSDK_RETURNCODE_H | ||
| 13 | +#define JZSDK_RETURNCODE_H | ||
| 14 | + | ||
| 15 | +/* Includes ------------------------------------------------------------------*/ | ||
| 16 | +#include "../JZsdk_typedef/JZsdk_typedef.h" | ||
| 17 | + | ||
| 18 | +#ifdef __cplusplus | ||
| 19 | +extern "C" { | ||
| 20 | +#endif | ||
| 21 | + | ||
| 22 | +/* Exported constants --------------------------------------------------------*/ | ||
| 23 | +/* 常亮定义*/ | ||
| 24 | + | ||
| 25 | + | ||
| 26 | + | ||
| 27 | + | ||
| 28 | + | ||
| 29 | + | ||
| 30 | + | ||
| 31 | +/* Exported types ------------------------------------------------------------*/ | ||
| 32 | + | ||
| 33 | + | ||
| 34 | +/* Exported functions --------------------------------------------------------*/ | ||
| 35 | +const char* JZsdk_GetReturnCodeMessage(T_JZsdkReturnCode ReturnCode); | ||
| 36 | + | ||
| 37 | +#ifdef __cplusplus | ||
| 38 | +} | ||
| 39 | +#endif | ||
| 40 | + | ||
| 41 | +#endif |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_SMT_Code.h | ||
| 4 | + * 用于序列号管理的表 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_SMT_CODE_H | ||
| 11 | +#define JZSDK_SMT_CODE_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | + | ||
| 22 | +typedef enum | ||
| 23 | +{ | ||
| 24 | + // 设备序列号类型 | ||
| 25 | + UNDEFINED_SNM = 0x0000, //未定义类型序列号 | ||
| 26 | + STANDARD_DJI_SNM = 0x0001, // 大疆转接环序列号类型 | ||
| 27 | + STANDARD_JZ_1_SNM = 0x0002, // JZ-1型序列号 | ||
| 28 | + STANDARD_JZ_2_SNM = 0x0003, // JZ-2型序列号 2023.12.14 制定 | ||
| 29 | +} JZSDK_SNM_TPYE; | ||
| 30 | + | ||
| 31 | +typedef enum | ||
| 32 | +{ | ||
| 33 | + // 设备激活码状态 0 未存在序列号 1 旧版序列号 2新版序列号未激活 3新版序列号已激活 | ||
| 34 | + SNM_NOT_EXISTS = 0x0000, // (未存在序列号) | ||
| 35 | + SNM_HAVE_ACTIVATED = 0x0001, // 已激活 | ||
| 36 | + SNM_NOT_ACTIVATED = 0x0002, // 未激活 | ||
| 37 | + SNM_ERROR_ACTIVATED = 0x0003, //激活错误状态 | ||
| 38 | +} JZSDK_SNM_STATUS; | ||
| 39 | + | ||
| 40 | +typedef enum | ||
| 41 | +{ | ||
| 42 | + STANDARD_DJI_SNM_LENGTH = 14, //dji序列号默认长度14 | ||
| 43 | + STANDARD_JZ_1_SUM_LENGTH = 14, //极至标准1长度太多种拉 喊话器最长是14 | ||
| 44 | + STANDARD_JZ_2_SUM_LENGTH = 16, //极至标准2 16长度 | ||
| 45 | +}JZSDK_SNM_STANDARD_LENGTH; | ||
| 46 | + | ||
| 47 | +typedef enum | ||
| 48 | +{ | ||
| 49 | + STANDARD_JZ_2_CN = 0x0001, //极至标准2通用码 | ||
| 50 | + STANDARD_JZ_2_EN = 0x0002, //极至标准2海外码 | ||
| 51 | +}JZSDK_FIREWARM_CODE; | ||
| 52 | + | ||
| 53 | +typedef enum | ||
| 54 | +{ | ||
| 55 | + STANDARD_JZ_2_F1 = 0x0001, //通用版本固件 | ||
| 56 | + | ||
| 57 | +}JZSKD_SPECIAL_VERSION; | ||
| 58 | + | ||
| 59 | + | ||
| 60 | +#ifdef __cplusplus | ||
| 61 | +} | ||
| 62 | +#endif | ||
| 63 | + | ||
| 64 | +#endif |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_WidgetCode.h | ||
| 4 | + * 用于控件线程的的表 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_WIDGET_CODE_H | ||
| 11 | +#define JZSDK_WIDGET_CODE_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | +typedef enum JZsdk_Widget_Control | ||
| 22 | +{ | ||
| 23 | + // 控件类 | ||
| 24 | + JZSDK_WIDGET_LASTSONG = 0x0000, // 控件上一曲 | ||
| 25 | + JZSDK_WIDGET_NEXTSONG = 0x0001, // 控件下一曲 | ||
| 26 | + JZSDK_WIDGET_PLAYANDSTOP = 0x0002, // 控件播放暂停 | ||
| 27 | + JZSDK_WIDGET_VOLUME = 0x003, // 控件音量 | ||
| 28 | + JZSDK_WIDGET_TTS_SPEED = 0x0004, // 控件tts速度 | ||
| 29 | + JZSDK_WIDGET_TTS_TONE = 0x0005, // 控件tts音色 | ||
| 30 | + JZSDK_WIDGET_LOOP_PLAY = 0x0010, // 控件循环播放 | ||
| 31 | + | ||
| 32 | + JZSDK_WIDGET_VIDEOPUSH_INDEX = 0x0021, //切换视频流 | ||
| 33 | + JZSDK_WIDGET_TEMP_MEASUREMENT_MODE = 0x0022, //测温 | ||
| 34 | + JZSDK_WIDGET_SHUTTER_SWITCH = 0x0023, //快门开关 | ||
| 35 | + JZSDK_WIDGET_FREEZE_VIDEO = 0x0024, //冻结视频流 | ||
| 36 | + JZSDK_WIDGET_PSEUDO_MODE = 0x0025, //色彩输出模式 | ||
| 37 | + JZSDK_WIDGET_ZOOM_SIZE = 0x0026, //焦距 | ||
| 38 | + JZSDK_WIDGET_SPC_RESET = 0x0027, //spc重置 | ||
| 39 | + JZSDK_WIDGET_PSEUDO_COLOR = 0x0028, //伪彩颜色 | ||
| 40 | + JZSDK_WIDGET_CAMERA_CORRECT_MODE = 0x0029, //相机纠正模式 | ||
| 41 | + JZSDK_WIDGET_GAS_ENHANCEMENT_COLOR = 0x0030, //气体增强颜色 | ||
| 42 | + | ||
| 43 | + JZSDK_WIDGET_SPC_MODE = 0x0031, //单点纠正模式 | ||
| 44 | + JZSDK_WIDGET_SPC_AUTO_TIME = 0x0032, //自动单点纠正间隔 | ||
| 45 | + | ||
| 46 | + JZSDK_WIDGET_TPC_MODE = 0x0033, //tpc模式 | ||
| 47 | + | ||
| 48 | + JZSDK_WIDGET_BAD_PIXEL_CORRECT_MODE = 0x0034, //坏点纠正模式 | ||
| 49 | + JZSDK_WIDGET_BAD_PIXEL_CORRECT = 0x0035, //开启纠正 | ||
| 50 | + | ||
| 51 | + | ||
| 52 | + JZSDK_WIDGET_GAS_ENHANCEMENT_CORRECT = 0x0036, //气体增强纠正 | ||
| 53 | + JZSDK_WIDGET_IRC_MARK_LOW_AND_HIGH_DATA = 0x0037, //红外标记高低数据 | ||
| 54 | + | ||
| 55 | + JZSDK_WIDGET_GAS_ENHANCEMENT_CORRECT_HIGH_CALIBRATION = 0x0038, //气体增强纠正高温校准 | ||
| 56 | + JZSDK_WIDGET_GAS_ENHANCEMENT_CORRECT_LOW_CALIBRATION = 0x0039, //气体增强纠正低温校准 | ||
| 57 | + | ||
| 58 | + | ||
| 59 | + JZSDK_WIDGET_WARNLIGHT_COLOR_1 = 0x0040, //警告灯颜色1 | ||
| 60 | + JZSDK_WIDGET_WARNLIGHT_COLOR_2 = 0x0041, //警告灯颜色2 | ||
| 61 | + | ||
| 62 | + JZSDK_WIDGET_WARNLIGHT_MODE = 0x0042, //警告灯模式 | ||
| 63 | + | ||
| 64 | + JZSDK_WIDGET_SIDE_LASER_MODE = 0x0050, //侧射激光模式 | ||
| 65 | + JZSDK_WIDGET_SIDE_LASER_LUMEN = 0x0051, //侧面激光亮度 | ||
| 66 | + JZSDK_WIDGET_SIDE_LASER_COLOR = 0x0052, //侧面激光颜色 | ||
| 67 | + | ||
| 68 | + JZSDK_WIDGET_PRSET_TASK = 0x0053, //预设任务 | ||
| 69 | + | ||
| 70 | + JZSDK_WIDGET_GIMBAL_SINGLE_COMPENSATION_LEFT = 0x0060, //左云台单轴补偿 | ||
| 71 | + JZSDK_WIDGET_GIMBAL_SINGLE_COMPENSATION_RIGHT = 0x0061, //右云台单轴补偿 | ||
| 72 | +}JZsdk_Widget_Control; | ||
| 73 | + | ||
| 74 | + | ||
| 75 | +/* Exported types ------------------------------------------------------------*/ | ||
| 76 | + | ||
| 77 | + | ||
| 78 | +/* Exported functions --------------------------------------------------------*/ | ||
| 79 | + | ||
| 80 | +#ifdef __cplusplus | ||
| 81 | +} | ||
| 82 | +#endif | ||
| 83 | + | ||
| 84 | +#endif |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_AttributeDef.h | ||
| 4 | + * 用于记录属性的表 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_ATTRIBUTEDEF_H | ||
| 11 | +#define JZSDK_ATTRIBUTEDEF_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | +#include "./JZsdk_typedef.h" | ||
| 15 | + | ||
| 16 | + | ||
| 17 | +#ifdef __cplusplus | ||
| 18 | +extern "C" { | ||
| 19 | +#endif | ||
| 20 | + | ||
| 21 | +/* Exported constants --------------------------------------------------------*/ | ||
| 22 | +/* 常亮定义*/ | ||
| 23 | + | ||
| 24 | + | ||
| 25 | +/* Exported types ------------------------------------------------------------*/ | ||
| 26 | + | ||
| 27 | +//时间结构体 | ||
| 28 | +typedef struct { | ||
| 29 | + U16_t year; | ||
| 30 | + U8_t month; | ||
| 31 | + U8_t day; | ||
| 32 | + U8_t hour; | ||
| 33 | + U8_t minute; | ||
| 34 | + U8_t second; | ||
| 35 | +}t_JZdateTime; | ||
| 36 | + | ||
| 37 | + | ||
| 38 | +//GPS时间 | ||
| 39 | +typedef U32_t T_JZsdkAttributeGpsTime; | ||
| 40 | + | ||
| 41 | +//GPS日期 | ||
| 42 | +typedef U32_t T_JZsdkAttributeGpsDate; | ||
| 43 | + | ||
| 44 | +//gps经度 | ||
| 45 | +typedef T_JZsdkVector3d T_JZsdkAttributeGpsPosition; | ||
| 46 | + | ||
| 47 | +/* Exported functions --------------------------------------------------------*/ | ||
| 48 | + | ||
| 49 | + | ||
| 50 | + | ||
| 51 | +#ifdef __cplusplus | ||
| 52 | +} | ||
| 53 | +#endif | ||
| 54 | + | ||
| 55 | +#endif |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_ErrorCode.h | ||
| 4 | + * 用于错误码的表 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_ERRORCODE_H | ||
| 11 | +#define JZSDK_ERRORCODE_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | + | ||
| 22 | + | ||
| 23 | +/* Exported types ------------------------------------------------------------*/ | ||
| 24 | +typedef enum { | ||
| 25 | + JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS = 0x0000, | ||
| 26 | + JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE = 0x0001, | ||
| 27 | + JZ_ERROR_SYSTEM_MODULE_CODE_HARDLY_FAILURE = 0x0003, //严重错误 | ||
| 28 | + JZ_ERROR_SYSTEM_MODULE_CODE_INVALID_PARAMETER = 0x0002, //文件指针错误 | ||
| 29 | + JZ_ERROR_SYSTEM_MODULE_CODE_MEMORY_ALLOC_FAILED = 0x0004, //内存分配失败 | ||
| 30 | + JZ_ERROR_SYSTEM_MODULE_CODE_IS_BUSY = 0x0005, //忙错误 | ||
| 31 | + JZ_ERROR_SYSTEM_MODULE_CODE_CHECK_CODE_ERROR = 0x0006, //校验码错误 | ||
| 32 | + JZ_ERROR_SYSTEM_MODULE_CODE_BUFFER_SIZE_NOT_ENOUGH = 0x0007, //缓冲区大小不足 | ||
| 33 | +} JZ_SYSTEM_Code; | ||
| 34 | + | ||
| 35 | +typedef enum { | ||
| 36 | + JZ_ERROR_SYSTEM_FRAME_ERROR = 0x0100, | ||
| 37 | + | ||
| 38 | +} JZ_Syetem_frame_ErrorCode; | ||
| 39 | + | ||
| 40 | +typedef enum { | ||
| 41 | + JZ_ERRORCODE_MUSIC_NOT_FOUND_IN_LIST = 0x1000 | ||
| 42 | + | ||
| 43 | +} JZ_Megaphone_music_ErrorCode; | ||
| 44 | + | ||
| 45 | +typedef enum { | ||
| 46 | + JZ_ERRORCODE_REALTIMEVOICE_HAS_BEEN_ON = 0x1201 | ||
| 47 | + | ||
| 48 | +} JZ_Megaphone_opus_ErrorCode; | ||
| 49 | + | ||
| 50 | +typedef enum { | ||
| 51 | + JZ_ERRORCODE_TTS_INVALID_TONE = 0x1300, | ||
| 52 | + JZ_ERRORCODE_TTS_INVALID_SPEED = 0x1301, | ||
| 53 | + JZ_ERRORCODE_TTS_INVALID_ADDTONE = 0x1302, | ||
| 54 | + | ||
| 55 | +} JZ_Megaphone_TTS_ErrorCode; | ||
| 56 | + | ||
| 57 | +typedef enum { | ||
| 58 | + JZ_ERRORCODE_GIMBAL_INVALID_PITCH = 0x4000, | ||
| 59 | + JZ_ERRORCODE_GIMBAL_INVALID_YAW = 0x4001, | ||
| 60 | + JZ_ERRORCODE_GIMBAL_INVALID_ROLL = 0x4002, | ||
| 61 | + | ||
| 62 | +} JZ_Gimbal_ErrorCode; | ||
| 63 | + | ||
| 64 | + | ||
| 65 | +typedef enum { | ||
| 66 | + JZ_ERROR_CHECKCODE_CHECK_ERROR = 0x5000, //校验码错误 | ||
| 67 | + JZ_ERROR_CHECKCODE_DECODE_ERROR = 0x5001, //解码错误 | ||
| 68 | + | ||
| 69 | +} JZ_CheckCode; //检查校验码 | ||
| 70 | + | ||
| 71 | +typedef enum { | ||
| 72 | + JZ_ERROR_SYSTEM_MODULE_CODE_NO_UPGRADE_FILE = 0x6000, //没有升级文件 | ||
| 73 | +}JZ_Ugrade_ErrorCode; | ||
| 74 | + | ||
| 75 | +/* Exported functions --------------------------------------------------------*/ | ||
| 76 | + | ||
| 77 | +#ifdef __cplusplus | ||
| 78 | +} | ||
| 79 | +#endif | ||
| 80 | + | ||
| 81 | +#endif |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_FileType.h | ||
| 4 | + * 用于记录文件类型的表 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_FILE_TYPE_H | ||
| 11 | +#define JZSDK_FILE_TYPE_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | + | ||
| 22 | + | ||
| 23 | +/* Exported types ------------------------------------------------------------*/ | ||
| 24 | +typedef enum { | ||
| 25 | + AUDIO_TYPE_WAV = 0x00000001, | ||
| 26 | + AUDIO_TYPE_MP3 = 0x00000002, | ||
| 27 | + AUDIO_TYPE_OPUS = 0x00000003, | ||
| 28 | + AUDIO_TYPE_PCM = 0x00000004, | ||
| 29 | +} JZ_AUDIO_FILE_TYPE; | ||
| 30 | + | ||
| 31 | +/* Exported functions --------------------------------------------------------*/ | ||
| 32 | + | ||
| 33 | +#ifdef __cplusplus | ||
| 34 | +} | ||
| 35 | +#endif | ||
| 36 | + | ||
| 37 | +#endif |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_typedef.h | ||
| 4 | + * 用于记录各类码的表 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_TYPEDEF_H | ||
| 11 | +#define JZSDK_TYPEDEF_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | +#include <stdint.h> | ||
| 15 | +#include <stdbool.h> | ||
| 16 | +#include <stddef.h> | ||
| 17 | +#include <string.h> | ||
| 18 | +#include <stdlib.h> | ||
| 19 | +#include <stdio.h> | ||
| 20 | +#include <string.h> | ||
| 21 | + | ||
| 22 | +#ifdef __cplusplus | ||
| 23 | +extern "C" { | ||
| 24 | +#endif | ||
| 25 | + | ||
| 26 | +#include "./JZsdk_ErrorCodeDef.h" | ||
| 27 | +#include "./JZsdk_FileTypeDef.h" | ||
| 28 | + | ||
| 29 | +/* Exported constants --------------------------------------------------------*/ | ||
| 30 | +/* 常亮定义*/ | ||
| 31 | + | ||
| 32 | + | ||
| 33 | +/* Exported macro ------------------------------------------------------------*/ | ||
| 34 | +//重定义一个返回码 | ||
| 35 | +typedef uint64_t T_JZsdkReturnCode; | ||
| 36 | +typedef uint8_t U8_t; | ||
| 37 | +typedef uint16_t U16_t; | ||
| 38 | +typedef uint32_t U32_t; | ||
| 39 | +typedef uint64_t U64_t; | ||
| 40 | + | ||
| 41 | +#define JZ_U8 U8_t | ||
| 42 | +#define JZ_U16 U16_t | ||
| 43 | +#define JZ_U32 U32_t | ||
| 44 | +#define JZ_U64 U64_t | ||
| 45 | + | ||
| 46 | +// typedef unsigned long T_JZsdkReturnCode; | ||
| 47 | +// typedef unsigned char U8_t; | ||
| 48 | +// typedef unsigned short U16_t; | ||
| 49 | +// typedef unsigned int U32_t; | ||
| 50 | +// typedef unsigned long U64_t; | ||
| 51 | + | ||
| 52 | +typedef double F64_t; | ||
| 53 | +typedef float F32_t; | ||
| 54 | + | ||
| 55 | +#define JZ_F64 F64_t | ||
| 56 | +#define JZ_F32 F32_t | ||
| 57 | + | ||
| 58 | +#define JZSDK_SINGLE_THREAD 0 //jz单线程 | ||
| 59 | +#define JZSDK_MULTI_THREAD 1 //jz多线程 | ||
| 60 | + | ||
| 61 | +//线程权柄 | ||
| 62 | +typedef void *T_JZTaskHandle; | ||
| 63 | +//互斥锁权柄 | ||
| 64 | +typedef void *T_JZsdkMutexHandle; | ||
| 65 | +//信号量权柄 | ||
| 66 | +typedef void *T_JZsdkSemaHandle; | ||
| 67 | +//文件权柄 | ||
| 68 | +typedef void *T_JZsdkFileHandle; | ||
| 69 | +//目录权柄 | ||
| 70 | +typedef void *T_JZsdkDirHandle; | ||
| 71 | + | ||
| 72 | + | ||
| 73 | + | ||
| 74 | +typedef struct T_JZsdkVector3d | ||
| 75 | +{ | ||
| 76 | + int x; | ||
| 77 | + int y; | ||
| 78 | + int z; | ||
| 79 | +}T_JZsdkVector3d; | ||
| 80 | + | ||
| 81 | +typedef struct T_JZsdkVector3f | ||
| 82 | +{ | ||
| 83 | + F32_t x; | ||
| 84 | + F32_t y; | ||
| 85 | + F32_t z; | ||
| 86 | +}T_JZsdkVector3f; | ||
| 87 | + | ||
| 88 | +typedef struct { | ||
| 89 | + int pitch; /*!< Specifies int32 value of pitch for attitude. */ | ||
| 90 | + int roll; /*!< Specifies int32 value of roll for attitude */ | ||
| 91 | + int yaw; /*!< Specifies int32 value of yaw for attitude */ | ||
| 92 | +} T_JZsdkAttitude3d; | ||
| 93 | + | ||
| 94 | +typedef struct { | ||
| 95 | + F32_t pitch; /*!< Specifies float value of pitch for attitude. */ | ||
| 96 | + F32_t roll; /*!< Specifies float value of roll for attitude */ | ||
| 97 | + F32_t yaw; /*!< Specifies float value of yaw for attitude */ | ||
| 98 | +} T_JZsdkAttitude3f; | ||
| 99 | + | ||
| 100 | +typedef enum E_JZ_SingleCompensationMode{ | ||
| 101 | + JZ_SINGLE_COMPENSATION_MODE_PITCH_LEFT = 0, | ||
| 102 | + JZ_SINGLE_COMPENSATION_MODE_PITCH_RIGHT = 1, | ||
| 103 | +}E_JZ_SingleCompensationMode; | ||
| 104 | + | ||
| 105 | +typedef enum E_JZ_GimbalSingleCalibrationMode{ | ||
| 106 | + JZ_GIMBAL_SINGLE_CALIBRATION_MODE_LEFT_MAX = 0, | ||
| 107 | + JZ_GIMBAL_SINGLE_CALIBRATION_MODE_LEFT_MIN = 1, | ||
| 108 | + JZ_GIMBAL_SINGLE_CALIBRATION_MODE_LEFT_ZERO = 2, | ||
| 109 | + JZ_GIMBAL_SINGLE_CALIBRATION_MODE_LEFT_RESET = 3, | ||
| 110 | + JZ_GIMBAL_SINGLE_CALIBRATION_MODE_LEFT_DEBUG_ANGLE_RESET = 4, | ||
| 111 | + JZ_GIMBAL_SINGLE_CALIBRATION_MODE_RIGHT_MAX = 5, | ||
| 112 | + JZ_GIMBAL_SINGLE_CALIBRATION_MODE_RIGHT_MIN = 6, | ||
| 113 | + JZ_GIMBAL_SINGLE_CALIBRATION_MODE_RIGHT_ZERO = 7, | ||
| 114 | + JZ_GIMBAL_SINGLE_CALIBRATION_MODE_RIGHT_RESET = 8, | ||
| 115 | + JZ_GIMBAL_SINGLE_CALIBRATION_MODE_RIGHT_DEBUG_ANGLE_RESET = 9, | ||
| 116 | + | ||
| 117 | +}E_JZ_GimbalSingleCalibrationMode; | ||
| 118 | + | ||
| 119 | +/* Exported types ------------------------------------------------------------*/ | ||
| 120 | + | ||
| 121 | + | ||
| 122 | +/* Exported functions --------------------------------------------------------*/ | ||
| 123 | + | ||
| 124 | +#ifdef __cplusplus | ||
| 125 | +} | ||
| 126 | +#endif | ||
| 127 | + | ||
| 128 | +#endif | ||
| 129 | + | ||
| 130 | + |
| 1 | +#include <stdio.h> | ||
| 2 | +#include "./JZsdk_FrameComparsion.h" | ||
| 3 | +#include "../JZsdk_Code/JZsdk_Code.h" | ||
| 4 | + | ||
| 5 | +/************************* | ||
| 6 | + * | ||
| 7 | + * 获取帧的序列号 | ||
| 8 | + * | ||
| 9 | + * ***************************/ | ||
| 10 | +int JZsdk_Get_FrameSequence(char *DealBuf) | ||
| 11 | +{ | ||
| 12 | + return DealBuf[6]; | ||
| 13 | +} | ||
| 14 | + | ||
| 15 | +/************************* | ||
| 16 | + * | ||
| 17 | + * 获取帧的长度 | ||
| 18 | + * | ||
| 19 | + * ***************************/ | ||
| 20 | +int JZsdk_Get_FrameLength(char *DealBuf) | ||
| 21 | +{ | ||
| 22 | + // 转换为 unsigned char 避免符号扩展问题 | ||
| 23 | + unsigned char *buf = (unsigned char *)DealBuf; | ||
| 24 | + | ||
| 25 | + // 正确计算:高位字节左移8位 + 低位字节 | ||
| 26 | + return (buf[3] << 8) | buf[4]; | ||
| 27 | +} | ||
| 28 | + | ||
| 29 | +/*************************** | ||
| 30 | + * 、 | ||
| 31 | + * | ||
| 32 | + * 帧校对 获取功能 | ||
| 33 | + * | ||
| 34 | + * | ||
| 35 | + * ***********************/ | ||
| 36 | +int JZsdk_FrameComparsion(char *getdata, int len) | ||
| 37 | +{ | ||
| 38 | + //1、判断是否是5A帧 | ||
| 39 | + if (getdata[0] == 0x5A && getdata[1] == 0x5A && getdata[2] == 0x77) | ||
| 40 | + { | ||
| 41 | + //printf("JZsdk_FrameComparsion:5A帧\n"); | ||
| 42 | + return JZsdk_5AFrameComparsion(getdata, len); | ||
| 43 | + } | ||
| 44 | + | ||
| 45 | + //2、判断是否是5B帧 | ||
| 46 | + if (getdata[0] == 0x5b && getdata[1] == 0x5b && getdata[2] == 0x77) | ||
| 47 | + { | ||
| 48 | + //printf("JZsdk_FrameComparsion:5B帧\n"); | ||
| 49 | + return JZsdk_5BFrameComparsion(getdata, len); | ||
| 50 | + } | ||
| 51 | + | ||
| 52 | + //3、判断是否是6A帧 | ||
| 53 | + if (getdata[0] == 0x6A && getdata[1] == 0x6A && getdata[2] == 0x77) | ||
| 54 | + { | ||
| 55 | + //printf("JZsdk_FrameComparsion:6A帧\n"); | ||
| 56 | + return JZsdk_6AFrameComparsion(getdata, len); | ||
| 57 | + } | ||
| 58 | + | ||
| 59 | + //4、判断是否是6B帧 | ||
| 60 | + if (getdata[0] == 0x6b && getdata[1] == 0x6b && getdata[2] == 0x77) | ||
| 61 | + { | ||
| 62 | + //printf("JZsdk_FrameComparsion:6B帧\n"); | ||
| 63 | + return JZsdk_6BFrameComparsion(getdata, len); | ||
| 64 | + } | ||
| 65 | + | ||
| 66 | + printf("接受到的帧,没有帧头或者帧尾,退出recv帧判断函数\n"); | ||
| 67 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 68 | +} |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file JZsdk_FrameComparsion.h | ||
| 4 | + * 用于帧对比的头文件 | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_FRAMECOMPARSION_H | ||
| 11 | +#define JZSDK_FRAMECOMPARSION_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | +#include "JZsdk_FrameComparsion_5Aframe.h" | ||
| 22 | +#include "JZsdk_FrameComparsion_5Bframe.h" | ||
| 23 | +#include "JZsdk_FrameComparsion_6Aframe.h" | ||
| 24 | +#include "JZsdk_FrameComparsion_6Bframe.h" | ||
| 25 | +#include "JZsdk_GetFrameTemplate.h" | ||
| 26 | + | ||
| 27 | +/* Exported types ------------------------------------------------------------*/ | ||
| 28 | + | ||
| 29 | + | ||
| 30 | +/* Exported functions --------------------------------------------------------*/ | ||
| 31 | +int JZsdk_Get_FrameSequence(char *DealBuf); | ||
| 32 | +int JZsdk_Get_FrameLength(char *DealBuf); | ||
| 33 | + | ||
| 34 | +int JZsdk_FrameComparsion(char *getdata, int len); | ||
| 35 | + | ||
| 36 | +#ifdef __cplusplus | ||
| 37 | +} | ||
| 38 | +#endif | ||
| 39 | + | ||
| 40 | +#endif |
| 1 | +#include <stdio.h> | ||
| 2 | +#include "../JZsdk_Code/JZsdk_Code.h" | ||
| 3 | + | ||
| 4 | +/****************************************************** | ||
| 5 | + | ||
| 6 | + 接收一级功能码区 | ||
| 7 | + | ||
| 8 | +/******************************************************/ | ||
| 9 | +//一级功能码是连接功能 | ||
| 10 | +static int Comparison_5AFRAME_FirstLevelCode_0x50(char *getdata) | ||
| 11 | +{ | ||
| 12 | + //二级功能位 | ||
| 13 | + switch (getdata[8]) | ||
| 14 | + { | ||
| 15 | + //开启连接 | ||
| 16 | + case 0x51: | ||
| 17 | + return JZ_INSCODE_5AFRAME_ASKFORCONNECT; | ||
| 18 | + break; | ||
| 19 | + | ||
| 20 | + //设备电源状态 | ||
| 21 | + case 0x52: | ||
| 22 | + return JZ_INSCODE_5AFRAME_FRAME_POWER_STATUS; | ||
| 23 | + break; | ||
| 24 | + | ||
| 25 | + //心跳帧 | ||
| 26 | + case 0x53: | ||
| 27 | + return JZ_INSCODE_5AFRAME_HEARTBEAT; | ||
| 28 | + break; | ||
| 29 | + | ||
| 30 | + //时间戳帧 | ||
| 31 | + case 0x54: | ||
| 32 | + return JZ_INSCODE_5AFRAME_TIMESTAMP; | ||
| 33 | + break; | ||
| 34 | + | ||
| 35 | + //所有版本号帧 | ||
| 36 | + case 0x55: | ||
| 37 | + return JZ_INSCODE_5AFRAME_ALL_VERSION; | ||
| 38 | + break; | ||
| 39 | + | ||
| 40 | + //所有序列号帧 | ||
| 41 | + case 0x56: | ||
| 42 | + return JZ_INSCODE_5AFRAME_ALL_SERIAL_NUMBER; | ||
| 43 | + break; | ||
| 44 | + | ||
| 45 | + //log信息打印 | ||
| 46 | + case 0x57: | ||
| 47 | + return JZ_INSCODE_5AFRAME_LOG_MESSAGE_PRINTF; | ||
| 48 | + break; | ||
| 49 | + | ||
| 50 | + //获取设备信息帧 | ||
| 51 | + case 0x58: | ||
| 52 | + return JZ_INSCODE_5AFRAME_DEVICE_MESSAGE; | ||
| 53 | + break; | ||
| 54 | + | ||
| 55 | + //设备类型版本查询 | ||
| 56 | + case 0x59: | ||
| 57 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_DEVICE_TYPE_VERSION; | ||
| 58 | + break; | ||
| 59 | + | ||
| 60 | + //预设任务帧 | ||
| 61 | + case 0x60: | ||
| 62 | + return JZ_INSCODE_5AFRAME_PRESET_TASK; | ||
| 63 | + break; | ||
| 64 | + | ||
| 65 | + default: | ||
| 66 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 67 | + break; | ||
| 68 | + } | ||
| 69 | +} | ||
| 70 | +//一级功能码是语音 或是 文件功能 | ||
| 71 | +static int Comparison_5AFRAME_FirstLevelCode_0x51(char *getdata) | ||
| 72 | +{ | ||
| 73 | + //二级功能位 | ||
| 74 | + switch (getdata[8]) | ||
| 75 | + { | ||
| 76 | + //开启语音 | ||
| 77 | + case 0xb1: | ||
| 78 | + return JZ_INSCODE_5AFRAME_REALTIMEMP2_START; | ||
| 79 | + break; | ||
| 80 | + | ||
| 81 | + //结束语音 | ||
| 82 | + case 0xb2: | ||
| 83 | + return JZ_INSCODE_5AFRAME_REALTIMEMP2_STOP; | ||
| 84 | + break; | ||
| 85 | + | ||
| 86 | + //有限制传输mp2语言 | ||
| 87 | + case 0xb3: | ||
| 88 | + return JZ_INSCODE_5AFRAME_REALTIMEMP2_LIMIT_TRANSMISSION; | ||
| 89 | + break; | ||
| 90 | + | ||
| 91 | + //打开音频文件上传 | ||
| 92 | + case 0x01: | ||
| 93 | + return JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START; | ||
| 94 | + break; | ||
| 95 | + | ||
| 96 | + //有限制传输音频文件 | ||
| 97 | + case 0x02: | ||
| 98 | + return JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_LIMIT_TRANSMISSION; | ||
| 99 | + break; | ||
| 100 | + | ||
| 101 | + //带偏移量的传输音频文件 | ||
| 102 | + case 0x05: | ||
| 103 | + return JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_LIMIT_TRANSMISSION_2; | ||
| 104 | + break; | ||
| 105 | + | ||
| 106 | + //关闭音频文件上传 | ||
| 107 | + case 0x03: | ||
| 108 | + return JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP; | ||
| 109 | + break; | ||
| 110 | + | ||
| 111 | + //关闭音频文件上传并校验 | ||
| 112 | + case 0x04: | ||
| 113 | + return JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP_AND_CHECK; | ||
| 114 | + break; | ||
| 115 | + | ||
| 116 | + default: | ||
| 117 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 118 | + break; | ||
| 119 | + } | ||
| 120 | +} | ||
| 121 | +//一级功能码是音频/功放/音量调节 | ||
| 122 | +static int Comparison_5AFRAME_FirstLevelCode_0x52(char *getdata) | ||
| 123 | +{ | ||
| 124 | + //二级功能位 | ||
| 125 | + switch (getdata[8]) | ||
| 126 | + { | ||
| 127 | + //播放指定音频 | ||
| 128 | + case 0x02: | ||
| 129 | + return JZ_INSCODE_5AFRAME_AUDIO_PLAYFILE; | ||
| 130 | + break; | ||
| 131 | + | ||
| 132 | + //音频继续播放 | ||
| 133 | + case 0x04: | ||
| 134 | + return JZ_INSCODE_5AFRAME_AUDIO_CONTINUE; | ||
| 135 | + break; | ||
| 136 | + | ||
| 137 | + //音频暂停播放 | ||
| 138 | + case 0x05: | ||
| 139 | + return JZ_INSCODE_5AFRAME_AUDIO_PAUSE; | ||
| 140 | + break; | ||
| 141 | + | ||
| 142 | + //音频停止播放 | ||
| 143 | + case 0x06: | ||
| 144 | + return JZ_INSCODE_5AFRAME_AUDIO_STOP; | ||
| 145 | + break; | ||
| 146 | + | ||
| 147 | + //音频上一曲 | ||
| 148 | + case 0x07: | ||
| 149 | + return JZ_INSCODE_5AFRAME_AUDIO_LASTSONG; | ||
| 150 | + break; | ||
| 151 | + | ||
| 152 | + //音频下一曲 | ||
| 153 | + case 0x08: | ||
| 154 | + return JZ_INSCODE_5AFRAME_AUDIO_NEXTSONG; | ||
| 155 | + break; | ||
| 156 | + | ||
| 157 | + //强制关闭功放 | ||
| 158 | + case 0x20: | ||
| 159 | + return JZ_INSCODE_5AFRAME_AMPLIFIER_STOP; | ||
| 160 | + break; | ||
| 161 | + | ||
| 162 | + //强制开启功放 | ||
| 163 | + case 0x21: | ||
| 164 | + return JZ_INSCODE_5AFRAME_AMPLIFIER_OPEN; | ||
| 165 | + break; | ||
| 166 | + | ||
| 167 | + //恢复自动功放 | ||
| 168 | + case 0x22: | ||
| 169 | + return JZ_INSCODE_5AFRAME_AMPLIFIER_AUTO; | ||
| 170 | + break; | ||
| 171 | + | ||
| 172 | + //设置回传时间 | ||
| 173 | + case 0x30: | ||
| 174 | + return JZ_INSCODE_5AFRAME_CURRENT_PLAY_TIME; | ||
| 175 | + break; | ||
| 176 | + | ||
| 177 | + //调节音量 | ||
| 178 | + case 0x10: | ||
| 179 | + return JZ_INSCODE_5AFRAME_VOLUME; | ||
| 180 | + break; | ||
| 181 | + | ||
| 182 | + default: | ||
| 183 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 184 | + break; | ||
| 185 | + } | ||
| 186 | +} | ||
| 187 | +//一级功能码是查询状态 | ||
| 188 | +static int Comparison_5AFRAME_FirstLevelCode_0x53(char *getdata) | ||
| 189 | +{ | ||
| 190 | + //二级功能位 | ||
| 191 | + switch (getdata[8]) | ||
| 192 | + { | ||
| 193 | + //查询音量 | ||
| 194 | + case 0x01: | ||
| 195 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_VOLUME; | ||
| 196 | + break; | ||
| 197 | + | ||
| 198 | + //查询播放状态 | ||
| 199 | + case 0x02: | ||
| 200 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_PLAY; | ||
| 201 | + break; | ||
| 202 | + | ||
| 203 | + //查询云台角度(已舍弃) | ||
| 204 | + case 0x03: | ||
| 205 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_GIMBAL; | ||
| 206 | + break; | ||
| 207 | + | ||
| 208 | + //查询播放文件名 | ||
| 209 | + case 0x04: | ||
| 210 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_PLAYFILENAME; | ||
| 211 | + break; | ||
| 212 | + | ||
| 213 | + //查询是否打开循环 | ||
| 214 | + case 0x05: | ||
| 215 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_LOOPPLAY; | ||
| 216 | + break; | ||
| 217 | + | ||
| 218 | + //查询音色 | ||
| 219 | + case 0x06: | ||
| 220 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_TTSTONE; | ||
| 221 | + break; | ||
| 222 | + | ||
| 223 | + //查询语速 | ||
| 224 | + case 0x07: | ||
| 225 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_TTSSPEED; | ||
| 226 | + break; | ||
| 227 | + | ||
| 228 | + //查询是否打开了播放时间回传 | ||
| 229 | + case 0x08: | ||
| 230 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_CURRENT_PLAYTIME; | ||
| 231 | + break; | ||
| 232 | + | ||
| 233 | + //查询软件版本号 | ||
| 234 | + case 0xf1: | ||
| 235 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_SOFTWAREVERSION; | ||
| 236 | + break; | ||
| 237 | + | ||
| 238 | + default: | ||
| 239 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 240 | + break; | ||
| 241 | + } | ||
| 242 | + | ||
| 243 | +} | ||
| 244 | +//一级功能码是删除 | ||
| 245 | +static int Comparison_5AFRAME_FirstLevelCode_0x54(char *getdata) | ||
| 246 | +{ | ||
| 247 | + //二级功能位 | ||
| 248 | + switch (getdata[8]) | ||
| 249 | + { | ||
| 250 | + //删除音频 | ||
| 251 | + case 0x02: | ||
| 252 | + return JZ_INSCODE_5AFRAME_DELETE_AUDIO; | ||
| 253 | + break; | ||
| 254 | + | ||
| 255 | + //删除录音 | ||
| 256 | + case 0x03: | ||
| 257 | + return JZ_INSCODE_5AFRAME_DELETE_VOICE_RECORD; | ||
| 258 | + break; | ||
| 259 | + | ||
| 260 | + // //删除视频 | ||
| 261 | + // case 0x02: | ||
| 262 | + // return JZ_INSCODE_DELETE_VIDEO_RECORD; | ||
| 263 | + // break; | ||
| 264 | + | ||
| 265 | + default: | ||
| 266 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 267 | + break; | ||
| 268 | + } | ||
| 269 | +} | ||
| 270 | +//一级功能码开启关闭循环 | ||
| 271 | +static int Comparison_5AFRAME_FirstLevelCode_0x55(char *getdata) | ||
| 272 | +{ | ||
| 273 | + //二级功能位 | ||
| 274 | + switch (getdata[8]) | ||
| 275 | + { | ||
| 276 | + //开启关闭循环 | ||
| 277 | + case 0x00: | ||
| 278 | + return JZ_INSCODE_5AFRAME_PLAY_LOOP; | ||
| 279 | + break; | ||
| 280 | + | ||
| 281 | + //设置循环播放间隔 | ||
| 282 | + case 0x01: | ||
| 283 | + return JZ_INSCODE_5AFRAME_ADUIO_PLAY_LOOP_INTERVAL; | ||
| 284 | + break; | ||
| 285 | + | ||
| 286 | + default: | ||
| 287 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 288 | + break; | ||
| 289 | + } | ||
| 290 | +} | ||
| 291 | +//一级功能码 | ||
| 292 | +static int Comparison_5AFRAME_FirstLevelCode_0x56(char *getdata) | ||
| 293 | +{ | ||
| 294 | + //二级功能位 | ||
| 295 | + switch (getdata[8]) | ||
| 296 | + { | ||
| 297 | + default: | ||
| 298 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 299 | + break; | ||
| 300 | + } | ||
| 301 | +} | ||
| 302 | +//一级功能码是 文本播放 | ||
| 303 | +static int Comparison_5AFRAME_FirstLevelCode_0x57(char *getdata) | ||
| 304 | +{ | ||
| 305 | + //二级功能位 | ||
| 306 | + switch (getdata[8]) | ||
| 307 | + { | ||
| 308 | + //设置音色 | ||
| 309 | + case 0x01: | ||
| 310 | + return JZ_INSCODE_5AFRAME_TTS_SET_TONE; | ||
| 311 | + break; | ||
| 312 | + | ||
| 313 | + //设置语速 | ||
| 314 | + case 0x02: | ||
| 315 | + return JZ_INSCODE_5AFRAME_TTS_SET_SPEED; | ||
| 316 | + break; | ||
| 317 | + | ||
| 318 | + //开始发送TTS | ||
| 319 | + case 0x03: | ||
| 320 | + return JZ_INSCODE_5AFRAME_TTS_TRANS_START; | ||
| 321 | + break; | ||
| 322 | + | ||
| 323 | + case 0x04: | ||
| 324 | + return JZ_INSCODE_5AFRAME_TTS_TRANS_STOP; | ||
| 325 | + break; | ||
| 326 | + | ||
| 327 | + //定长传输文本 | ||
| 328 | + case 0x05: | ||
| 329 | + return JZ_INSCODE_5AFRAME_TTS_TRANS_LIMIT_TRANSMISSION; | ||
| 330 | + break; | ||
| 331 | + | ||
| 332 | + default: | ||
| 333 | + break; | ||
| 334 | + } | ||
| 335 | +} | ||
| 336 | +//一级功能 查询列表 | ||
| 337 | +static int Comparison_5AFRAME_FirstLevelCode_0x58(char *getdata) | ||
| 338 | +{ | ||
| 339 | + //二级功能位 | ||
| 340 | + switch (getdata[8]) | ||
| 341 | + { | ||
| 342 | + //获取音乐列表 | ||
| 343 | + case 0x01: | ||
| 344 | + return JZ_INSCODE_5AFRAME_AUDIO_GETMUSICLIST; | ||
| 345 | + break; | ||
| 346 | + | ||
| 347 | + //查询歌曲类音频详细信息 | ||
| 348 | + case 0x03: | ||
| 349 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_AUDIO_DETAIL_MESSAGE; | ||
| 350 | + break; | ||
| 351 | + | ||
| 352 | + //获取pcm列表 | ||
| 353 | + case 0x10: | ||
| 354 | + return JZ_INSCODE_5AFRAME_PCM_GETPCMLIST; | ||
| 355 | + break; | ||
| 356 | + | ||
| 357 | + default: | ||
| 358 | + break; | ||
| 359 | + } | ||
| 360 | +} | ||
| 361 | +//一级功能码opus功能 | ||
| 362 | +static int Comparison_5AFRAME_FirstLevelCode_0x59(char *getdata) | ||
| 363 | +{ | ||
| 364 | + //二级功能位 | ||
| 365 | + switch (getdata[8]) | ||
| 366 | + { | ||
| 367 | + case 0x10: | ||
| 368 | + return JZ_INSCODE_5AFRAME_OPUS_PLAY; | ||
| 369 | + break; | ||
| 370 | + | ||
| 371 | + //opus录音传输 | ||
| 372 | + //opus传输开始 | ||
| 373 | + case 0xF1: | ||
| 374 | + return JZ_INSCODE_5AFRAME_OPUS_TRANS_START_1; | ||
| 375 | + break; | ||
| 376 | + | ||
| 377 | + //opus传输二型 | ||
| 378 | + case 0xF5: | ||
| 379 | + return JZ_INSCODE_5AFRAME_OPUS_TRANS_START_2; | ||
| 380 | + break; | ||
| 381 | + | ||
| 382 | + //opus传输结束 | ||
| 383 | + case 0xF2: | ||
| 384 | + return JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP; | ||
| 385 | + break; | ||
| 386 | + | ||
| 387 | + case 0xF4: | ||
| 388 | + return JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP_AND_CHECK; | ||
| 389 | + break; | ||
| 390 | + | ||
| 391 | + //opus定长传输 | ||
| 392 | + case 0xF3: | ||
| 393 | + return JZ_INSCODE_5AFRAME_OPUS_TRANS_LIMIT_TRANSMISSION; | ||
| 394 | + break; | ||
| 395 | + | ||
| 396 | + //opus播放 | ||
| 397 | + case 0x01: | ||
| 398 | + return JZ_INSCODE_5AFRAME_OPUS_PLAY; | ||
| 399 | + break; | ||
| 400 | + | ||
| 401 | + //opus实时语音开始 | ||
| 402 | + case 0xE1: | ||
| 403 | + return JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_START; | ||
| 404 | + break; | ||
| 405 | + | ||
| 406 | + case 0xE2: | ||
| 407 | + return JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_STOP; | ||
| 408 | + break; | ||
| 409 | + | ||
| 410 | + //opus定长传输文件 | ||
| 411 | + case 0xE3: | ||
| 412 | + return JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_LIMIT_TRANSMISSION; | ||
| 413 | + break; | ||
| 414 | + | ||
| 415 | + default: | ||
| 416 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 417 | + break; | ||
| 418 | + } | ||
| 419 | +} | ||
| 420 | + | ||
| 421 | +//一级功能码,硬件引脚控制 | ||
| 422 | +static int Comparison_5AFRAME_FirstLevelCode_0x5A(char *getdata) | ||
| 423 | +{ | ||
| 424 | + //二级功能位 | ||
| 425 | + switch (getdata[8]) | ||
| 426 | + { | ||
| 427 | + //对外供电开关 | ||
| 428 | + case 0x01: | ||
| 429 | + return JZ_INSCODE_5AFRAME_OUTPUTPOWER_CONTROL; | ||
| 430 | + break; | ||
| 431 | + | ||
| 432 | + //对外供电查询 | ||
| 433 | + case 0x02: | ||
| 434 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_OUTPUTPOWER; | ||
| 435 | + break; | ||
| 436 | + | ||
| 437 | + default: | ||
| 438 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 439 | + break; | ||
| 440 | + } | ||
| 441 | +} | ||
| 442 | + | ||
| 443 | +//一级功能码 激光控制 | ||
| 444 | +static int Comparison_5AFRAME_FirstLevelCode_0x60(char *getdata) | ||
| 445 | +{ | ||
| 446 | + //二级功能位 | ||
| 447 | + switch (getdata[8]) | ||
| 448 | + { | ||
| 449 | + //激光控制 | ||
| 450 | + case 0x51: | ||
| 451 | + return JZ_INSCODE_5AFRAME_LASER_CONTROL; | ||
| 452 | + break; | ||
| 453 | + | ||
| 454 | + case 0x52: | ||
| 455 | + return JZ_INSCODE_5AFRAME_LASER_MODE; | ||
| 456 | + break; | ||
| 457 | + | ||
| 458 | + case 0x53: | ||
| 459 | + return JZ_INSCODE_5AFRAME_LASER_LUMEN; | ||
| 460 | + break; | ||
| 461 | + | ||
| 462 | + case 0x54: | ||
| 463 | + return JZ_INSCODE_5AFRAME_LASER_COLOR; | ||
| 464 | + break; | ||
| 465 | + | ||
| 466 | + case 0x55: | ||
| 467 | + return JZ_INSCODE_5AFRAME_LASER_POWER_LIMIT; | ||
| 468 | + break; | ||
| 469 | + default: | ||
| 470 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 471 | + break; | ||
| 472 | + } | ||
| 473 | +} | ||
| 474 | + | ||
| 475 | +//一级功能码 爆闪频率 | ||
| 476 | +static int Comparison_5AFRAME_FirstLevelCode_0x61(char *getdata) | ||
| 477 | +{ | ||
| 478 | + //二级功能位 | ||
| 479 | + switch (getdata[8]) | ||
| 480 | + { | ||
| 481 | + //爆闪频率 | ||
| 482 | + case 0x51: | ||
| 483 | + return JZ_INSCODE_5AFRAME_SEARCHLIGHT_SET_FREQUENCY; | ||
| 484 | + break; | ||
| 485 | + | ||
| 486 | + default: | ||
| 487 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 488 | + break; | ||
| 489 | + } | ||
| 490 | +} | ||
| 491 | + | ||
| 492 | +//一级功能码 灯光控制 | ||
| 493 | +static int Comparison_5AFRAME_FirstLevelCode_0x62(char *getdata) | ||
| 494 | +{ | ||
| 495 | + //二级功能位 | ||
| 496 | + switch (getdata[8]) | ||
| 497 | + { | ||
| 498 | + //灯光模式 | ||
| 499 | + case 0x51: | ||
| 500 | + return JZ_INSCODE_5AFRAME_SEARCHLIGHT_CONTROL; | ||
| 501 | + break; | ||
| 502 | + | ||
| 503 | + default: | ||
| 504 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 505 | + break; | ||
| 506 | + } | ||
| 507 | +} | ||
| 508 | + | ||
| 509 | +//一级功能码 灯光亮度 | ||
| 510 | +static int Comparison_5AFRAME_FirstLevelCode_0x63(char *getdata) | ||
| 511 | +{ | ||
| 512 | + //二级功能位 | ||
| 513 | + switch (getdata[8]) | ||
| 514 | + { | ||
| 515 | + //灯光亮度 | ||
| 516 | + case 0x51: | ||
| 517 | + return JZ_INSCODE_5AFRAME_SEARCHLIGHT_SET_LUMEN; | ||
| 518 | + break; | ||
| 519 | + | ||
| 520 | + case 0x53: | ||
| 521 | + return JZ_INSCODE_5AFRAME_SEARCHLIGHT_SET_LUMENPOWERLIMIT; | ||
| 522 | + break; | ||
| 523 | + | ||
| 524 | + default: | ||
| 525 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 526 | + break; | ||
| 527 | + } | ||
| 528 | +} | ||
| 529 | + | ||
| 530 | +//一级功能码云台功能 | ||
| 531 | +static int Comparison_5AFRAME_FirstLevelCode_0x64(char *getdata) | ||
| 532 | +{ | ||
| 533 | + //二级功能位 | ||
| 534 | + switch (getdata[8]) | ||
| 535 | + { | ||
| 536 | + //云台俯仰控制 | ||
| 537 | + case 0x51: | ||
| 538 | + return JZ_INSCODE_5AFRAME_GIMBAL_PITCH_CONTROL; | ||
| 539 | + break; | ||
| 540 | + | ||
| 541 | + //云台俯仰微调控制 | ||
| 542 | + case 0x52: | ||
| 543 | + return JZ_INSCODE_5AFRAME_GIMBAL_PITCH_FINETUNING_CONTROL; | ||
| 544 | + break; | ||
| 545 | + | ||
| 546 | + //加减单边云台俯仰微调值(补偿) | ||
| 547 | + case 0x53: | ||
| 548 | + return JZ_INSCODE_5AFRAME_GIMBAL_PITCH_COMPENSATE; | ||
| 549 | + break; | ||
| 550 | + | ||
| 551 | + default: | ||
| 552 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 553 | + break; | ||
| 554 | + } | ||
| 555 | +} | ||
| 556 | + | ||
| 557 | +//一级功能码 云台航向 | ||
| 558 | +static int Comparison_5AFRAME_FirstLevelCode_0x65(char *getdata) | ||
| 559 | +{ | ||
| 560 | + | ||
| 561 | +} | ||
| 562 | + | ||
| 563 | +//一级功能码 警灯模式控制 | ||
| 564 | +static int Comparison_5AFRAME_FirstLevelCode_0x66(char *getdata) | ||
| 565 | +{ | ||
| 566 | + switch (getdata[8]) | ||
| 567 | + { | ||
| 568 | + //警灯模式控制 | ||
| 569 | + case 0x51: | ||
| 570 | + return JZ_INSCODE_5AFRAME_WARNINGLIGHT_CONTROL; | ||
| 571 | + break; | ||
| 572 | + | ||
| 573 | + //警灯模式控制2 | ||
| 574 | + case 0x52: | ||
| 575 | + return JZ_INSCODE_5AFRAME_WARNINGLIGHT_CONTROL_2; | ||
| 576 | + break; | ||
| 577 | + | ||
| 578 | + //警灯模式查询2 | ||
| 579 | + case 0xA2: | ||
| 580 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_WARNINGLIGHT_CONTROL_2; | ||
| 581 | + break; | ||
| 582 | + | ||
| 583 | + default: | ||
| 584 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 585 | + break; | ||
| 586 | + } | ||
| 587 | +} | ||
| 588 | + | ||
| 589 | +//一级功能码 警灯眼色选择 | ||
| 590 | +static int Comparison_5AFRAME_FirstLevelCode_0x67(char *getdata) | ||
| 591 | +{ | ||
| 592 | + switch (getdata[8]) | ||
| 593 | + { | ||
| 594 | + //警灯颜色选择 | ||
| 595 | + case 0x51: | ||
| 596 | + return JZ_INSCODE_5AFRAME_WARNINGLIGHT_COLOUR; | ||
| 597 | + break; | ||
| 598 | + | ||
| 599 | + default: | ||
| 600 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 601 | + break; | ||
| 602 | + } | ||
| 603 | +} | ||
| 604 | + | ||
| 605 | +//一级功能码 探照灯消息订阅 | ||
| 606 | +static int Comparison_5AFRAME_FirstLevelCode_0x68(char *getdata) | ||
| 607 | +{ | ||
| 608 | + switch (getdata[8]) | ||
| 609 | + { | ||
| 610 | + //探照灯消息订阅 | ||
| 611 | + case 0x51: | ||
| 612 | + return JZ_INSCODE_5AFRAME_SEARCHLIGHT_MESSAGE_SUBSCRIPTION_CONTROL; | ||
| 613 | + break; | ||
| 614 | + | ||
| 615 | + default: | ||
| 616 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 617 | + break; | ||
| 618 | + } | ||
| 619 | + | ||
| 620 | +} | ||
| 621 | + | ||
| 622 | +//一级功能码 私有协议 | ||
| 623 | +static int Comparison_5AFRAME_FirstLevelCode_0x69(char *getdata) | ||
| 624 | +{ | ||
| 625 | + | ||
| 626 | +} | ||
| 627 | + | ||
| 628 | +//一级功能码 6F查询帧 | ||
| 629 | +static int Comparison_5AFRAME_FirstLevelCode_0x6F(char *getdata) | ||
| 630 | +{ | ||
| 631 | + //二级功能位 | ||
| 632 | + switch (getdata[8]) | ||
| 633 | + { | ||
| 634 | + //灯光查询 | ||
| 635 | + case 0x51: | ||
| 636 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_LIGHTATTRIBUTE; | ||
| 637 | + break; | ||
| 638 | + | ||
| 639 | + //温度查询 | ||
| 640 | + case 0x52: | ||
| 641 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_TEMPERATURE; | ||
| 642 | + break; | ||
| 643 | + | ||
| 644 | + //激光查询 | ||
| 645 | + case 0x53: | ||
| 646 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_LASER_STATUS; | ||
| 647 | + break; | ||
| 648 | + | ||
| 649 | + //云台角度查询 | ||
| 650 | + case 0x54: | ||
| 651 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_GIMBAL; | ||
| 652 | + break; | ||
| 653 | + | ||
| 654 | + //警灯状态查询 | ||
| 655 | + case 0x55: | ||
| 656 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_WARNINGLIGHT_STATUS; | ||
| 657 | + break; | ||
| 658 | + | ||
| 659 | + //警灯颜色查询 | ||
| 660 | + case 0x56: | ||
| 661 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_WARNINGLIGHT_COLOR; | ||
| 662 | + break; | ||
| 663 | + | ||
| 664 | + //产品序列号查询 | ||
| 665 | + case 0x57: | ||
| 666 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_SERIALNUMBER; | ||
| 667 | + break; | ||
| 668 | + | ||
| 669 | + //云台微调值查询 | ||
| 670 | + case 0x58: | ||
| 671 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_GIMBAL_FINETUNING; | ||
| 672 | + break; | ||
| 673 | + | ||
| 674 | + default: | ||
| 675 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 676 | + break; | ||
| 677 | + } | ||
| 678 | +} | ||
| 679 | + | ||
| 680 | + | ||
| 681 | +//一级功能码 升级帧 | ||
| 682 | +static int Comparison_5AFRAME_FirstLevelCode_0xA1(char *getdata) | ||
| 683 | +{ | ||
| 684 | + //二级功能位 | ||
| 685 | + switch (getdata[8]) | ||
| 686 | + { | ||
| 687 | + //升级准备 | ||
| 688 | + case 0x01: | ||
| 689 | + return JZ_INSCODE_5AFRAME_UPGRADE_PERPARE; | ||
| 690 | + break; | ||
| 691 | + | ||
| 692 | + //升级校验码 | ||
| 693 | + case 0x02: | ||
| 694 | + return JZ_INSCODE_5AFRAME_UPGRADE_SEND_CHECKCODE; | ||
| 695 | + break; | ||
| 696 | + | ||
| 697 | + //升级数据发送开始 | ||
| 698 | + case 0x03: | ||
| 699 | + return JZ_INSCODE_5AFRAME_UPGRADE_STRAT; | ||
| 700 | + break; | ||
| 701 | + | ||
| 702 | + //升级数据发送结束 | ||
| 703 | + case 0x04: | ||
| 704 | + return JZ_INSCODE_5AFRAME_UPGRADE_END; | ||
| 705 | + break; | ||
| 706 | + | ||
| 707 | + //升级发送数据 | ||
| 708 | + case 0xF1: | ||
| 709 | + return JZ_INSCODE_5AFRAME_UPGRADE_TRANS; | ||
| 710 | + break; | ||
| 711 | + | ||
| 712 | + //升级状态查询 | ||
| 713 | + case 0x10: | ||
| 714 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_UPGRADE_STATUS; | ||
| 715 | + break; | ||
| 716 | + | ||
| 717 | + default: | ||
| 718 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 719 | + break; | ||
| 720 | + } | ||
| 721 | +} | ||
| 722 | + | ||
| 723 | + | ||
| 724 | +static int Comparison_5AFRAME_FirstLevelCode_0x90(char *getdata) | ||
| 725 | +{ | ||
| 726 | + switch (getdata[8]) | ||
| 727 | + { | ||
| 728 | + case 0x00: | ||
| 729 | + return JZ_INSCODE_5AFRAME_CAMERA_VIDEO_PUSH_INDEX; | ||
| 730 | + break; | ||
| 731 | + | ||
| 732 | + case 0x01: | ||
| 733 | + return JZ_INSOCDE_5AFRAME_CAMERA_TAKE_PHOTO; | ||
| 734 | + break; | ||
| 735 | + | ||
| 736 | + case 0x02: | ||
| 737 | + return JZ_INSCODE_5AFRAME_CAMERA_VIDEO_RECORD_START; | ||
| 738 | + break; | ||
| 739 | + | ||
| 740 | + case 0x03: | ||
| 741 | + return JZ_INSCODE_5AFRAME_CAMERA_VIDEO_RECORD_STOP; | ||
| 742 | + break; | ||
| 743 | + | ||
| 744 | + case 0x04: | ||
| 745 | + return JZ_INSCODE_5AFRAME_CAMERA_SHUTTER_CONTROL; | ||
| 746 | + break; | ||
| 747 | + | ||
| 748 | + case 0x05: | ||
| 749 | + return JZ_INSCODE_5AFRAME_CAMERA_FREEZE_CONTROL; | ||
| 750 | + break; | ||
| 751 | + | ||
| 752 | + default: | ||
| 753 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 754 | + break; | ||
| 755 | + } | ||
| 756 | +} | ||
| 757 | + | ||
| 758 | +static int Comparison_5AFRAME_FirstLevelCode_0x93(char *getdata) | ||
| 759 | +{ | ||
| 760 | + switch (getdata[8]) | ||
| 761 | + { | ||
| 762 | + case 0x00: | ||
| 763 | + return JZ_INSOCDE_5AFRAME_IRC_CORRECT_WAY; | ||
| 764 | + break; | ||
| 765 | + | ||
| 766 | + case 0x10: | ||
| 767 | + return JZ_INSCODE_5AFRAME_IRC_SPC_PARAM; | ||
| 768 | + break; | ||
| 769 | + | ||
| 770 | + case 0x11: | ||
| 771 | + return JZ_INSCODE_5AFRAME_IRC_TPC_PARAM; | ||
| 772 | + break; | ||
| 773 | + | ||
| 774 | + default: | ||
| 775 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 776 | + break; | ||
| 777 | + } | ||
| 778 | +} | ||
| 779 | + | ||
| 780 | +static int Comparison_5AFRAME_FirstLevelCode_0x94(char *getdata) | ||
| 781 | +{ | ||
| 782 | + switch (getdata[8]) | ||
| 783 | + { | ||
| 784 | + case 0x00: | ||
| 785 | + return JZ_INSOCDE_5AFRAME_IRC_OUTPUT_COLOR_MODE; | ||
| 786 | + break; | ||
| 787 | + | ||
| 788 | + case 0x10: | ||
| 789 | + return JZ_INSCODE_5AFRAME_IRC_PSEUDO_COLOR_PARAM; | ||
| 790 | + break; | ||
| 791 | + | ||
| 792 | + case 0x11: | ||
| 793 | + return JZ_INSCODE_5AFRAME_IRC_GAS_ENHANCE_PARAM; | ||
| 794 | + break; | ||
| 795 | + | ||
| 796 | + default: | ||
| 797 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 798 | + break; | ||
| 799 | + } | ||
| 800 | +} | ||
| 801 | + | ||
| 802 | + | ||
| 803 | +/****************************************************************** | ||
| 804 | + | ||
| 805 | + 回复帧对比 | ||
| 806 | + 成功返回帧类型 无对比数据返回 JZ_ERROR_SYSTEM_FRAME_ERROR | ||
| 807 | + | ||
| 808 | +******************************************************************/ | ||
| 809 | +int JZsdk_5AFrameComparsion(char *getdata, int len) | ||
| 810 | +{ | ||
| 811 | + //1、判断帧头帧尾 | ||
| 812 | + if ( | ||
| 813 | + ( (getdata[0]!= 0x5a) && (getdata[1] != 0x5a) && (getdata[2]!=0x77) ) | ||
| 814 | + || ( (getdata[len -2]!= 0x00) && (getdata[ len -1] != 0x23) ) | ||
| 815 | + ) | ||
| 816 | + { | ||
| 817 | + printf("接受到的帧,没有帧头或者帧尾,退出JZsdk_5AFrameComparsion函数\n"); | ||
| 818 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 819 | + } | ||
| 820 | + | ||
| 821 | + //一级功能码 | ||
| 822 | + switch (getdata[7]) | ||
| 823 | + { | ||
| 824 | +/********************************************************************************************************************************************************* | ||
| 825 | + * | ||
| 826 | + * 连接请求码 | ||
| 827 | + * | ||
| 828 | +*********************************************************************************************************************************************************/ | ||
| 829 | + //一级功能码是连接请求 | ||
| 830 | + case 0x50: | ||
| 831 | + return Comparison_5AFRAME_FirstLevelCode_0x50(getdata); | ||
| 832 | + break; | ||
| 833 | + | ||
| 834 | +/********************************************************************************************************************************************************* | ||
| 835 | + * | ||
| 836 | + * 喊话器功能码 | ||
| 837 | + * | ||
| 838 | +*********************************************************************************************************************************************************/ | ||
| 839 | + //一级功能码 语音 / 音频文件功能 | ||
| 840 | + case 0x51: | ||
| 841 | + return Comparison_5AFRAME_FirstLevelCode_0x51(getdata); | ||
| 842 | + break; | ||
| 843 | + | ||
| 844 | + //一级功能码 音频/ 功放/ 音量调节 | ||
| 845 | + case 0x52: | ||
| 846 | + return Comparison_5AFRAME_FirstLevelCode_0x52(getdata); | ||
| 847 | + break; | ||
| 848 | + | ||
| 849 | + //一级功能码 查询状态 | ||
| 850 | + case 0x53: | ||
| 851 | + return Comparison_5AFRAME_FirstLevelCode_0x53(getdata); | ||
| 852 | + break; | ||
| 853 | + | ||
| 854 | + //一级功能码 删除 | ||
| 855 | + case 0x54: | ||
| 856 | + return Comparison_5AFRAME_FirstLevelCode_0x54(getdata); | ||
| 857 | + break; | ||
| 858 | + | ||
| 859 | + //一级功能码 开启关闭循环 | ||
| 860 | + case 0x55: | ||
| 861 | + return Comparison_5AFRAME_FirstLevelCode_0x55(getdata); | ||
| 862 | + break; | ||
| 863 | + | ||
| 864 | + //一级功能码 | ||
| 865 | + case 0x56: | ||
| 866 | + return Comparison_5AFRAME_FirstLevelCode_0x56(getdata); | ||
| 867 | + break; | ||
| 868 | + | ||
| 869 | + //一级功能码 TTS | ||
| 870 | + case 0x57: | ||
| 871 | + return Comparison_5AFRAME_FirstLevelCode_0x57(getdata); | ||
| 872 | + break; | ||
| 873 | + | ||
| 874 | + //一级功能码 查询列表功能 | ||
| 875 | + case 0x58: | ||
| 876 | + return Comparison_5AFRAME_FirstLevelCode_0x58(getdata); | ||
| 877 | + break; | ||
| 878 | + | ||
| 879 | + //一级功能码 opus | ||
| 880 | + case 0x59: | ||
| 881 | + return Comparison_5AFRAME_FirstLevelCode_0x59(getdata); | ||
| 882 | + break; | ||
| 883 | + | ||
| 884 | + //一级功能码,硬件引脚控制 | ||
| 885 | + case 0x5A: | ||
| 886 | + return Comparison_5AFRAME_FirstLevelCode_0x5A(getdata); | ||
| 887 | + break; | ||
| 888 | + | ||
| 889 | + //一级功能码 激光控制 | ||
| 890 | + case 0x60: | ||
| 891 | + return Comparison_5AFRAME_FirstLevelCode_0x60(getdata); | ||
| 892 | + break; | ||
| 893 | + | ||
| 894 | + //一级功能码 爆闪控制 | ||
| 895 | + case 0x61: | ||
| 896 | + return Comparison_5AFRAME_FirstLevelCode_0x61(getdata); | ||
| 897 | + break; | ||
| 898 | + | ||
| 899 | + //一级功能码 灯光控制 | ||
| 900 | + case 0x62: | ||
| 901 | + return Comparison_5AFRAME_FirstLevelCode_0x62(getdata); | ||
| 902 | + break; | ||
| 903 | + | ||
| 904 | + //一级功能码 灯光亮度 | ||
| 905 | + case 0x63: | ||
| 906 | + return Comparison_5AFRAME_FirstLevelCode_0x63(getdata); | ||
| 907 | + break; | ||
| 908 | + | ||
| 909 | + //一级功能码 云台俯仰 | ||
| 910 | + case 0x64: | ||
| 911 | + return Comparison_5AFRAME_FirstLevelCode_0x64(getdata); | ||
| 912 | + break; | ||
| 913 | + | ||
| 914 | + //一级功能码 云台航向 | ||
| 915 | + case 0x65: | ||
| 916 | + return Comparison_5AFRAME_FirstLevelCode_0x65(getdata); | ||
| 917 | + break; | ||
| 918 | + | ||
| 919 | + //一级功能码 警灯模式控制 | ||
| 920 | + case 0x66: | ||
| 921 | + return Comparison_5AFRAME_FirstLevelCode_0x66(getdata); | ||
| 922 | + break; | ||
| 923 | + | ||
| 924 | + //一级功能码 警灯眼色选择 | ||
| 925 | + case 0x67: | ||
| 926 | + return Comparison_5AFRAME_FirstLevelCode_0x67(getdata); | ||
| 927 | + break; | ||
| 928 | + | ||
| 929 | + //一级功能码 探照灯消息订阅 | ||
| 930 | + case 0x68: | ||
| 931 | + return Comparison_5AFRAME_FirstLevelCode_0x68(getdata); | ||
| 932 | + break; | ||
| 933 | + | ||
| 934 | + //一级功能码 私有协议 | ||
| 935 | + case 0x69: | ||
| 936 | + return Comparison_5AFRAME_FirstLevelCode_0x69(getdata); | ||
| 937 | + break; | ||
| 938 | + | ||
| 939 | + //一级功能码 6f查询帧 | ||
| 940 | + case 0x6F: | ||
| 941 | + return Comparison_5AFRAME_FirstLevelCode_0x6F(getdata); | ||
| 942 | + break; | ||
| 943 | + | ||
| 944 | + //一级功能码 90 | ||
| 945 | + case 0x90: | ||
| 946 | + return Comparison_5AFRAME_FirstLevelCode_0x90(getdata); | ||
| 947 | + break; | ||
| 948 | + | ||
| 949 | + //一级功能码 93 | ||
| 950 | + case 0x93: | ||
| 951 | + return Comparison_5AFRAME_FirstLevelCode_0x93(getdata); | ||
| 952 | + break; | ||
| 953 | + | ||
| 954 | + //一级功能码 92 | ||
| 955 | + case 0x94: | ||
| 956 | + return Comparison_5AFRAME_FirstLevelCode_0x94(getdata); | ||
| 957 | + break; | ||
| 958 | + | ||
| 959 | + //一级功能码 升级功能 | ||
| 960 | + case 0xA1: | ||
| 961 | + return Comparison_5AFRAME_FirstLevelCode_0xA1(getdata); | ||
| 962 | + break; | ||
| 963 | +/********************************************************************************************************************************************************* | ||
| 964 | + * | ||
| 965 | + * | ||
| 966 | + * | ||
| 967 | +*********************************************************************************************************************************************************/ | ||
| 968 | + default: | ||
| 969 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 970 | + break; | ||
| 971 | + } | ||
| 972 | +} | ||
| 973 | + |
| 1 | +/********************************************************************** | ||
| 2 | + * @file | ||
| 3 | + * | ||
| 4 | + * | ||
| 5 | + ********************************************************************* | ||
| 6 | + */ | ||
| 7 | + | ||
| 8 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 9 | +#ifndef JZSDK_FRAMECOMPARSION_5AFRAME_H | ||
| 10 | +#define JZSDK_FRAMECOMPARSION_5AFRAME_H | ||
| 11 | + | ||
| 12 | +/* Includes ------------------------------------------------------------------*/ | ||
| 13 | + | ||
| 14 | +#ifdef __cplusplus | ||
| 15 | +extern "C" { | ||
| 16 | +#endif | ||
| 17 | + | ||
| 18 | +/* Exported constants --------------------------------------------------------*/ | ||
| 19 | +/* 常亮定义*/ | ||
| 20 | + | ||
| 21 | +/* Exported types ------------------------------------------------------------*/ | ||
| 22 | + | ||
| 23 | +/* Exported functions --------------------------------------------------------*/ | ||
| 24 | + | ||
| 25 | +int JZsdk_5AFrameComparsion(char *getdata, int len); | ||
| 26 | + | ||
| 27 | +#ifdef __cplusplus | ||
| 28 | +} | ||
| 29 | +#endif | ||
| 30 | + | ||
| 31 | +#endif |
| 1 | +#include <stdio.h> | ||
| 2 | +#include "../JZsdk_Code/JZsdk_Code.h" | ||
| 3 | + | ||
| 4 | + | ||
| 5 | +/****************************************************** | ||
| 6 | + | ||
| 7 | + 接收一级功能码区 | ||
| 8 | + | ||
| 9 | +/******************************************************/ | ||
| 10 | +//一级功能码是连接功能 | ||
| 11 | +static int Comparison_5BFRAME_FirstLevelCode_0x50(char *getdata) | ||
| 12 | +{ | ||
| 13 | + //二级功能位 | ||
| 14 | + switch (getdata[8]) | ||
| 15 | + { | ||
| 16 | + //回复连接 | ||
| 17 | + case 0x51: | ||
| 18 | + return JZ_INSCODE_5BFRAME_INITIATECONNECT; | ||
| 19 | + break; | ||
| 20 | + | ||
| 21 | + //心跳帧回复 | ||
| 22 | + case 0x53: | ||
| 23 | + return JZ_INSCODE_5BFRAME_HEARTBEAT; | ||
| 24 | + break; | ||
| 25 | + | ||
| 26 | + //时间戳回复 | ||
| 27 | + case 0x54: | ||
| 28 | + return JZ_INSCODE_5BFRAME_TIMESTAMP; | ||
| 29 | + break; | ||
| 30 | + | ||
| 31 | + //版本号回复 | ||
| 32 | + case 0x55: | ||
| 33 | + return JZ_INSCODE_5BFRAME_ALL_VERSION; | ||
| 34 | + break; | ||
| 35 | + | ||
| 36 | + //序列号回复 | ||
| 37 | + case 0x56: | ||
| 38 | + return JZ_INSCODE_5BFRAME_ALL_SERIAL_NUMBER; | ||
| 39 | + break; | ||
| 40 | + | ||
| 41 | + //log信息打印 | ||
| 42 | + case 0x58: | ||
| 43 | + return JZ_INSCODE_5BFRAME_DEVICE_MESSAGE; | ||
| 44 | + break; | ||
| 45 | + | ||
| 46 | + //设备类型版本号返还 | ||
| 47 | + case 0x59: | ||
| 48 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_DEVICE_TYPE_VERSION; | ||
| 49 | + break; | ||
| 50 | + | ||
| 51 | + default: | ||
| 52 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 53 | + break; | ||
| 54 | + } | ||
| 55 | +} | ||
| 56 | + | ||
| 57 | +//一级功能码是操作功能 | ||
| 58 | +static int Comparison_5BFRAME_FirstLevelCode_0x51(char *getdata) | ||
| 59 | +{ | ||
| 60 | + //二级功能位 | ||
| 61 | + switch (getdata[8]) | ||
| 62 | + { | ||
| 63 | + //回复操作成功 | ||
| 64 | + case 0x01: | ||
| 65 | + return JZ_INSCODE_5BFRAME_SUCESS; | ||
| 66 | + break; | ||
| 67 | + | ||
| 68 | + //回复操作失败 | ||
| 69 | + case 0xff: | ||
| 70 | + return JZ_INSCODE_5BFRAME_DEFEAT; | ||
| 71 | + break; | ||
| 72 | + | ||
| 73 | + default: | ||
| 74 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 75 | + break; | ||
| 76 | + } | ||
| 77 | +} | ||
| 78 | +//一级功能码是音频列表功能 | ||
| 79 | +static int Comparison_5BFRAME_FirstLevelCode_0x53(char *getdata) | ||
| 80 | +{ | ||
| 81 | + //二级功能位 | ||
| 82 | + switch (getdata[8]) | ||
| 83 | + { | ||
| 84 | + //音量返回 | ||
| 85 | + case 0x01: | ||
| 86 | + return JZ_INSCODE_5BFRAME_VOLUME; | ||
| 87 | + break; | ||
| 88 | + | ||
| 89 | + //播放状态返回 | ||
| 90 | + case 0x02: | ||
| 91 | + return JZ_INSCODE_5BFRAME_AUDIO_PLAYSTATUS; | ||
| 92 | + break; | ||
| 93 | + | ||
| 94 | + //当前播放文件名返回 | ||
| 95 | + case 0x04: | ||
| 96 | + return JZ_INSCODE_5BFRAME_AUDIO_PLAYFILENAME; | ||
| 97 | + break; | ||
| 98 | + | ||
| 99 | + //查询是否开启循环 | ||
| 100 | + case 0x05: | ||
| 101 | + return JZ_INSCODE_5BFRAME_AUDIO_PLAYLOOPSTATUS; | ||
| 102 | + break; | ||
| 103 | + | ||
| 104 | + //查询音色 | ||
| 105 | + case 0x06: | ||
| 106 | + return JZ_INSCODE_5BFRAME_TTS_TONE; | ||
| 107 | + break; | ||
| 108 | + | ||
| 109 | + //查询语速 | ||
| 110 | + case 0x07: | ||
| 111 | + return JZ_INSCODE_5BFRAME_TTS_SPEED; | ||
| 112 | + break; | ||
| 113 | + | ||
| 114 | + //版本返回 | ||
| 115 | + case 0xf1: | ||
| 116 | + return JZ_INSCODE_5BFRAME_SORTWAREVERSION; | ||
| 117 | + break; | ||
| 118 | + | ||
| 119 | + //播放结束(主动返回) | ||
| 120 | + case 0xff: | ||
| 121 | + return JZ_INSCODE_5BFRAME_AUDIO_PLAYSTATUS_END; | ||
| 122 | + break; | ||
| 123 | + | ||
| 124 | + default: | ||
| 125 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 126 | + break; | ||
| 127 | + } | ||
| 128 | +} | ||
| 129 | + | ||
| 130 | +//一级功能码是音频列表功能 | ||
| 131 | +static int Comparison_5BFRAME_FirstLevelCode_0x58(char *getdata) | ||
| 132 | +{ | ||
| 133 | + //二级功能位 | ||
| 134 | + switch (getdata[8]) | ||
| 135 | + { | ||
| 136 | + //查询列表开始 | ||
| 137 | + case 0x00: | ||
| 138 | + return JZ_INSCODE_5BFRAME_MUSICLIST_START; | ||
| 139 | + break; | ||
| 140 | + | ||
| 141 | + //文件列表帧 | ||
| 142 | + case 0x02: | ||
| 143 | + return JZ_INSCODE_5BFRAME_MUSICLIST_TRANS; | ||
| 144 | + break; | ||
| 145 | + | ||
| 146 | + //查询歌曲类音频详细信息 | ||
| 147 | + case 0x03: | ||
| 148 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_AUDIO_DETAIL_MESSAGE; | ||
| 149 | + break; | ||
| 150 | + | ||
| 151 | + //结束列表返回 | ||
| 152 | + case 0xff: | ||
| 153 | + return JZ_INSCODE_5BFRAME_MUSICLIST_STOP; | ||
| 154 | + break; | ||
| 155 | + | ||
| 156 | + default: | ||
| 157 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 158 | + break; | ||
| 159 | + } | ||
| 160 | +} | ||
| 161 | + | ||
| 162 | +//一级功能码是opus功能 | ||
| 163 | +static int Comparison_5BFRAME_FirstLevelCode_0x59(char *getdata) | ||
| 164 | +{ | ||
| 165 | + //二级功能位 | ||
| 166 | + switch (getdata[8]) | ||
| 167 | + { | ||
| 168 | + //opus解码状态 | ||
| 169 | + case 0xF2: | ||
| 170 | + return JZ_INSCODE_5BFRAME_OPUS_DECODE_STATUS; | ||
| 171 | + break; | ||
| 172 | + | ||
| 173 | + default: | ||
| 174 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 175 | + break; | ||
| 176 | + } | ||
| 177 | +} | ||
| 178 | + | ||
| 179 | +//一级功能码是硬件引脚控制 | ||
| 180 | +static int Comparison_5BFRAME_FirstLevelCode_0x5A(char *getdata) | ||
| 181 | +{ | ||
| 182 | + //二级功能位 | ||
| 183 | + switch (getdata[8]) | ||
| 184 | + { | ||
| 185 | + //回复对供电开关状态返回 | ||
| 186 | + case 0x02: | ||
| 187 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_OUTPUTPOWER; | ||
| 188 | + break; | ||
| 189 | + | ||
| 190 | + default: | ||
| 191 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 192 | + break; | ||
| 193 | + } | ||
| 194 | +} | ||
| 195 | + | ||
| 196 | +//一级功能码是激光 | ||
| 197 | +static int Comparison_5BFRAME_FirstLevelCode_0x60(char *getdata) | ||
| 198 | +{ | ||
| 199 | + //二级功能位 | ||
| 200 | + switch (getdata[8]) | ||
| 201 | + { | ||
| 202 | + //回复激光查询 | ||
| 203 | + case 0x51: | ||
| 204 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_LASER_STATUS_CONTROL; | ||
| 205 | + break; | ||
| 206 | + | ||
| 207 | + case 0x52: | ||
| 208 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_LASER_STATUS_MODE; | ||
| 209 | + break; | ||
| 210 | + | ||
| 211 | + case 0x53: | ||
| 212 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_LASER_STATUS_LUMEN; | ||
| 213 | + break; | ||
| 214 | + | ||
| 215 | + case 0x54: | ||
| 216 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_LASER_STATUS_COLOR; | ||
| 217 | + break; | ||
| 218 | + | ||
| 219 | + case 0x55: | ||
| 220 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_LASER_STATUS_POWERLIMIT; | ||
| 221 | + break; | ||
| 222 | + | ||
| 223 | + default: | ||
| 224 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 225 | + break; | ||
| 226 | + } | ||
| 227 | +} | ||
| 228 | + | ||
| 229 | +//一级功能码是回复灯光频率 | ||
| 230 | +static int Comparison_5BFRAME_FirstLevelCode_0x61(char *getdata) | ||
| 231 | +{ | ||
| 232 | + //二级功能位 | ||
| 233 | + switch (getdata[8]) | ||
| 234 | + { | ||
| 235 | + //回复灯光频率 | ||
| 236 | + case 0x51: | ||
| 237 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_SEARCHLIGHT_FREQUENCY; | ||
| 238 | + break; | ||
| 239 | + | ||
| 240 | + default: | ||
| 241 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 242 | + break; | ||
| 243 | + } | ||
| 244 | +} | ||
| 245 | + | ||
| 246 | +//一级功能码是回复灯光模式 | ||
| 247 | +static int Comparison_5BFRAME_FirstLevelCode_0x62(char *getdata) | ||
| 248 | +{ | ||
| 249 | + //二级功能位 | ||
| 250 | + switch (getdata[8]) | ||
| 251 | + { | ||
| 252 | + //回复灯光模式 | ||
| 253 | + case 0x51: | ||
| 254 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_SEARCHLIGHT_MODE; | ||
| 255 | + break; | ||
| 256 | + | ||
| 257 | + default: | ||
| 258 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 259 | + break; | ||
| 260 | + } | ||
| 261 | +} | ||
| 262 | + | ||
| 263 | +//一级功能码是回复灯光亮度 | ||
| 264 | +static int Comparison_5BFRAME_FirstLevelCode_0x63(char *getdata) | ||
| 265 | +{ | ||
| 266 | + //二级功能位 | ||
| 267 | + switch (getdata[8]) | ||
| 268 | + { | ||
| 269 | + //回复灯光亮度 | ||
| 270 | + case 0x51: | ||
| 271 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_SEARCHLIGHT_LUMEN; | ||
| 272 | + break; | ||
| 273 | + | ||
| 274 | + default: | ||
| 275 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 276 | + break; | ||
| 277 | + } | ||
| 278 | +} | ||
| 279 | + | ||
| 280 | +//一级功能码是云台俯仰 | ||
| 281 | +static int Comparison_5BFRAME_FirstLevelCode_0x64(char *getdata) | ||
| 282 | +{ | ||
| 283 | + //二级功能位 | ||
| 284 | + switch (getdata[8]) | ||
| 285 | + { | ||
| 286 | + //回复云台俯仰 | ||
| 287 | + case 0x51: | ||
| 288 | + return JZ_INSCODE_5BFRAME_GIMBAL_PITCH; | ||
| 289 | + break; | ||
| 290 | + | ||
| 291 | + //回复云台俯仰微调值 | ||
| 292 | + case 0x52: | ||
| 293 | + return JZ_INSCODE_5BFRAME_GIMBAL_PITCH_FINETUNING; | ||
| 294 | + break; | ||
| 295 | + | ||
| 296 | + default: | ||
| 297 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 298 | + break; | ||
| 299 | + } | ||
| 300 | +} | ||
| 301 | +//一级功能码是云台航向 | ||
| 302 | +static int Comparison_5BFRAME_FirstLevelCode_0x65(char *getdata) | ||
| 303 | +{ | ||
| 304 | + //二级功能位 | ||
| 305 | + switch (getdata[8]) | ||
| 306 | + { | ||
| 307 | + //回复云台航向 | ||
| 308 | + case 0x51: | ||
| 309 | + return JZ_INSCODE_5BFRAME_GIMBAL_YAW; | ||
| 310 | + break; | ||
| 311 | + | ||
| 312 | + | ||
| 313 | + default: | ||
| 314 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 315 | + break; | ||
| 316 | + } | ||
| 317 | +} | ||
| 318 | +//一级功能码是回复警灯状态 | ||
| 319 | +static int Comparison_5BFRAME_FirstLevelCode_0x66(char *getdata) | ||
| 320 | +{ | ||
| 321 | + //二级功能位 | ||
| 322 | + switch (getdata[8]) | ||
| 323 | + { | ||
| 324 | + //回复警灯状态 | ||
| 325 | + case 0x51: | ||
| 326 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_WARNINGLIGHT_STATUS; | ||
| 327 | + break; | ||
| 328 | + | ||
| 329 | + //回复警灯控制2类 | ||
| 330 | + case 0xA2: | ||
| 331 | + return JZ_INSCODE_5AFRAME_CHECKSTATUS_WARNINGLIGHT_CONTROL_2; | ||
| 332 | + break; | ||
| 333 | + | ||
| 334 | + default: | ||
| 335 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 336 | + break; | ||
| 337 | + } | ||
| 338 | +} | ||
| 339 | + | ||
| 340 | +//一级功能码是回复警灯颜色 | ||
| 341 | +static int Comparison_5BFRAME_FirstLevelCode_0x67(char *getdata) | ||
| 342 | +{ | ||
| 343 | + //二级功能位 | ||
| 344 | + switch (getdata[8]) | ||
| 345 | + { | ||
| 346 | + //回复回复警灯颜色 | ||
| 347 | + case 0x51: | ||
| 348 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_WARNINGLIGHT_COLOR; | ||
| 349 | + break; | ||
| 350 | + | ||
| 351 | + | ||
| 352 | + default: | ||
| 353 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 354 | + break; | ||
| 355 | + } | ||
| 356 | +} | ||
| 357 | + | ||
| 358 | +//一级功能码是回复温度/序列号查询 | ||
| 359 | +static int Comparison_5BFRAME_FirstLevelCode_0x69(char *getdata) | ||
| 360 | +{ | ||
| 361 | + //二级功能位 | ||
| 362 | + switch (getdata[8]) | ||
| 363 | + { | ||
| 364 | + //回复温度查询 | ||
| 365 | + case 0x51: | ||
| 366 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_SEARCHLIGHT_TEMPERATURE; | ||
| 367 | + break; | ||
| 368 | + | ||
| 369 | + //回复产品序列号 | ||
| 370 | + case 0x54: | ||
| 371 | + return JZ_INSCODE_5BFRAME_CHECKSTATUS_SERIALNUMBER; | ||
| 372 | + break; | ||
| 373 | + | ||
| 374 | + default: | ||
| 375 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 376 | + break; | ||
| 377 | + } | ||
| 378 | +} | ||
| 379 | + | ||
| 380 | + | ||
| 381 | +//一级功能码 升级帧 | ||
| 382 | +static int Comparison_5AFRAME_FirstLevelCode_0xA1(char *getdata) | ||
| 383 | +{ | ||
| 384 | + //二级功能位 | ||
| 385 | + switch (getdata[8]) | ||
| 386 | + { | ||
| 387 | + //升级准备 | ||
| 388 | + case 0x01: | ||
| 389 | + return JZ_INSCODE_5BFRAME_UPGRADE_PERPARE; | ||
| 390 | + break; | ||
| 391 | + | ||
| 392 | + //升级校验码 | ||
| 393 | + case 0x02: | ||
| 394 | + return JZ_INSCODE_5BFRAME_UPGRADE_SEND_CHECKCODE; | ||
| 395 | + break; | ||
| 396 | + | ||
| 397 | + //升级数据发送开始 | ||
| 398 | + case 0x03: | ||
| 399 | + return JZ_INSCODE_5BFRAME_UPGRADE_STRAT; | ||
| 400 | + break; | ||
| 401 | + | ||
| 402 | + //升级数据发送结束 | ||
| 403 | + case 0x04: | ||
| 404 | + return JZ_INSCODE_5BFRAME_UPGRADE_END; | ||
| 405 | + break; | ||
| 406 | + | ||
| 407 | + //升级数据校验结果 | ||
| 408 | + case 0x05: | ||
| 409 | + return JZ_INSCODE_5BFRAME_UPGRADE_CHECKRESULT; | ||
| 410 | + break; | ||
| 411 | + | ||
| 412 | + //升级发送数据 | ||
| 413 | + case 0xF1: | ||
| 414 | + return JZ_INSCODE_5BFRAME_UPGRADE_TRANS; | ||
| 415 | + break; | ||
| 416 | + | ||
| 417 | + default: | ||
| 418 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 419 | + break; | ||
| 420 | + } | ||
| 421 | +} | ||
| 422 | + | ||
| 423 | +/****************************************************************** | ||
| 424 | + | ||
| 425 | + 回复帧对比 | ||
| 426 | + 成功返回帧类型 无对比数据返回 JZ_ERROR_SYSTEM_FRAME_ERROR | ||
| 427 | + | ||
| 428 | +******************************************************************/ | ||
| 429 | +int JZsdk_5BFrameComparsion(char *getdata, int len) | ||
| 430 | +{ | ||
| 431 | + //1、判断帧头帧尾 | ||
| 432 | + if ( | ||
| 433 | + ( (getdata[0]!= 0x5B) && (getdata[1] != 0x5B) && (getdata[2]!=0x77) ) | ||
| 434 | + || ( (getdata[len -2]!= 0x00) && (getdata[ len -1] != 0x23) ) | ||
| 435 | + ) | ||
| 436 | + { | ||
| 437 | + printf("接受到的帧,没有帧头或者帧尾,退出JZsdk_5BFrameComparsion函数\n"); | ||
| 438 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 439 | + } | ||
| 440 | + | ||
| 441 | + //一级功能码 | ||
| 442 | + switch (getdata[7]) | ||
| 443 | + { | ||
| 444 | + case 0x50: | ||
| 445 | + return Comparison_5BFRAME_FirstLevelCode_0x50(getdata); | ||
| 446 | + break; | ||
| 447 | + | ||
| 448 | + case 0x51: | ||
| 449 | + return Comparison_5BFRAME_FirstLevelCode_0x51(getdata); | ||
| 450 | + break; | ||
| 451 | + | ||
| 452 | + case 0x53: | ||
| 453 | + return Comparison_5BFRAME_FirstLevelCode_0x53(getdata); | ||
| 454 | + break; | ||
| 455 | + | ||
| 456 | + case 0x58: | ||
| 457 | + return Comparison_5BFRAME_FirstLevelCode_0x58(getdata); | ||
| 458 | + break; | ||
| 459 | + | ||
| 460 | + case 0x59: | ||
| 461 | + return Comparison_5BFRAME_FirstLevelCode_0x58(getdata); | ||
| 462 | + break; | ||
| 463 | + | ||
| 464 | + case 0x5A: | ||
| 465 | + return Comparison_5BFRAME_FirstLevelCode_0x5A(getdata); | ||
| 466 | + break; | ||
| 467 | + | ||
| 468 | + case 0x60: | ||
| 469 | + return Comparison_5BFRAME_FirstLevelCode_0x60(getdata); | ||
| 470 | + break; | ||
| 471 | + | ||
| 472 | + case 0x61: | ||
| 473 | + return Comparison_5BFRAME_FirstLevelCode_0x61(getdata); | ||
| 474 | + break; | ||
| 475 | + | ||
| 476 | + case 0x62: | ||
| 477 | + return Comparison_5BFRAME_FirstLevelCode_0x62(getdata); | ||
| 478 | + break; | ||
| 479 | + | ||
| 480 | + case 0x63: | ||
| 481 | + return Comparison_5BFRAME_FirstLevelCode_0x63(getdata); | ||
| 482 | + break; | ||
| 483 | + | ||
| 484 | + case 0x64: | ||
| 485 | + return Comparison_5BFRAME_FirstLevelCode_0x64(getdata); | ||
| 486 | + break; | ||
| 487 | + | ||
| 488 | + case 0x65: | ||
| 489 | + return Comparison_5BFRAME_FirstLevelCode_0x65(getdata); | ||
| 490 | + break; | ||
| 491 | + | ||
| 492 | + case 0x66: | ||
| 493 | + return Comparison_5BFRAME_FirstLevelCode_0x66(getdata); | ||
| 494 | + break; | ||
| 495 | + | ||
| 496 | + case 0x67: | ||
| 497 | + return Comparison_5BFRAME_FirstLevelCode_0x67(getdata); | ||
| 498 | + break; | ||
| 499 | + | ||
| 500 | + case 0x69: | ||
| 501 | + return Comparison_5BFRAME_FirstLevelCode_0x69(getdata); | ||
| 502 | + break; | ||
| 503 | + | ||
| 504 | + case 0xA1: | ||
| 505 | + return Comparison_5AFRAME_FirstLevelCode_0xA1(getdata); | ||
| 506 | + break; | ||
| 507 | + | ||
| 508 | + default: | ||
| 509 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 510 | + break; | ||
| 511 | + } | ||
| 512 | +} |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file | ||
| 4 | + * | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_FRAMECOMPARSION_5BFRAME_H | ||
| 11 | +#define JZSDK_FRAMECOMPARSION_5BFRAME_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | + | ||
| 22 | +/* Exported types ------------------------------------------------------------*/ | ||
| 23 | + | ||
| 24 | +/* Exported functions --------------------------------------------------------*/ | ||
| 25 | +int JZsdk_5BFrameComparsion(char *getdata, int len); | ||
| 26 | + | ||
| 27 | + | ||
| 28 | +#ifdef __cplusplus | ||
| 29 | +} | ||
| 30 | +#endif | ||
| 31 | + | ||
| 32 | +#endif |
| 1 | +#include <stdio.h> | ||
| 2 | +#include "../JZsdk_Code/JZsdk_Code.h" | ||
| 3 | + | ||
| 4 | + | ||
| 5 | +//一级功能码是私有协议 | ||
| 6 | +static int Comparison_6AFRAME_FirstLevelCode_0x10(char *getdata) | ||
| 7 | +{ | ||
| 8 | + //二级功能位 | ||
| 9 | + switch (getdata[8]) | ||
| 10 | + { | ||
| 11 | + //调试指令 | ||
| 12 | + case 0x00: | ||
| 13 | + return JZ_INSCODE_6AFRAME_DEBUG_INS; | ||
| 14 | + break; | ||
| 15 | + | ||
| 16 | + default: | ||
| 17 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 18 | + break; | ||
| 19 | + } | ||
| 20 | +} | ||
| 21 | + | ||
| 22 | + | ||
| 23 | +//一级功能码是私有协议 | ||
| 24 | +static int Comparison_6AFRAME_FirstLevelCode_0x69(char *getdata) | ||
| 25 | +{ | ||
| 26 | + //二级功能位 | ||
| 27 | + switch (getdata[8]) | ||
| 28 | + { | ||
| 29 | + //写入APP NAME | ||
| 30 | + case 0x40: | ||
| 31 | + return JZ_INSCODE_6AFRAME_WRITE_APP_NAME; | ||
| 32 | + break; | ||
| 33 | + | ||
| 34 | + //写入APP ID | ||
| 35 | + case 0x41: | ||
| 36 | + return JZ_INSCODE_6AFRAME_WRITE_APP_ID; | ||
| 37 | + break; | ||
| 38 | + | ||
| 39 | + //写入APP KEY | ||
| 40 | + case 0x42: | ||
| 41 | + return JZ_INSCODE_6AFRAME_WRITE_APP_KEY; | ||
| 42 | + break; | ||
| 43 | + | ||
| 44 | + //写入写入APP LICENSE | ||
| 45 | + case 0x43: | ||
| 46 | + return JZ_INSCODE_6AFRAME_WRITE_APP_LICENSE; | ||
| 47 | + break; | ||
| 48 | + | ||
| 49 | + //写入账号 | ||
| 50 | + case 0x44: | ||
| 51 | + return JZ_INSCODE_6AFRAME_WRITE_DEVELOPER_ACCOUNT; | ||
| 52 | + break; | ||
| 53 | + | ||
| 54 | + //读取用户信息 | ||
| 55 | + case 0x4F: | ||
| 56 | + return JZ_INSCODE_6AFREAM_CHECKSTATUS_USERINFO; | ||
| 57 | + break; | ||
| 58 | + | ||
| 59 | + //设置当前为云台零值 | ||
| 60 | + case 0x51: | ||
| 61 | + return JZ_INSCODE_6AFRAME_SET_GIMBAL_ORIGIN; | ||
| 62 | + break; | ||
| 63 | + | ||
| 64 | + //设置云台当前为最大最小值 | ||
| 65 | + case 0x52: | ||
| 66 | + return JZ_INSCODE_6AFRAME_SET_GIMBAL_MAXMIN_RANGE; | ||
| 67 | + break; | ||
| 68 | + | ||
| 69 | + //设置灯光当前亮度为最大最小值 | ||
| 70 | + case 0x53: | ||
| 71 | + return JZ_INSCODE_6AFRAME_SET_LUMEN_MAXMIN_RANGE; | ||
| 72 | + break; | ||
| 73 | + | ||
| 74 | + //设置产品序列号 | ||
| 75 | + case 0x54: | ||
| 76 | + return JZ_INSCODE_6AFRAME_SET_SERIALNUMBER; | ||
| 77 | + break; | ||
| 78 | + | ||
| 79 | + //舵机自检 | ||
| 80 | + case 0x55: | ||
| 81 | + return JZ_INSCODE_6AFRAME_SERVO_SELFCHECK; | ||
| 82 | + break; | ||
| 83 | + | ||
| 84 | + //开启关闭云台联动 | ||
| 85 | + case 0x56: | ||
| 86 | + return JZ_INSCODE_6AFRAME_GIMBAL_LINKAGE_CONTROL; | ||
| 87 | + break; | ||
| 88 | + | ||
| 89 | + | ||
| 90 | + | ||
| 91 | + default: | ||
| 92 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 93 | + break; | ||
| 94 | + } | ||
| 95 | +} | ||
| 96 | + | ||
| 97 | + | ||
| 98 | + | ||
| 99 | +//一级功能码是私有协议 | ||
| 100 | +static int Comparison_6AFRAME_FirstLevelCode_0x6F(char *getdata) | ||
| 101 | +{ | ||
| 102 | + //二级功能位 | ||
| 103 | + switch (getdata[8]) | ||
| 104 | + { | ||
| 105 | + //设置当前为云台零值 | ||
| 106 | + case 0x50: | ||
| 107 | + return JZ_INSCODE_6AFRAME_CHECKSTATUS_SECONDARY_DEVICE_NAME; | ||
| 108 | + break; | ||
| 109 | + | ||
| 110 | + //设置当前为云台零值 | ||
| 111 | + case 0x51: | ||
| 112 | + return JZ_INSCODE_6AFRAME_CHECKSTATUS_GIMBAL_LINKAGE; | ||
| 113 | + break; | ||
| 114 | + | ||
| 115 | + //串口比特率修改 | ||
| 116 | + case 0x52: | ||
| 117 | + return JZ_INSCODE_6AFRAME_UART_BITRATE_CHANGE; | ||
| 118 | + break; | ||
| 119 | + | ||
| 120 | + //设置特殊变量 | ||
| 121 | + case 0x53: | ||
| 122 | + return JZ_INSCODE_6AFRAME_SPECIAL_PARAMETERS; | ||
| 123 | + break; | ||
| 124 | + | ||
| 125 | + //查询特殊变量 | ||
| 126 | + case 0x54: | ||
| 127 | + return JZ_INSCODE_6AFRAME_CHECK_SPECIAL_PARAMETERS; | ||
| 128 | + break; | ||
| 129 | + | ||
| 130 | + default: | ||
| 131 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 132 | + break; | ||
| 133 | + } | ||
| 134 | +} | ||
| 135 | + | ||
| 136 | +/****************************************************************** | ||
| 137 | + | ||
| 138 | + 回复帧对比 | ||
| 139 | + 成功返回帧类型 无对比数据返回 JZ_ERROR_SYSTEM_FRAME_ERROR | ||
| 140 | + | ||
| 141 | +******************************************************************/ | ||
| 142 | +int JZsdk_6AFrameComparsion(char *getdata, int len) | ||
| 143 | +{ | ||
| 144 | + //1、判断帧头帧尾 | ||
| 145 | + if ( | ||
| 146 | + ( (getdata[0]!= 0x6A) && (getdata[1] != 0x6A) && (getdata[2]!=0x77) ) | ||
| 147 | + || ( (getdata[len -2]!= 0x00) && (getdata[ len -1] != 0x23) ) | ||
| 148 | + ) | ||
| 149 | + { | ||
| 150 | + printf("接受到的帧,没有帧头或者帧尾,退出JZsdk_6AFrameComparsion函数\n"); | ||
| 151 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 152 | + } | ||
| 153 | + | ||
| 154 | + //一级功能码 | ||
| 155 | + switch (getdata[7]) | ||
| 156 | + { | ||
| 157 | + case 0x10: | ||
| 158 | + return Comparison_6AFRAME_FirstLevelCode_0x10(getdata); | ||
| 159 | + break; | ||
| 160 | + | ||
| 161 | + case 0x69: | ||
| 162 | + return Comparison_6AFRAME_FirstLevelCode_0x69(getdata); | ||
| 163 | + break; | ||
| 164 | + | ||
| 165 | + case 0x6F: | ||
| 166 | + return Comparison_6AFRAME_FirstLevelCode_0x6F(getdata); | ||
| 167 | + break; | ||
| 168 | + | ||
| 169 | + | ||
| 170 | + default: | ||
| 171 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 172 | + break; | ||
| 173 | + } | ||
| 174 | +} |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file | ||
| 4 | + * | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | +#ifndef JZSDK_FRAMECOMPARSION_6AFRAME_H | ||
| 11 | +#define JZSDK_FRAMECOMPARSION_6AFRAME_H | ||
| 12 | + | ||
| 13 | +/* Includes ------------------------------------------------------------------*/ | ||
| 14 | + | ||
| 15 | +#ifdef __cplusplus | ||
| 16 | +extern "C" { | ||
| 17 | +#endif | ||
| 18 | + | ||
| 19 | +/* Exported constants --------------------------------------------------------*/ | ||
| 20 | +/* 常亮定义*/ | ||
| 21 | + | ||
| 22 | +/* Exported types ------------------------------------------------------------*/ | ||
| 23 | + | ||
| 24 | +/* Exported functions --------------------------------------------------------*/ | ||
| 25 | +int JZsdk_6AFrameComparsion(char *getdata, int len); | ||
| 26 | + | ||
| 27 | + | ||
| 28 | +#ifdef __cplusplus | ||
| 29 | +} | ||
| 30 | +#endif | ||
| 31 | + | ||
| 32 | +#endif | ||
| 33 | + |
| 1 | +#include <stdio.h> | ||
| 2 | +#include "../JZsdk_Code/JZsdk_Code.h" | ||
| 3 | + | ||
| 4 | + | ||
| 5 | +//一级功能码是私有协议 | ||
| 6 | +static int Comparison_6BFRAME_FirstLevelCode_0x6F(char *getdata) | ||
| 7 | +{ | ||
| 8 | + //二级功能位 | ||
| 9 | + switch (getdata[8]) | ||
| 10 | + { | ||
| 11 | + //从设备名返回 | ||
| 12 | + case 0x50: | ||
| 13 | + return JZ_INSCODE_6BFRAME_CHECKSTATUS_SECONDARY_DEVICE_NAME; | ||
| 14 | + break; | ||
| 15 | + | ||
| 16 | + //查询云台联动返回 | ||
| 17 | + case 0x51: | ||
| 18 | + return JZ_INSCODE_6BFRAME_CHECKSTATUS_GIMBAL_LINKAGE; | ||
| 19 | + break; | ||
| 20 | + | ||
| 21 | + //查询特殊变量 | ||
| 22 | + case 0x54: | ||
| 23 | + return JZ_INSCODE_6BFRAME_CHECK_SPECIAL_PARAMETERS; | ||
| 24 | + break; | ||
| 25 | + | ||
| 26 | + default: | ||
| 27 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 28 | + break; | ||
| 29 | + } | ||
| 30 | +} | ||
| 31 | + | ||
| 32 | +/****************************************************************** | ||
| 33 | + | ||
| 34 | + 回复帧对比 | ||
| 35 | + 成功返回帧类型 无对比数据返回 JZ_ERROR_SYSTEM_FRAME_ERROR | ||
| 36 | + | ||
| 37 | +******************************************************************/ | ||
| 38 | +int JZsdk_6BFrameComparsion(char *getdata, int len) | ||
| 39 | +{ | ||
| 40 | + //1、判断帧头帧尾 | ||
| 41 | + if ( | ||
| 42 | + ( (getdata[0]!= 0x6B) && (getdata[1] != 0x6B) && (getdata[2]!=0x77) ) | ||
| 43 | + || ( (getdata[len -2]!= 0x00) && (getdata[ len -1] != 0x23) ) | ||
| 44 | + ) | ||
| 45 | + { | ||
| 46 | + printf("接受到的帧,没有帧头或者帧尾,退出JZsdk_6BFrameComparsion函数\n"); | ||
| 47 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 48 | + } | ||
| 49 | + | ||
| 50 | + //一级功能码 | ||
| 51 | + switch (getdata[7]) | ||
| 52 | + { | ||
| 53 | + case 0x6F: | ||
| 54 | + return Comparison_6BFRAME_FirstLevelCode_0x6F(getdata); | ||
| 55 | + break; | ||
| 56 | + | ||
| 57 | + | ||
| 58 | + default: | ||
| 59 | + return JZ_ERROR_SYSTEM_FRAME_ERROR; | ||
| 60 | + break; | ||
| 61 | + } | ||
| 62 | +} |
| 1 | +/** | ||
| 2 | + ******************************************************************** | ||
| 3 | + * @file | ||
| 4 | + * | ||
| 5 | + * | ||
| 6 | + ********************************************************************* | ||
| 7 | + */ | ||
| 8 | + | ||
| 9 | +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/ | ||
| 10 | + | ||
| 11 | + | ||
| 12 | +#ifndef JZSDK_FRAMECOMPARSION_6BFRAME_H | ||
| 13 | +#define JZSDK_FRAMECOMPARSION_6BFRAME_H | ||
| 14 | + | ||
| 15 | +/* Includes ------------------------------------------------------------------*/ | ||
| 16 | + | ||
| 17 | +#ifdef __cplusplus | ||
| 18 | +extern "C" { | ||
| 19 | +#endif | ||
| 20 | + | ||
| 21 | +/* Exported constants --------------------------------------------------------*/ | ||
| 22 | +/* 常亮定义*/ | ||
| 23 | + | ||
| 24 | +/* Exported types ------------------------------------------------------------*/ | ||
| 25 | + | ||
| 26 | +/* Exported functions --------------------------------------------------------*/ | ||
| 27 | +int JZsdk_6BFrameComparsion(char *getdata, int len); | ||
| 28 | + | ||
| 29 | + | ||
| 30 | +#ifdef __cplusplus | ||
| 31 | +} | ||
| 32 | +#endif | ||
| 33 | + | ||
| 34 | +#endif | ||
| 35 | + |
-
请 注册 或 登录 后发表评论