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.

118 lines
6.9 KiB

2 years ago
1 year ago
1 year ago
2 years ago
1 year ago
2 years ago
2 years ago
2 years ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
1 year ago
2 years ago
2 years ago
2 years ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
1 year ago
2 years ago
  1. #pragma once
  2. #include <stdint.h>
  3. #define CMDID(cmdid, cmdSubId) ((cmdid << 8) + cmdSubId)
  4. #define NEW_CMDID(cmdid, cmdSubId) ((cmdid * 100) + cmdSubId)
  5. namespace iflytop {
  6. namespace zcr {
  7. typedef enum {
  8. #if 0
  9. virtual int32_t board_reset() = 0;
  10. #endif
  11. kboard_reset = CMDID(0, 0), // para:{}, ack:{}
  12. kevent_bus_reg_change_report = CMDID(0, 100), // para:{}, ack:{}
  13. kmodule_ping = CMDID(1, 0), // para:{}, ack:{}
  14. kmodule_get_status = CMDID(1, 4), // para:{}, ack:{4}
  15. kmodule_stop = CMDID(1, 1), // para:{}, ack:{}
  16. kmodule_set_reg = CMDID(1, 5), // para:{4,4}, ack:{}
  17. kmodule_get_reg = CMDID(1, 6), // para:{4}, ack:{4}I
  18. kmodule_get_error = CMDID(1, 10), // para:{}, ack:{1}
  19. kmodule_clear_error = CMDID(1, 11), // para:{}, ack:{}
  20. kmodule_active_cfg = CMDID(1, 16), // para:{}, ack:{}
  21. kxymotor_enable = CMDID(3, 1), // para:{1}, ack:{}
  22. kxymotor_move_by = CMDID(3, 2), // para:{4,4,4}, ack:{}
  23. kxymotor_move_to = CMDID(3, 3), // para:{4,4,4}, ack:{}
  24. kxymotor_move_to_zero = CMDID(3, 4), // para:{}, ack:{}
  25. kxymotor_move_to_zero_and_calculated_shift = CMDID(3, 5), // para:{4,4,4,4}, ack:{} //int32_t findzerospeed, int32_t findzeroedge_speed, int32_t acc, int32_t overtime
  26. kxymotor_read_pos = CMDID(3, 6), // para:{}, ack:{4,4}
  27. kxymotor_calculated_pos_by_move_to_zero = CMDID(3, 7), // para:{}, ack:{}
  28. // kcode_scaner_start_scan = CMDID(4, 1), // para:{}, ack:{}
  29. // kcode_scaner_stop_scan = CMDID(4, 2), // para:{}, ack:{}
  30. // kcode_scaner_read_scaner_result = CMDID(4, 3), // para:{4,4}, ack:{4}
  31. kpipette_ctrl_init_device = CMDID(5, 1), // para:{}, ack:{}
  32. kpipette_ctrl_put_tip = CMDID(5, 2), // para:{}, ack:{}
  33. kpipette_ctrl_move_to_ul = CMDID(5, 3), // para:{4}, ack:{}
  34. ka8000_optical_module_power_ctrl = CMDID(6, 0), // para:{4}, ack:{}
  35. ka8000_optical_open_laser = CMDID(6, 1), // para:{4}, ack:{}
  36. ka8000_optical_close_laser = CMDID(6, 2), // para:{4}, ack:{}
  37. ka8000_optical_set_laster_gain = CMDID(6, 3), // para:{4,4}, ack:{}
  38. ka8000_optical_set_scan_amp_gain = CMDID(6, 4), // para:{4,4}, ack:{}
  39. ka8000_optical_read_scanner_adc_val = CMDID(6, 5), // para:{4}, ack:{4}
  40. ka8000_optical_read_laster_adc_val = CMDID(6, 6), // para:{4}, ack:{4}
  41. ka8000_optical_scan_current_point_amp_adc_val = CMDID(6, 7), // para:{4,4,4,4}, ack:{4,4}
  42. /***********************************************************************************************************************************************
  43. * NEW *
  44. * NEW *
  45. * NEW *
  46. * NEW *
  47. * NEW *
  48. ***********************************************************************************************************************************************/
  49. /***********************************************************************************************************************
  50. * STEP_MOTOR *
  51. ***********************************************************************************************************************/
  52. kstep_motor_enable = CMDID(101, 1), // para:{1}, ack:{}
  53. kstep_motor_read_pos = CMDID(101, 2), // para:{}, ack:{4}
  54. kstep_motor_easy_rotate = CMDID(101, 3), // para:{4}, ack:{}
  55. kstep_motor_easy_move_by = CMDID(101, 4), // para:{4}, ack:{}
  56. kstep_motor_easy_move_to = CMDID(101, 5), // para:{4}, ack:{}
  57. kstep_motor_easy_move_to_zero = CMDID(101, 6), // para:{1}, ack:{}
  58. kstep_motor_easy_set_current_pos = CMDID(101, 7), // para:{4}, ack:{}
  59. kstep_motor_easy_move_to_io = CMDID(101, 8), // para:{4,4}, ack:{}
  60. kstep_motor_active_cfg = CMDID(101, 9), // para:{4,4}, ack:{}
  61. kstep_motor_stop = CMDID(101, 10), // para:{4}, ack:{}
  62. kstep_motor_read_io_state = CMDID(101, 11), // para:{4}, ack:{}
  63. /***********************************************************************************************************************
  64. * MINI_SERVO *
  65. ***********************************************************************************************************************/
  66. kmini_servo_enable = CMDID(102, 1),
  67. kmini_servo_read_pos = CMDID(102, 2),
  68. kmini_servo_active_cfg = CMDID(102, 3),
  69. kmini_servo_stop = CMDID(102, 4),
  70. kmini_servo_set_mid_point = CMDID(102, 7),
  71. kmini_servo_read_io_state = CMDID(102, 8),
  72. kmini_servo_move_to = CMDID(102, 9),
  73. kmini_servo_rotate = CMDID(102, 10),
  74. kmini_servo_rotate_with_torque = CMDID(102, 11),
  75. /***********************************************************************************************************************
  76. * BOARD *
  77. ***********************************************************************************************************************/
  78. kboard_read_ext_io = CMDID(103, 1), // para:{}, ack:{4}
  79. kboard_write_ext_io = CMDID(103, 2), // para:{}, ack:{4}
  80. kboard_read_muti_io = CMDID(103, 3), // para:{}, ack:{4}
  81. /***********************************************************************************************************************
  82. * CODE_SCANER *
  83. ***********************************************************************************************************************/
  84. kcode_scaner_start_scan = CMDID(104, 1), // para:{}, ack:{}
  85. kcode_scaner_stop_scan = CMDID(104, 2), // para:{}, ack:{}
  86. kcode_scaner_result_is_ready = CMDID(104, 3), // para:{}, ack:{}
  87. kcode_scaner_read_scaner_result = CMDID(104, 4), // para:{}, ack:{X}
  88. } cmdid_t;
  89. typedef struct {
  90. int index;
  91. const char* fnname;
  92. } cmdinfo_t;
  93. const char* cmdid2str(int32_t code);
  94. cmdinfo_t* cmdid_get_table();
  95. int cmdid_get_table_size();
  96. } // namespace zcr
  97. } // namespace iflytop