Files
checker_host/prot_cmd/cmd_hmi_coder.h

70 lines
1.2 KiB
C++

#ifndef CMD_HMI_CODER_H
#define CMD_HMI_CODER_H
#include <QObject>
#include "prot_cmd/cmd_pc.h"
#include "base/check_cfg.h"
#include "elec/elec_judge.h"
#include "QByteArray"
// 赋码仪检测命令
class cmd_hmicoder_check : public selfdev_runtask
{
Q_OBJECT
public:
cmd_hmicoder_check():selfdev_runtask(){
}
// pc指令转从机
myarray cmd_pc_to_slave(myarray data);
// pc指令生成从机列表
QList<int> cmd_pc_to_addrs(myarray data){
QList<int> addr_list;
addrs=data[0];
mode=data[1];
if(addrs<=0||addrs>20){
return addr_list;
}
for(int i=0;i<addrs;i++){
addr_list.append(i+1);
}
return addr_list;
}
// 从机发起命令
int cmd_slave(){
return 0x20;
}
// pc收到回复,返回0不回复
int cmd_pc_recv(){
return 0;
}
// 生成接收回复到pc
myarray cmd_pc_recv_to_pc(){
myarray r;
r.append(uint8_t(addrs));
r.append(uint8_t(mode));
r.append(uint8_t(0));
return r;
}
// pc回复命令,返回0不回复
int cmd_pc_ret();
// 从机返回转pc
myarray ret_slave_to_pc(QList<myarray> data);
protected:
int addrs;
int mode;
};
void hmicoder_init();
#endif // CMD_HMI_CODER_H