#include "prot_m4.h" #include "QDebug" void prot_m4::init() { if_=interFaceFind("uart_m4"); codec_=codecFind("codec_m4"); if_->set_irq([=](myarray recv){ if(codec_->packCheck(recv_data)==true){ int cmd,src,dst; myarray data=codec_->decode(src,dst,cmd,recv_data); if(exe_cb_fun(data)==false){ qWarning("can not find cb fun with:\"%s\"",data); } recv_data.clear(); } }); } void prot_m4::send_data_slot(myarray data) { if((if_!=nullptr)&&(codec_!=nullptr)){ myarray send=codec_->encode(0,0,0,data); if_->write(send); } } bool prot_m4::exe_cb_fun(myarray data) { int left; for (int i=0;iinit(); } return g_protm4; } bool prot_m4::set_irq_fun(prot_m4_cb fun,myarray data) { int left; for (int i=0;i