提交一款正式版本
This commit is contained in:
parent
ab83a29699
commit
e11d8ec822
|
@ -30,12 +30,12 @@
|
|||
|
||||
|
||||
// 正式平台链接
|
||||
// #define SYS_IOT_URL ("8.130.122.162")
|
||||
// #define SYS_IOT_PORT ("7153")
|
||||
#define SYS_IOT_URL ("8.130.122.162")
|
||||
#define SYS_IOT_PORT ("7153")
|
||||
|
||||
//测试平台链接
|
||||
#define SYS_IOT_URL ("8.130.105.38")
|
||||
#define SYS_IOT_PORT ("7133")
|
||||
// #define SYS_IOT_URL ("8.130.105.38")
|
||||
// #define SYS_IOT_PORT ("7133")
|
||||
|
||||
|
||||
#define K (8 * 1000)
|
||||
|
|
|
@ -12,138 +12,135 @@
|
|||
#include <at_device_ml307.h>
|
||||
#include "drv_gpio.h"
|
||||
|
||||
#define MAX_VALVE_NUM 8
|
||||
|
||||
#define MAX_VALVE_NUM 8
|
||||
|
||||
|
||||
#define ML307_ENABLE_3_8_V GET_PIN (B, 3)
|
||||
#define ML307_PWR_PIN GET_PIN (B, 4)
|
||||
#define ML307_RST_PIN GET_PIN (B, 5)
|
||||
#define ML307_USIM_DECT_PIN GET_PIN (B, 6)
|
||||
#define ML307_ENABLE_3_8_V GET_PIN(B, 3)
|
||||
#define ML307_PWR_PIN GET_PIN(B, 4)
|
||||
#define ML307_RST_PIN GET_PIN(B, 5)
|
||||
#define ML307_USIM_DECT_PIN GET_PIN(B, 6)
|
||||
|
||||
#define ML307_SAMPLE_DEIVCE_NAME "ml307"
|
||||
|
||||
/*默认参数*/
|
||||
#define DEVICE_MANUFACTURE 0x4454 // DT
|
||||
#define DEVICE_MANUFACTURE 0x4454 // DT
|
||||
|
||||
/*命令集*/
|
||||
#define CMD_TYPE_DEVICE_DATA_REPORT 0x10 // 命令类型 - 设备数据上报 (设备->平台)
|
||||
#define CMD_TYPE_DEVICE_EVENT_REPORT 0x11 // 命令类型 - 设备事件上报 (设备->平台)
|
||||
#define CMD_TYPE_SERVER_REPLY 0x12 // 命令类型 - 服务器回复 (平台->设备)
|
||||
#define CMD_TYPE_INSTRUCTION_DOWN 0x13 // 命令类型 - 指令下发 (平台->设备)
|
||||
#define CMD_TYPE_INSTRUCTION_REPLY 0x14 // 命令类型 - 指令下发回复 (设备->平台)
|
||||
#define CMD_TYPE_TIME_CALIBRATION 0x15 // 命令类型 - 时间校准 (设备->平台)
|
||||
#define CMD_TYPE_DEVICE_DATA_REPORT 0x10 // 命令类型 - 设备数据上报 (设备->平台)
|
||||
#define CMD_TYPE_DEVICE_EVENT_REPORT 0x11 // 命令类型 - 设备事件上报 (设备->平台)
|
||||
#define CMD_TYPE_SERVER_REPLY 0x12 // 命令类型 - 服务器回复 (平台->设备)
|
||||
#define CMD_TYPE_INSTRUCTION_DOWN 0x13 // 命令类型 - 指令下发 (平台->设备)
|
||||
#define CMD_TYPE_INSTRUCTION_REPLY 0x14 // 命令类型 - 指令下发回复 (设备->平台)
|
||||
#define CMD_TYPE_TIME_CALIBRATION 0x15 // 命令类型 - 时间校准 (设备->平台)
|
||||
|
||||
#define PROTOCOL_VERSION 0x11 /*协议版本*/
|
||||
#define PROTOCOL_VERSION 0x42 /*协议版本*/
|
||||
/*数据序列号*/
|
||||
#define DATA_SERIAL_NUM 0x0001 // 1
|
||||
#define DATA_SERIAL_NUM 0x0001 // 1
|
||||
|
||||
/*设备类型*/
|
||||
#define DEVICE_TYPE_ML307 0x21
|
||||
|
||||
/*事件类型*/
|
||||
#define EVENT_TYPE_HEARTBEAT 0x30 // 心跳事件
|
||||
#define EVENT_TYPE_SELF_CHECK 0x31 // 自检事件
|
||||
#define EVENT_TYPE_SILENCE 0x32 // 消音事件
|
||||
#define EVENT_TYPE_EXCEPTION 0x33 // 异常事件
|
||||
#define EVENT_TYPE_VALVE_STATUS 0x40 // 电磁阀状态改变事件
|
||||
#define EVENT_TYPE_FAN_STATUS 0x41 // 风机状态改变事件
|
||||
#define EVENT_TYPE_TEMP_ANOMALY 0x42 // 产品工作温度异常事件
|
||||
#define EVENT_TYPE_POWER_ON 0x43 // 上电事件
|
||||
#define EVENT_TYPE_POWER_OFF 0x44 // 掉电事件
|
||||
#define EVENT_TYPE_ALARM 0x45 // 报警事件
|
||||
#define EVENT_TYPE_ALARM_RECOVER 0x46 // 报警恢复事件
|
||||
#define EVENT_TYPE_FAULT 0x47 // 故障事件
|
||||
#define EVENT_TYPE_FAULT_RECOVER 0x48 // 故障恢复事件
|
||||
#define EVENT_TYPE_DEVICE_FAILURE 0x49 // 设备失效事件
|
||||
#define EVENT_TYPE_TIME_CALIBRATION 0x50 // 时间校准事件
|
||||
#define EVENT_TYPE_HEARTBEAT 0x30 // 心跳事件
|
||||
#define EVENT_TYPE_SELF_CHECK 0x31 // 自检事件
|
||||
#define EVENT_TYPE_SILENCE 0x32 // 消音事件
|
||||
#define EVENT_TYPE_EXCEPTION 0x33 // 异常事件
|
||||
#define EVENT_TYPE_VALVE_STATUS 0x40 // 电磁阀状态改变事件
|
||||
#define EVENT_TYPE_FAN_STATUS 0x41 // 风机状态改变事件
|
||||
#define EVENT_TYPE_TEMP_ANOMALY 0x42 // 产品工作温度异常事件
|
||||
#define EVENT_TYPE_POWER_ON 0x43 // 上电事件
|
||||
#define EVENT_TYPE_POWER_OFF 0x44 // 掉电事件
|
||||
#define EVENT_TYPE_ALARM 0x45 // 报警事件
|
||||
#define EVENT_TYPE_ALARM_RECOVER 0x46 // 报警恢复事件
|
||||
#define EVENT_TYPE_FAULT 0x47 // 故障事件
|
||||
#define EVENT_TYPE_FAULT_RECOVER 0x48 // 故障恢复事件
|
||||
#define EVENT_TYPE_DEVICE_FAILURE 0x49 // 设备失效事件
|
||||
#define EVENT_TYPE_TIME_CALIBRATION 0x50 // 时间校准事件
|
||||
|
||||
#define EVENT_TYPE_VALVE_CONNECT 0x51
|
||||
#define EVENT_TYPE_VALVE_CONNECT 0x51
|
||||
#define EVENT_TYPE_VALVE_DISCONNECT 0x52
|
||||
|
||||
/*调压器新增事件类型*/
|
||||
|
||||
/*指令下发*/
|
||||
#define INSTRUCTION_DOWN_SELF_CHECK 0x50 // 指令下发 - 自检
|
||||
#define INSTRUCTION_DOWN_MUTE 0x51 // 指令下发 - 消音
|
||||
#define INSTRUCTION_DOWN_CLOSE_VALVE 0x52 // 指令下发 - 关阀
|
||||
#define INSTRUCTION_DOWN_OPEN_VALVE 0x53 // 指令下发 - 开阀
|
||||
#define INSTRUCTION_DOWN_OPEN_RELAY 0x54 // 指令下发 - 开继电器
|
||||
#define INSTRUCTION_DOWN_CLOSE_RELAY 0x55 // 指令下发 - 关继电器
|
||||
#define INSTRUCTION_DOWN_QUERY_PARAMS 0x56 // 指令下发 - 查询系统参数
|
||||
#define INSTRUCTION_DOWN_CONFIG_PARAMS 0x57 // 指令下发 - 配置系统参数
|
||||
#define INSTRUCTION_DOWN_TIME_CALIBRATION 0x58 // 指令下发 - 时间校准
|
||||
#define INSTRUCTION_HEART_BEAT 0x59 // 心跳回复
|
||||
#define INSTRUCTION_DOWN_SEVER_ADDR 0x60 // 设置服务器地址和端口
|
||||
#define INSTRUCTION_DOWN_SELF_CHECK 0x50 // 指令下发 - 自检
|
||||
#define INSTRUCTION_DOWN_MUTE 0x51 // 指令下发 - 消音
|
||||
#define INSTRUCTION_DOWN_CLOSE_VALVE 0x52 // 指令下发 - 关阀
|
||||
#define INSTRUCTION_DOWN_OPEN_VALVE 0x53 // 指令下发 - 开阀
|
||||
#define INSTRUCTION_DOWN_OPEN_RELAY 0x54 // 指令下发 - 开继电器
|
||||
#define INSTRUCTION_DOWN_CLOSE_RELAY 0x55 // 指令下发 - 关继电器
|
||||
#define INSTRUCTION_DOWN_QUERY_PARAMS 0x56 // 指令下发 - 查询系统参数
|
||||
#define INSTRUCTION_DOWN_CONFIG_PARAMS 0x57 // 指令下发 - 配置系统参数
|
||||
#define INSTRUCTION_DOWN_TIME_CALIBRATION 0x58 // 指令下发 - 时间校准
|
||||
#define INSTRUCTION_HEART_BEAT 0x59 // 心跳回复
|
||||
#define INSTRUCTION_DOWN_SEVER_ADDR 0x60 // 设置服务器地址和端口
|
||||
|
||||
/**********************************调压器新增指令下发**********************************************************/
|
||||
#define INSTRUCTION_DOWN_VALVE_ADD 0x61 // 新增阀门设备
|
||||
#define INSTRUCTION_DOWN_VALVE_REPLACE 0x62 // 更换阀门设备
|
||||
#define INSTRUCTION_DOWN_VALVE_REMOVE 0x63 // 移除阀门设备
|
||||
|
||||
#define INSTRUCTION_DOWN_VALVE_ADD 0x61 // 新增阀门设备
|
||||
#define INSTRUCTION_DOWN_VALVE_REPLACE 0x62 // 更换阀门设备
|
||||
#define INSTRUCTION_DOWN_VALVE_REMOVE 0x63 // 移除阀门设备
|
||||
|
||||
/************************************************************************************************************/
|
||||
#define RESPONSE_CODE_SUCCESS 0x00 // 响应码 - 操作成功
|
||||
#define RESPONSE_CODE_CRC_FAIL 0x01 // 响应码 - CRC 校验失败
|
||||
#define RESPONSE_CODE_PARSE_FAIL 0x02 // 响应码 - 数据解析失败(命令错误或者其他指令错误)
|
||||
#define RESPONSE_CODE_ACTION_FAILURE 0x03 // 响应码 - 动作执行失败
|
||||
#define RESPONSE_CODE_NO_FUNCTION 0xAF // 响应码 - 无此功能
|
||||
#define RESPONSE_CODE_OTHER_ERROR 0xFF // 响应码 - 其他错误
|
||||
#define RESPONSE_CODE_SUCCESS 0x00 // 响应码 - 操作成功
|
||||
#define RESPONSE_CODE_CRC_FAIL 0x01 // 响应码 - CRC 校验失败
|
||||
#define RESPONSE_CODE_PARSE_FAIL 0x02 // 响应码 - 数据解析失败(命令错误或者其他指令错误)
|
||||
#define RESPONSE_CODE_ACTION_FAILURE 0x03 // 响应码 - 动作执行失败
|
||||
#define RESPONSE_CODE_NO_FUNCTION 0xAF // 响应码 - 无此功能
|
||||
#define RESPONSE_CODE_OTHER_ERROR 0xFF // 响应码 - 其他错误
|
||||
|
||||
#define MAX_DATA_LEN 512 // 数据长度
|
||||
#define MAX_DATA_LEN 512 // 数据长度
|
||||
|
||||
#define ML307_DEFIENE_DATA "000000000000000000000000000000"
|
||||
#define ML307_DEFIENE_DATA "000000000000000000000000000000"
|
||||
|
||||
#define DEVICE_DEFINE 1 // 具备该设备功能
|
||||
#define DEVICE_NOT_DEFINE 0 // 不具备该功能
|
||||
#define DEVICE_CONNECTED 1 // 设备连接上
|
||||
#define DEVICE_DISCONNECTED 0 // 设备未连接
|
||||
#define DEVICE_OPEN 1 // 设备开启
|
||||
#define DEVICE_CLOSE 0 // 设备关闭
|
||||
#define DEVICE_DEFINE 1 // 具备该设备功能
|
||||
#define DEVICE_NOT_DEFINE 0 // 不具备该功能
|
||||
#define DEVICE_CONNECTED 1 // 设备连接上
|
||||
#define DEVICE_DISCONNECTED 0 // 设备未连接
|
||||
#define DEVICE_OPEN 1 // 设备开启
|
||||
#define DEVICE_CLOSE 0 // 设备关闭
|
||||
|
||||
typedef enum
|
||||
{
|
||||
/****************优先级最低***************** */
|
||||
kMl307HeartbeatEvent, // 定时心跳事件
|
||||
kMl307SilenceEvent, // 消音事件
|
||||
kMl307ExceptionEvent, // 异常事件
|
||||
kMl307ValveStatusEvent, // 电磁阀状态改变事件
|
||||
kMl307FanStatusEvent, // 风机状态改变事件
|
||||
kMl307TempAnomalyEvent, // 产品工作温度异常事件
|
||||
kMl307AlarmEvent, // 报警事件
|
||||
kMl307AlarmRcyEvent, // 报警恢复事件
|
||||
kMl307FaultEvent, // 故障事件
|
||||
kMl307FaultRcyEvent, // 故障恢复事件
|
||||
kMl307DeviceFailureEvent, // 设备失效事件
|
||||
kMl307TimeCalibrationEvent, // 时间校准事件
|
||||
kMl307ValveConnectEvent, // 阀门连接事件
|
||||
KMl307ValveDisconnectEvent, // 阀门断开事件
|
||||
kMl307HeartbeatEvent, // 定时心跳事件
|
||||
kMl307SilenceEvent, // 消音事件
|
||||
kMl307ExceptionEvent, // 异常事件
|
||||
kMl307ValveStatusEvent, // 电磁阀状态改变事件
|
||||
kMl307FanStatusEvent, // 风机状态改变事件
|
||||
kMl307TempAnomalyEvent, // 产品工作温度异常事件
|
||||
kMl307AlarmEvent, // 报警事件
|
||||
kMl307AlarmRcyEvent, // 报警恢复事件
|
||||
kMl307FaultEvent, // 故障事件
|
||||
kMl307FaultRcyEvent, // 故障恢复事件
|
||||
kMl307DeviceFailureEvent, // 设备失效事件
|
||||
kMl307TimeCalibrationEvent, // 时间校准事件
|
||||
kMl307ValveConnectEvent, // 阀门连接事件
|
||||
KMl307ValveDisconnectEvent, // 阀门断开事件
|
||||
/**********************优先级第三************************* */
|
||||
kMl307SelfCheckEvent, // 自检事件
|
||||
/**********************优先级第二************************* */
|
||||
kMl307PowerDownEvent, // 掉电事件
|
||||
/**********************优先级第一************************* */
|
||||
kMl307PowerOnEvent, // 上电事件
|
||||
kMl307SelfCheckEvent, // 自检事件
|
||||
/**********************优先级第二************************* */
|
||||
kMl307PowerDownEvent, // 掉电事件
|
||||
/**********************优先级第一************************* */
|
||||
kMl307PowerOnEvent, // 上电事件
|
||||
|
||||
kMl307MaxEventcnt // 最大事件计数
|
||||
} Ml307Event; // 当前所处的事件类型
|
||||
kMl307MaxEventcnt // 最大事件计数
|
||||
} Ml307Event; // 当前所处的事件类型
|
||||
|
||||
typedef enum
|
||||
{
|
||||
kHeartbeatStatus, // 定时心跳状态
|
||||
kConcentrationHighStatus, // 浓度异常状态
|
||||
kSelfCheckStatus, // 自检触发状态
|
||||
kAlarmStatus, // 报警触发状态
|
||||
kAlarmClearedStatus, // 报警解除状态
|
||||
kSensorFaultStatus, // 传感器故障触发状态
|
||||
kSensorRecoveredStatus, // 传感器故障解除状态
|
||||
kPowerDownStatus, // 掉电状态
|
||||
} Ml307Status; // 当前所处的上报状态
|
||||
kHeartbeatStatus, // 定时心跳状态
|
||||
kConcentrationHighStatus, // 浓度异常状态
|
||||
kSelfCheckStatus, // 自检触发状态
|
||||
kAlarmStatus, // 报警触发状态
|
||||
kAlarmClearedStatus, // 报警解除状态
|
||||
kSensorFaultStatus, // 传感器故障触发状态
|
||||
kSensorRecoveredStatus, // 传感器故障解除状态
|
||||
kPowerDownStatus, // 掉电状态
|
||||
} Ml307Status; // 当前所处的上报状态
|
||||
|
||||
typedef struct
|
||||
{
|
||||
Ml307Event current_event; // 当前事件
|
||||
Ml307Event last_event; // 上次事件
|
||||
Ml307Event current_event; // 当前事件
|
||||
Ml307Event last_event; // 上次事件
|
||||
} Ml307EventIndex;
|
||||
|
||||
/*
|
||||
|
@ -158,7 +155,7 @@ typedef struct
|
|||
*/
|
||||
typedef struct valve_t valve_data;
|
||||
|
||||
struct __attribute__ ((packed)) valve_t
|
||||
struct __attribute__((packed)) valve_t
|
||||
{
|
||||
uint8_t valve_id;
|
||||
uint8_t valve_mac[6];
|
||||
|
@ -168,61 +165,61 @@ struct __attribute__ ((packed)) valve_t
|
|||
uint32_t valve_in_pressure;
|
||||
uint32_t valve_out_pressure;
|
||||
uint32_t valve_atm_pressure;
|
||||
uint8_t valve_voltage;//阀门电池电压
|
||||
uint8_t valve_voltage; // 阀门电池电压
|
||||
};
|
||||
|
||||
struct __attribute__ ((packed)) DataBody
|
||||
struct __attribute__((packed)) DataBody
|
||||
{
|
||||
uint8_t device_type; // 设备类型
|
||||
uint8_t event_type; // 事件类型
|
||||
uint8_t hw; // 硬件版本
|
||||
uint8_t sw; // 软件版本
|
||||
uint8_t imei[15]; // 设备编号(IMEI)
|
||||
uint8_t iccid[20]; // ICCID
|
||||
uint8_t imsi[15]; // IMSI
|
||||
uint8_t rssi; // RSSI
|
||||
uint8_t rsrp; // RSRP
|
||||
uint16_t gas_voltage; // 传感器电压
|
||||
uint8_t product_work_temperature; // 产品工作温度
|
||||
uint16_t work_duration; // 工作时长
|
||||
uint8_t device_status; // 设备失效状态
|
||||
rt_uint8_t valve_num; // 阀门数量
|
||||
uint8_t device_type; // 设备类型
|
||||
uint8_t event_type; // 事件类型
|
||||
uint8_t hw; // 硬件版本
|
||||
uint8_t sw; // 软件版本
|
||||
uint8_t imei[15]; // 设备编号(IMEI)
|
||||
uint8_t iccid[20]; // ICCID
|
||||
uint8_t imsi[15]; // IMSI
|
||||
uint8_t rssi; // RSSI
|
||||
uint8_t rsrp; // RSRP
|
||||
uint16_t gas_voltage; // 传感器电压
|
||||
uint8_t product_work_temperature; // 产品工作温度
|
||||
uint16_t work_duration; // 工作时长
|
||||
uint8_t device_status; // 设备失效状态
|
||||
rt_uint8_t valve_num; // 阀门数量
|
||||
struct valve_t valve_data[MAX_VALVE_NUM];
|
||||
};
|
||||
|
||||
// 定义数据帧结构体
|
||||
struct __attribute__ ((packed)) Ml307DataFrame
|
||||
struct __attribute__((packed)) Ml307DataFrame
|
||||
{
|
||||
uint8_t header[3]; // 帧头
|
||||
uint8_t version; // 协议版本
|
||||
uint16_t manufacture; // 厂商标识
|
||||
uint16_t datanumber; // 数据序列号
|
||||
uint8_t cmd; // 命令位
|
||||
uint16_t datalen; // 数据长度
|
||||
struct DataBody data; // 数据体
|
||||
uint16_t crc16; // 校验位
|
||||
uint8_t tail[3]; // 帧尾
|
||||
uint8_t header[3]; // 帧头
|
||||
uint8_t version; // 协议版本
|
||||
uint16_t manufacture; // 厂商标识
|
||||
uint16_t datanumber; // 数据序列号
|
||||
uint8_t cmd; // 命令位
|
||||
uint16_t datalen; // 数据长度
|
||||
struct DataBody data; // 数据体
|
||||
uint16_t crc16; // 校验位
|
||||
uint8_t tail[3]; // 帧尾
|
||||
};
|
||||
|
||||
struct __attribute__ ((packed)) Ml307Data
|
||||
struct __attribute__((packed)) Ml307Data
|
||||
{
|
||||
rt_uint8_t device_type; // 设备类型
|
||||
rt_uint8_t event_type; // 事件类型
|
||||
rt_uint8_t res_data[15]; //
|
||||
rt_uint8_t device_type; // 设备类型
|
||||
rt_uint8_t event_type; // 事件类型
|
||||
rt_uint8_t res_data[15]; //
|
||||
rt_uint8_t res_num;
|
||||
};
|
||||
|
||||
struct __attribute__ ((packed)) Ml307RecvData
|
||||
struct __attribute__((packed)) Ml307RecvData
|
||||
{
|
||||
rt_uint8_t header[3]; // 帧头
|
||||
rt_uint8_t version; // 协议版本
|
||||
rt_uint16_t manufacture; // 厂商标识
|
||||
rt_uint16_t datanumber; // 数据序列号
|
||||
rt_uint8_t cmd; // 命令位
|
||||
rt_uint16_t datalen; // 数据长度
|
||||
struct Ml307Data recv_data; // 接收数据体
|
||||
rt_uint16_t crc16; // 校验位
|
||||
rt_uint8_t tail[3]; // 帧尾
|
||||
rt_uint8_t header[3]; // 帧头
|
||||
rt_uint8_t version; // 协议版本
|
||||
rt_uint16_t manufacture; // 厂商标识
|
||||
rt_uint16_t datanumber; // 数据序列号
|
||||
rt_uint8_t cmd; // 命令位
|
||||
rt_uint16_t datalen; // 数据长度
|
||||
struct Ml307Data recv_data; // 接收数据体
|
||||
rt_uint16_t crc16; // 校验位
|
||||
rt_uint8_t tail[3]; // 帧尾
|
||||
};
|
||||
|
||||
struct Ml307_Ops
|
||||
|
@ -230,11 +227,11 @@ struct Ml307_Ops
|
|||
struct DataBody *body;
|
||||
struct Ml307DataFrame *frame;
|
||||
struct Ml307RecvData *recv;
|
||||
int (*init) (struct Ml307_Ops *ops, rt_uint8_t version);
|
||||
int (*update_data) (struct Ml307_Ops *ops, rt_uint8_t device_type, rt_uint8_t cmd);
|
||||
int (*send) (struct Ml307_Ops *ops, rt_uint8_t data_num, rt_uint8_t cmd, rt_uint8_t device_type, rt_uint8_t event_type);
|
||||
int (*Resp) (struct Ml307_Ops *ops, rt_uint8_t data_num, rt_uint8_t cmd, rt_uint8_t device_type, rt_uint8_t event_type, char *data, rt_uint8_t res);
|
||||
int (*Recv) (struct Ml307_Ops *ops, char *data); // 解析数据
|
||||
int (*init)(struct Ml307_Ops *ops, rt_uint8_t version);
|
||||
int (*update_data)(struct Ml307_Ops *ops, rt_uint8_t device_type, rt_uint8_t cmd);
|
||||
int (*send)(struct Ml307_Ops *ops, rt_uint8_t data_num, rt_uint8_t cmd, rt_uint8_t device_type, rt_uint8_t event_type);
|
||||
int (*Resp)(struct Ml307_Ops *ops, rt_uint8_t data_num, rt_uint8_t cmd, rt_uint8_t device_type, rt_uint8_t event_type, char *data, rt_uint8_t res);
|
||||
int (*Recv)(struct Ml307_Ops *ops, char *data); // 解析数据
|
||||
};
|
||||
|
||||
extern struct Ml307_Ops ml307_ops;
|
||||
|
@ -249,7 +246,6 @@ extern rt_uint8_t ml307_disconnect_pdp_flag;
|
|||
extern rt_uint8_t power_on_send_flag;
|
||||
extern rt_uint8_t ml307_power_down_flag;
|
||||
|
||||
|
||||
void Ml307_Send_Event (Ml307Event event_type);
|
||||
int ml307_device_register (void);
|
||||
int BSP_Ml307_Thread_Init (void);
|
||||
void Ml307_Send_Event(Ml307Event event_type);
|
||||
int ml307_device_register(void);
|
||||
int BSP_Ml307_Thread_Init(void);
|
||||
|
|
Loading…
Reference in New Issue