#pragma once #include #define CMDID(cmdid, cmdSubId) ((cmdid << 8) + cmdSubId) #define NEW_CMDID(cmdid, cmdSubId) ((cmdid * 100) + cmdSubId) namespace iflytop { namespace zcr { typedef enum { #if 0 virtual int32_t board_reset() = 0; #endif kboard_reset = CMDID(0, 0), // para:{}, ack:{} kevent_bus_reg_change_report = CMDID(0, 100), // para:{}, ack:{} kmodule_ping = CMDID(1, 0), // para:{}, ack:{} kmodule_get_status = CMDID(1, 4), // para:{}, ack:{4} kmodule_stop = CMDID(1, 1), // para:{}, ack:{} kmodule_set_reg = CMDID(1, 5), // para:{4,4}, ack:{} kmodule_get_reg = CMDID(1, 6), // para:{4}, ack:{4}I kmodule_get_error = CMDID(1, 10), // para:{}, ack:{1} kmodule_clear_error = CMDID(1, 11), // para:{}, ack:{} kmodule_active_cfg = CMDID(1, 16), // para:{}, ack:{} kxymotor_enable = CMDID(3, 1), // para:{1}, ack:{} kxymotor_move_by = CMDID(3, 2), // para:{4,4,4}, ack:{} kxymotor_move_to = CMDID(3, 3), // para:{4,4,4}, ack:{} kxymotor_move_to_zero = CMDID(3, 4), // para:{}, ack:{} 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 kxymotor_read_pos = CMDID(3, 6), // para:{}, ack:{4,4} kxymotor_calculated_pos_by_move_to_zero = CMDID(3, 7), // para:{}, ack:{} // kcode_scaner_start_scan = CMDID(4, 1), // para:{}, ack:{} // kcode_scaner_stop_scan = CMDID(4, 2), // para:{}, ack:{} // kcode_scaner_read_scaner_result = CMDID(4, 3), // para:{4,4}, ack:{4} kpipette_ctrl_init_device = CMDID(5, 1), // para:{}, ack:{} kpipette_ctrl_put_tip = CMDID(5, 2), // para:{}, ack:{} kpipette_ctrl_move_to_ul = CMDID(5, 3), // para:{4}, ack:{} ka8000_optical_module_power_ctrl = CMDID(6, 0), // para:{4}, ack:{} ka8000_optical_open_laser = CMDID(6, 1), // para:{4}, ack:{} ka8000_optical_close_laser = CMDID(6, 2), // para:{4}, ack:{} ka8000_optical_set_laster_gain = CMDID(6, 3), // para:{4,4}, ack:{} ka8000_optical_set_scan_amp_gain = CMDID(6, 4), // para:{4,4}, ack:{} ka8000_optical_read_scanner_adc_val = CMDID(6, 5), // para:{4}, ack:{4} ka8000_optical_read_laster_adc_val = CMDID(6, 6), // para:{4}, ack:{4} ka8000_optical_scan_current_point_amp_adc_val = CMDID(6, 7), // para:{4,4,4,4}, ack:{4,4} /*********************************************************************************************************************************************** * NEW * * NEW * * NEW * * NEW * * NEW * ***********************************************************************************************************************************************/ /*********************************************************************************************************************** * STEP_MOTOR * ***********************************************************************************************************************/ kstep_motor_enable = CMDID(101, 1), // para:{1}, ack:{} kstep_motor_read_pos = CMDID(101, 2), // para:{}, ack:{4} kstep_motor_easy_rotate = CMDID(101, 3), // para:{4}, ack:{} kstep_motor_easy_move_by = CMDID(101, 4), // para:{4}, ack:{} kstep_motor_easy_move_to = CMDID(101, 5), // para:{4}, ack:{} kstep_motor_easy_move_to_zero = CMDID(101, 6), // para:{1}, ack:{} kstep_motor_easy_set_current_pos = CMDID(101, 7), // para:{4}, ack:{} kstep_motor_easy_move_to_io = CMDID(101, 8), // para:{4,4}, ack:{} kstep_motor_active_cfg = CMDID(101, 9), // para:{4,4}, ack:{} kstep_motor_stop = CMDID(101, 10), // para:{4}, ack:{} kstep_motor_read_io_state = CMDID(101, 11), // para:{4}, ack:{} /*********************************************************************************************************************** * MINI_SERVO * ***********************************************************************************************************************/ kmini_servo_enable = CMDID(102, 1), kmini_servo_read_pos = CMDID(102, 2), kmini_servo_active_cfg = CMDID(102, 3), kmini_servo_stop = CMDID(102, 4), kmini_servo_set_mid_point = CMDID(102, 7), kmini_servo_read_io_state = CMDID(102, 8), kmini_servo_move_to = CMDID(102, 9), kmini_servo_rotate = CMDID(102, 10), kmini_servo_rotate_with_torque = CMDID(102, 11), /*********************************************************************************************************************** * BOARD * ***********************************************************************************************************************/ kboard_read_ext_io = CMDID(103, 1), // para:{}, ack:{4} kboard_write_ext_io = CMDID(103, 2), // para:{}, ack:{4} kboard_read_muti_io = CMDID(103, 3), // para:{}, ack:{4} /*********************************************************************************************************************** * CODE_SCANER * ***********************************************************************************************************************/ kcode_scaner_start_scan = CMDID(104, 1), // para:{}, ack:{} kcode_scaner_stop_scan = CMDID(104, 2), // para:{}, ack:{} kcode_scaner_result_is_ready = CMDID(104, 3), // para:{}, ack:{} kcode_scaner_read_scaner_result = CMDID(104, 4), // para:{}, ack:{X} } cmdid_t; typedef struct { int index; const char* fnname; } cmdinfo_t; const char* cmdid2str(int32_t code); cmdinfo_t* cmdid_get_table(); int cmdid_get_table_size(); } // namespace zcr } // namespace iflytop