#ifndef cmd_pc_h__ #define cmd_pc_h__ #include "prot/prot_pc.h" #include "prot/prot_m4.h" #include "prot_cmd/cmd_slave.h" // 检测 自研批检仪 class selfdev_check : public HandlePc { Q_OBJECT public: selfdev_check() : HandlePc() { slave_acked_num=0; moter_down_cb_fun=nullptr; } ~selfdev_check() { if(moter_down_cb_fun!=nullptr){ // 取消电机下降到位回调 prot_m4 *m4 = protM4(); if(m4!=nullptr) { m4->del_irq_fun(moter_down_cb_fun,"moter "); } } } int dolater(int cmd, myarray data); void timeout(); public slots: void slave_end_slot(int addr,int ack, myarray data); protected: QList slave_acked; int slave_acked_num; prot_m4_cb moter_down_cb_fun; signals: void send_to_m4_signal(myarray data); }; // 检测 自研批检仪 广播形式 class selfdev_check2 : public HandlePc { Q_OBJECT public: selfdev_check2() : HandlePc() { slave_acked_num=0; moter_down_cb_fun=nullptr; } ~selfdev_check2() { if(moter_down_cb_fun!=nullptr){ // 取消电机下降到位回调 prot_m4 *m4 = protM4(); if(m4!=nullptr) { m4->del_irq_fun(moter_down_cb_fun,"moter "); } } } int dolater(int cmd, myarray data); void timeout(); public slots: void slave_end_slot(int addr,int ack, slave_data data); protected: QList slave_acked; int slave_acked_num; prot_m4_cb moter_down_cb_fun; signals: void send_to_m4_signal(myarray data); }; // 检测结束 自研批检仪 class selfdev_checkend : public HandlePc { Q_OBJECT public: selfdev_checkend() : HandlePc() {} ~selfdev_checkend() {} int dolater(int cmd, myarray data); void timeout(); signals: void send_to_m4_signal(myarray data); }; // 电机 自研批检仪 class selfdev_moter : public HandlePc { Q_OBJECT public: selfdev_moter() : HandlePc() {} ~selfdev_moter() {} int dolater(int cmd, myarray data); void timeout(); signals: void send_to_m4_signal(myarray data); }; // 小板升级 class selfdev_slaveupdate : public HandlePc { Q_OBJECT public: selfdev_slaveupdate() : HandlePc() {} ~selfdev_slaveupdate() {} int dolater(int cmd, myarray data); void timeout(); public slots: void slave_end_slot(int addr,int ack, slave_data data); signals: void send_to_m4_signal(myarray data); }; // 升级方案 class selfdev_update_scheme : public HandlePc { Q_OBJECT public: selfdev_update_scheme() : HandlePc() {} ~selfdev_update_scheme() {} int dolater(int cmd, myarray data); void timeout(); public slots: void slave_end_slot(int addr,int ack, slave_data data); signals: void send_to_m4_signal(myarray data); }; // 本机升级 class selfdev_hostupdate : public selfdev_slaveupdate { Q_OBJECT public: selfdev_hostupdate() : selfdev_slaveupdate() {} ~selfdev_hostupdate() {} int dolater(int cmd, myarray data); }; // jwt升级 class selfdev_jwtupdate : public selfdev_slaveupdate { Q_OBJECT public: selfdev_jwtupdate() : selfdev_slaveupdate() {} ~selfdev_jwtupdate() {} int dolater(int cmd, myarray data); }; // 自检 class selfdev_bootinfo : public HandlePc { Q_OBJECT public: selfdev_bootinfo() : HandlePc() { slave_acked_num=0; } ~selfdev_bootinfo() { } int dolater(int cmd, myarray data); void timeout(); public slots: void slave_end_slot(int addr,int ack, slave_data data); protected: QList slave_acked; int slave_acked_num; }; // 测量电阻 class selfdev_measure_rescv : public HandlePc { Q_OBJECT public: selfdev_measure_rescv() : HandlePc() { slave_acked_num=0; } ~selfdev_measure_rescv() { if(moter_down_cb_fun!=nullptr){ // 取消电机下降到位回调 prot_m4 *m4 = protM4(); if(m4!=nullptr) { m4->del_irq_fun(moter_down_cb_fun,"moter "); } } } int dolater(int cmd, myarray data); void timeout(); public slots: void slave_end_slot(int addr,int ack, slave_data data); protected: QList slave_acked; int slave_acked_num; prot_m4_cb moter_down_cb_fun; signals: void send_to_m4_signal(myarray data); }; // 设置电阻校准 class selfdev_set_rescv : public HandlePc { Q_OBJECT public: selfdev_set_rescv() : HandlePc() { slave_acked_num=0; } ~selfdev_set_rescv() { } int dolater(int cmd, myarray data); void timeout(); public slots: void slave_end_slot(int addr,int ack, slave_data data); protected: QList slave_acked; int slave_acked_num; signals: void send_to_m4_signal(myarray data); }; // 执行任务 class selfdev_runtask : public HandlePc { Q_OBJECT public: selfdev_runtask() : HandlePc() { slave_acked_num=0; } ~selfdev_runtask() { } int dolater(int cmd, myarray data); void timeout(); public slots: void slave_end_slot(int addr,int ack, slave_data data); protected: QList slave_acked; int slave_acked_num; signals: void send_to_m4_signal(myarray data); }; #endif