重新构建的批检仪主板程序
This commit is contained in:
70
prot_cmd/cmd_pc.cpp
Normal file
70
prot_cmd/cmd_pc.cpp
Normal file
@@ -0,0 +1,70 @@
|
||||
#include "cmd_pc.h"
|
||||
#include "prot/prot_m4.h"
|
||||
#include "prot/prot_pc.h"
|
||||
#include "prot/prot_slave.h"
|
||||
#include "base/mycfg.h"
|
||||
#include "QDebug"
|
||||
|
||||
|
||||
typedef struct{
|
||||
int moter_count;
|
||||
int moter_run;
|
||||
}moter_def;
|
||||
static moter_def g_moter;
|
||||
|
||||
myarray moter_ctrl(myarray op)
|
||||
{
|
||||
mycfg *cfg_=syscfg();
|
||||
moter_def *moter=&g_moter;
|
||||
myarray r;
|
||||
if(op=="up"){
|
||||
int count=0;
|
||||
if(moter->moter_count>0){
|
||||
moter->moter_run=1;
|
||||
count=-moter->moter_count-100;
|
||||
moter->moter_count=0;
|
||||
QString s=QString("moter %1").arg(count);
|
||||
r=s.toLocal8Bit();
|
||||
}else{
|
||||
qWarning()<<"moter count out of range."<<endl;
|
||||
return r;
|
||||
}
|
||||
}else if(op=="down"){
|
||||
int count=0;
|
||||
if(moter->moter_count<cfg_->moter_count){
|
||||
moter->moter_run=1;
|
||||
count=cfg_->moter_count-moter->moter_count;
|
||||
moter->moter_count+=count;
|
||||
QString s=QString("moter %1").arg(count);
|
||||
r=s.toLocal8Bit();
|
||||
}else{
|
||||
qWarning()<<"moter count out of range."<<endl;
|
||||
return r;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
int selfdev_check::dolater(int cmd, myarray data)
|
||||
{
|
||||
prot_m4 *m4=protM4();
|
||||
connect(this,send_to_m4_signal,m4,&prot_m4::send_data_slot);
|
||||
m4->set_irq_fun([=](myarray data){
|
||||
m4->del_irq_fun(nullptr,"moter ");
|
||||
if(data=="down"){
|
||||
// 这里开始检测
|
||||
}
|
||||
},"moter ");
|
||||
emit send_to_m4_signal(moter_ctrl("up"));
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user