/*
 * @Description: 工具模块-数据处理子模块
 * @Author: yangsw
 * @Date: 2021-05-20 17:41:03
 * @LastEditTime: 2021-06-24 18:05:49
 * @LastEditors: yangsw
 * @Reference: 
 */
#ifndef H_UTIL_DATA_H
#define H_UTIL_DATA_H

#include "../com/bsp/bsp_com.h"


gw_u8 Util_Data_Check_Sum(gw_u8 *data, gw_u16 len);
gw_u8 Util_Data_String_To_Uint8(gw_u8 *str,gw_u8 len);
gw_u16 Util_Data_String_To_Uint16(gw_u8 *str,gw_u8 len);
gw_u8 Util_Data_Char2_To_Byte(gw_u8 data);
gw_u16 Util_Data_String2_To_Byte(gw_u8 *in_str,gw_u16 len,gw_u8 *out_data);
void Util_Data_Hex_To_Hexstr(gw_u8 hex,gw_u8 *hexstr);
gw_u16 Util_Data_Hexs_To_Hexstr(gw_u8 *hexs,gw_u8 * hexstr,gw_u16 len, gw_u8 a_litt);
gw_u16 Util_Data_String_Split(gw_s8 *in_str,gw_s8 regex,gw_s8 **out_str,gw_u16 out_size);
gw_u8 Util_Data_Bcd_To_Decimal(gw_u8 bcd);
gw_u8 Util_Data_Decimal_To_Bcd(gw_u8 decimal);
gw_u32 Util_Data_Absolute(gw_u32 a,gw_u32 b);

gw_s8 Util_Data_String_To_Sint8(gw_u8 *str,gw_u8 len);
gw_s16 Util_Data_String_To_Sint16(gw_u8 *str,gw_u8 len);

int32_t Util_Data_Round(double num);
gw_s16 Get_Original_Data(gw_u8 *in_data,gw_u16 in_len,gw_u8 *out_data);
gw_s16 Change_Original_Data(gw_u8 *in_data,gw_u16 in_len,gw_u8 *out_data);

#endif
