communication.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. #ifndef __COMMUNITION_MINI_H
  2. #define __COMMUNITION_MINI_H
  3. typedef enum
  4. {
  5. PC_CMD_HANDSHAKE = 0x01,
  6. PC_CMD_SETWIFI,
  7. PC_CMD_QRCODE,
  8. PC_CMD_REPORT_RESULT,
  9. PC_CMD_DATA_UPLOAD,
  10. PC_CMD_REPORT_REEOR = 0x06,
  11. PC_CMD_DATASCOPE,
  12. PC_CMD_SETSN,
  13. PC_CMD_INFO,
  14. PC_CMD_SNANDCARD,
  15. PC_CMD_SETIP = 0x0B,
  16. PC_CMD_SETRUNTEMP = 0x10,
  17. PC_CMD_UPDATESTATE = 0x11,
  18. PC_CMD_ASKSTATE = 0x12,
  19. PC_CMD_SETSTATE = 0x13,/*设置强制改变模块状态*/
  20. UINON_CMD_TEMP_ADJ = 0x40, /*校准参数*/
  21. UINON_CMD_TEMP_PID = 0x41, /*PID参数*/
  22. UINON_CMD_TEMP_ADJ_GET = 0x42, /*校准参数*/
  23. UINON_CMD_TEMP_PID_GET = 0x43, /*PID参数*/
  24. UINON_CMD_TEMP_START = 0x44, /*开始加热*/
  25. UINON_CMD_TEMP_STOP = 0x45, /*停止加热*/
  26. UINON_CMD_MOTORMOVE = 0x48,
  27. UINON_CMD_MOTORTRETURN = 0x49,
  28. UINON_CMD_MOTORSTOP = 0x4a,
  29. UINON_CMD_MOTORGETPRAM = 0x4b,
  30. UINON_CMD_TEMP_DEBUG = 0x50,
  31. UINON_CMD_THEROM_GOAL = 0x51,
  32. UINON_CMD_THEROM_CHECK = 0x52,
  33. UINON_CMD_THEROM_OFFSET = 0x53,
  34. UINON_CMD_THEROM_PID = 0x54,
  35. UINON_CMD_THEROM_OVERHEAT = 0x55,
  36. UINON_CMD_THEROM_OVERCOOL = 0x56,
  37. UINON_CMD_THEROM_GET = 0x58,
  38. }pc_cmd_type;
  39. typedef struct _sysinf
  40. {
  41. unsigned char SN[8];
  42. unsigned char amplifState;
  43. unsigned char lysisState;
  44. unsigned char updateSt;
  45. }stateinfDef;
  46. typedef struct
  47. {
  48. unsigned short head;
  49. unsigned char seq;
  50. unsigned char cmd;
  51. unsigned short len;
  52. char *data;
  53. unsigned char checksum;
  54. unsigned char tail;
  55. }CmdMessage, *pCmdMessage;
  56. struct PCActionPack
  57. {
  58. pc_cmd_type cmd;
  59. int (*action)(unsigned char cmd, unsigned char *parg);
  60. int (*response)(CmdMessage *pMsg, unsigned char result);
  61. int datalen;
  62. };
  63. /* host量配置参数 */
  64. typedef struct _pidParm {
  65. float kp; /* 预留参数2 */
  66. float ki; /* 预留参数1 */
  67. float kd; /* 预留参数3 */
  68. } pidParm;
  69. /* host量配置参数 */
  70. typedef struct _MotorParm {
  71. float time; /* 预留参数2 */
  72. float speed; /* 预留参数1 */
  73. float swingtime; /* 预留参数3 */
  74. } MotorParm;
  75. /* host量配置参数 */
  76. typedef struct _tempAdjCouple {
  77. float raw; /*原始值*/
  78. float offset; /*预留参数2 */
  79. } tempAdjCouple;
  80. typedef struct _tempAdjParm {
  81. unsigned int section; /* 段数 */
  82. tempAdjCouple *offsetlist; /* */
  83. } tempAdjParm;
  84. typedef struct _miniConfigPram {
  85. unsigned int partID;
  86. union {
  87. pidParm pid;
  88. tempAdjParm adj;
  89. MotorParm minf;
  90. }Pram;
  91. } miniConfigPram;
  92. void query_pc_cmd(CmdMessage *pMsg);
  93. unsigned int check_to_pc_busy(void);
  94. unsigned short data_send_to_pc(pc_cmd_type cmd, char *data, unsigned short len);
  95. #endif