|
|
@ -75,6 +75,7 @@ void PipetteModule::_pump_move_to_x100nl_block(bool accurate, double x100nl, int |
|
|
|
int32_t pressure_uuid = 0; |
|
|
|
int32_t pressure_uuid_is_change = 0; |
|
|
|
int32_t pressure_uuid_is_change_cnt = 0; |
|
|
|
int32_t pressure_lost_packet_num = 0; |
|
|
|
int32_t isbusy; |
|
|
|
while (true) { |
|
|
|
if (!smtpPressureStreamProcesser.isReady()) { |
|
|
@ -82,12 +83,13 @@ void PipetteModule::_pump_move_to_x100nl_block(bool accurate, double x100nl, int |
|
|
|
continue; |
|
|
|
} |
|
|
|
|
|
|
|
smtpPressureStreamProcesser.getPressure(&pressure, &pressure_uuid, &pressure_uuid_is_change); |
|
|
|
smtpPressureStreamProcesser.getPressure(&pressure, &pressure_uuid, &pressure_lost_packet_num, &pressure_uuid_is_change); |
|
|
|
if (pressure_uuid_is_change) { |
|
|
|
pressure_uuid_is_change_cnt = 0; |
|
|
|
ZLOGI(TAG, "pressure:%d (%d)", pressure, pressure_uuid); |
|
|
|
if (accurate && i == 0) { |
|
|
|
push_aspiration_pressure_sample_data(pressure); |
|
|
|
for (int j = 0; j < pressure_lost_packet_num; j++) push_aspiration_pressure_sample_data(pressure); |
|
|
|
} |
|
|
|
} else { |
|
|
|
pressure_uuid_is_change_cnt++; |
|
|
@ -102,7 +104,6 @@ void PipetteModule::_pump_move_to_x100nl_block(bool accurate, double x100nl, int |
|
|
|
m_thread.sleep(5); |
|
|
|
if (m_thread.getExitFlag()) throw zapp_thread_stoped_exception(); |
|
|
|
} |
|
|
|
push_aspiration_pressure_sample_data(-1); // 结束标志
|
|
|
|
|
|
|
|
int32_t targetpos = x100nl * 100; |
|
|
|
int32_t after_pos = pump_read_pos_nl(); |
|
|
|