Browse Source

add code scaner

change_pipette_api
zhaohe 1 year ago
parent
commit
a85673b9c1
  1. 4
      api/api.hpp
  2. 14
      api/apibasic/cmdid.cpp
  3. 69
      api/apibasic/cmdid.hpp
  4. 2
      api/apibasic/errorcode.cpp
  5. 4
      api/apibasic/reg_index.cpp
  6. 1
      api/zi_board.hpp
  7. 21
      api/zi_code_scaner.hpp

4
api/api.hpp

@ -17,4 +17,6 @@
//
#include "zi_mini_servo.hpp"
//
#include "zi_board.hpp"
#include "zi_board.hpp"
//
#include "zi_code_scaner.hpp"

14
api/apibasic/cmdid.cpp

@ -29,10 +29,6 @@ static cmdinfo_t table[] = {
CMD_ITERM(kxymotor_read_pos),
CMD_ITERM(kxymotor_calculated_pos_by_move_to_zero),
CMD_ITERM(kcode_scaner_start_scan),
CMD_ITERM(kcode_scaner_stop_scan),
CMD_ITERM(kcode_scaner_read_scaner_result),
CMD_ITERM(kpipette_ctrl_init_device),
CMD_ITERM(kpipette_ctrl_put_tip),
CMD_ITERM(kpipette_ctrl_move_to_ul),
@ -71,10 +67,18 @@ static cmdinfo_t table[] = {
CMD_ITERM(kboard_read_ext_io),
CMD_ITERM(kboard_write_ext_io),
CMD_ITERM(kboard_read_muti_io),
CMD_ITERM(kcode_scaner_start_scan),
CMD_ITERM(kcode_scaner_stop_scan),
CMD_ITERM(kcode_scaner_result_is_ready),
CMD_ITERM(kcode_scaner_read_scaner_result),
CMD_ITERM(kcode_scaner_get_result_length),
};
const char* cmdid2str(int32_t code) {
for (size_t i = 0; i < sizeof(table) / sizeof(table[0]); i++) {
for (int i = 0; i < sizeof(table) / sizeof(table[0]); i++) {
if (table[i].index == code) {
return table[i].fnname;
}

69
api/apibasic/cmdid.hpp

@ -17,26 +17,22 @@ typedef enum {
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}
kmodule_ping = CMDID(1, 0),
kmodule_get_status = CMDID(1, 4),
kmodule_stop = CMDID(1, 1),
kmodule_set_reg = CMDID(1, 5),
kmodule_get_reg = CMDID(1, 6),
kmodule_get_error = CMDID(1, 10),
kmodule_clear_error = CMDID(1, 11),
kmodule_active_cfg = CMDID(1, 16),
kxymotor_enable = CMDID(3, 1),
kxymotor_move_by = CMDID(3, 2),
kxymotor_move_to = CMDID(3, 3),
kxymotor_move_to_zero = CMDID(3, 4),
kxymotor_move_to_zero_and_calculated_shift = CMDID(3, 5),
kxymotor_read_pos = CMDID(3, 6),
kxymotor_calculated_pos_by_move_to_zero = CMDID(3, 7),
kpipette_ctrl_init_device = CMDID(5, 1), // para:{}, ack:{}
kpipette_ctrl_put_tip = CMDID(5, 2), // para:{}, ack:{}
@ -51,28 +47,21 @@ typedef enum {
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:{}
kstep_motor_enable = CMDID(2, 1), // para:{1}, ack:{}
kstep_motor_read_pos = CMDID(2, 11), // para:{}, ack:{4}
kstep_motor_easy_rotate = CMDID(2, 17), // para:{4}, ack:{}
kstep_motor_easy_move_by = CMDID(2, 18), // para:{4}, ack:{}
kstep_motor_easy_move_to = CMDID(2, 19), // para:{4}, ack:{}
kstep_motor_easy_move_to_zero = CMDID(2, 20), // para:{1}, ack:{}
kstep_motor_easy_set_current_pos = CMDID(2, 21), // para:{4}, ack:{}
kstep_motor_easy_move_to_io = CMDID(2, 22), // para:{4,4}, ack:{}
kstep_motor_stop = CMDID(2, 40), // para:{4}, ack:{}
kstep_motor_active_cfg = CMDID(2, 41), // para:{4}, ack:{}
kstep_motor_read_io_state = CMDID(2, 42), // para:{4}, ack:{}
/***********************************************************************************************************************
* MINI_SERVO *
@ -98,11 +87,11 @@ typedef enum {
/***********************************************************************************************************************
* 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}
kcode_scaner_get_result_length = CMDID(104, 5), // para:{}, ack:{X}
} cmdid_t;

2
api/apibasic/errorcode.cpp

@ -98,7 +98,7 @@ static ecode_table_item_t table[] = {
};
const char* error2str(int32_t code) {
for (size_t i = 0; i < sizeof(table) / sizeof(table[0]); i++) {
for (int i = 0; i < sizeof(table) / sizeof(table[0]); i++) {
if (table[i].index == code) {
return table[i].info;
}

4
api/apibasic/reg_index.cpp

@ -135,7 +135,7 @@ static reginfo_t table[] = {
};
reginfo_t *get_reginfo_by_index(uint32_t index) {
for (size_t i = 0; i < sizeof(table) / sizeof(table[0]); i++) {
for (int i = 0; i < sizeof(table) / sizeof(table[0]); i++) {
if (table[i].index == index) {
return &table[i];
}
@ -144,7 +144,7 @@ reginfo_t *get_reginfo_by_index(uint32_t index) {
}
const char *regindex2str(uint32_t index) {
for (size_t i = 0; i < sizeof(table) / sizeof(table[0]); i++) {
for (int i = 0; i < sizeof(table) / sizeof(table[0]); i++) {
if (table[i].index == index) {
return table[i].regname;
}

1
api/zi_board.hpp

@ -12,5 +12,6 @@ class ZIBoard {
virtual ~ZIBoard() {}
virtual int32_t board_read_ext_io(int32_t ioindex, int32_t *val) = 0;
virtual int32_t board_write_ext_io(int32_t ioindex, int32_t val) = 0;
virtual int32_t board_read_muti_io(int32_t *val) = 0;
};
} // namespace iflytop

21
api/zi_code_scaner.hpp

@ -0,0 +1,21 @@
#pragma once
#include <stdint.h>
#include <functional>
#include "apibasic/basic.hpp"
namespace iflytop {
using namespace std;
class ZICodeScaner {
public:
virtual ~ZICodeScaner() {}
virtual int32_t code_scaner_start_scan() = 0;
virtual int32_t code_scaner_stop_scan() = 0;
virtual int32_t code_scaner_result_is_ready(int32_t* ready) = 0;
virtual int32_t code_scaner_get_result_length(int32_t* length) = 0;
virtual int32_t code_scaner_read_scaner_result(uint8_t* result, int32_t* len) = 0;
};
} // namespace iflytop
Loading…
Cancel
Save