You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
2.6 KiB

1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
  1. #pragma once
  2. #include <stdint.h>
  3. #pragma pack(1)
  4. typedef struct {
  5. uint16_t packetindex;
  6. uint16_t cmdid;
  7. uint8_t subcmdid;
  8. uint8_t packetType;
  9. uint8_t data[];
  10. } transmit_disinfection_protocol_header_t;
  11. #pragma pack()
  12. typedef enum {
  13. kpt_cmd = 0,
  14. kpt_ack = 1,
  15. kpt_error_ack = 2,
  16. kpt_status_report = 3,
  17. } PacketType_t;
  18. typedef enum {
  19. kcmd_ping = 0,
  20. kcmd_read_io = 1,
  21. kcmd_set_io = 2,
  22. kcmd_readadc_raw = 3,
  23. kcmd_m211887_operation = 1000, // 维萨拉压力传感器
  24. kcmd_read_presure_sensor = 1001,
  25. kcmd_triple_warning_light_ctl = 1002,
  26. kcmd_peristaltic_pump_ctl = 1004,
  27. kcmd_read_huacheng_pressure_sensor = 1005,
  28. kcmd_proportional_set_valve = 1006, // 设置比例阀 {4:valveId,4:valveValue}
  29. kcmd_air_compressor_ch_select = 1007, // 空压机通道选择 {4:val}
  30. kcmd_air_compressor_valve1_set = 1008, // 空压机阀门1控制 {4:val}
  31. kcmd_air_compressor_valve2_set = 1009, // 空压机阀门2控制 {4:val}
  32. kcmd_air_compressor_read_pressure = 1010, // 空压机阀读取压力 {}{4:val}
  33. kcmd_proportional_read_state = 1011,
  34. kcmd_proportional_read_water_immersion_sensor = 1012, // 读取水浸传感器状态
  35. kcmd_spray_air_compressor_power_ctrl = 1013, // 喷雾空压机控制 {4:ID}{4:val}
  36. kcmd_air_tightness_test_air_compressor_power_ctrl = 1014, // 气密性空压机控制 {4:ID}{4:val}
  37. kcmd_dbdb_liquid_path_ctrl_board_read_pressure_sensor = 1200, // cmd:index(4) ack:pressure(4)
  38. kreport_h2o2_sensor_data = 2000, // h2o2传感器信息
  39. } tdp_cmdid_t;
  40. typedef enum {
  41. kerr_noerror = 0,
  42. kerr_overtime = 1,
  43. kerr_invalid_param = 2,
  44. kerr_invalid_param_num = 3,
  45. kerr_subdevice_offline = 4,
  46. kerr_function_not_support = 5,
  47. } tdp_error_t;
  48. /***********************************************************************************************************************
  49. * *
  50. ***********************************************************************************************************************/
  51. #pragma pack(1)
  52. typedef struct {
  53. uint8_t sensorid;
  54. uint8_t sensor_error; // 传感器异常
  55. uint16_t h2o2; // ppm * 10
  56. uint16_t humid; // %RH * 10
  57. uint16_t temp; // °C * 10
  58. uint16_t saturation; // %RS * 10
  59. } report_h2o2_data_t;
  60. #pragma pack()