#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."<moter_countmoter_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."<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; }