forked from gary/ems
2
0
Fork 0
sun_ems/ems_c/clib/aarch64
ahu_gq 80638aad62 更新代码/更新库 2025-05-27 21:12:28 +08:00
..
include 更新代码/更新库 2025-05-27 21:12:28 +08:00
libcrtdb.so 更新代码/更新库 2025-05-27 21:12:28 +08:00
libcsundb.so 更新代码/更新库 2025-05-27 21:12:28 +08:00
libcsunmodbus.so 更新代码/更新库 2025-05-27 21:12:28 +08:00
libcsunntp.so 更新代码/更新库 2025-05-27 21:12:28 +08:00
libcsunshmrtdb.so 更新代码/更新库 2025-05-27 21:12:28 +08:00
readme 更新代码/更新库 2025-05-27 21:12:28 +08:00

readme

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*****************************************************************************
 * @copyright       Copyright (c) 2025-2055 Gary. All rights reserved.
 * @file            readme
 * @brief           rtdb组件
 * @author          Gary
 * @remark          提供web端获取数据接口更改
 * @date            2025/03/04	 
 *****************************************************************************/
一、本库分为两个重要组件
	1、一个是用于web配置相关的参数通知C的组件
	2、一个是用于Web实时读取EMS系统中所有数据的组件

二、针对两个组件使用步骤如下:
	通知组件
	1、首先调用初始化函数:uint8_t initWebSign(sign_share_type_e rtype, shm_creat_type_e rwtype);
	2、针对不同配置的通知信号调用void writeWebSign(sign_share_type_e rtype, cfg_web_sign_e signType, uint16_t val);

	RTDB组件
	1、首先调用初始化函数:uint8_t initRtdb(rtdb_type_e type, void *arg, shm_creat_type_e shmType);
	2、针对不同设备不同测点调用函数double getRtdbPointValue(rtdb_type_e type, uint16_t devType, uint16_t devId, uint16_t pointId);


三、每个函数的具体说明如下:

/*****************************************************************************
 * @brief       初始化rtdb
 * @param[in]   type: 实时库的类型
 * @param[in]   arg: 默认为空
 * @param[in]   shmType: 创建实时库类型
 * @return      0-成功  1失败
 *****************************************************************************/
uint8_t initRtdb(rtdb_type_e type, void *arg, shm_creat_type_e shmType);

/*****************************************************************************
 * @brief       获取RTDB中的值
 * @param[in]   type: 实时库的类型 默认选择Rtdb_ShMem
 * @param[in]   devType: 设备类型
 * @param[in]   devId: 设备序号 从0开始
 * @param[in]   pointId: 该设备中点号从0开始
 * @return      获取值
 *****************************************************************************/
double getRtdbPointValue(rtdb_type_e type, uint16_t devType, uint16_t devId, uint16_t pointId);

/*****************************************************************************
 * @brief       向RTDB中写入值
 * @param[in]   type: 实时库的类型 默认选择Rtdb_ShMem
 * @param[in]   devType: 设备类型
 * @param[in]   devId: 设备序号 从0开始
 * @param[in]   pointId: 该设备中点号从0开始
 * @param[in]   value: 向RTDB中写入的值
 *****************************************************************************/
void setRtdbPointValue(rtdb_type_e type, uint16_t devType, uint16_t devId, uint16_t pointId, double value);

/*****************************************************************************
 * @brief       初始化用于web与c写配置变化的通知组件
 * @param[in]   type: 实时库的类型 默认选择Rtdb_ShMem
 * @param[in]   arg: 所有测点属性的指针
 * @return      0-成功  1失败
 *****************************************************************************/
uint8_t initWebSign(sign_share_type_e rtype, shm_creat_type_e rwtype);

/*****************************************************************************
 * @brief       读取web与c写配置变化的通知组件
 * @param[in]   type: 实时库的类型 默认选择Rtdb_ShMem
 * @param[in]   signType: 通知的地址
 * @return      0-成功  1失败
 *****************************************************************************/
uint16_t readWebSign(sign_share_type_e rtype, cfg_web_sign_e signType);

/*****************************************************************************
 * @brief       写入web与c写配置变化的通知组件
 * @param[in]   type: 实时库的类型
 * @param[in]   signType: 通知的地址
 * @param[in]   val: 对应的值
 * @return      0-成功  1失败
 *****************************************************************************/
void writeWebSign(sign_share_type_e rtype, cfg_web_sign_e signType, uint16_t val);