添加读取电机步数命令

添加新赋码仪检测命令,赋码仪注码命令
  添加检测并写入流水号命令
This commit is contained in:
ranchuan
2023-12-22 19:07:05 +08:00
parent d1e617afd3
commit 8558857fd4
12 changed files with 324 additions and 39 deletions

View File

@@ -219,6 +219,62 @@ protected:
// 赋码仪新赋码命令
class cmd_coder_code2 : public selfdev_runtask
{
Q_OBJECT
public:
cmd_coder_code2():selfdev_runtask(){
delay=0;
}
// pc指令转从机
myarray cmd_pc_to_slave(myarray data);
// pc指令生成从机列表
QList<int> cmd_pc_to_addrs(myarray data){
QList<int> addr_list;
addrs=data[0]|(data[1]<<8)|(data[2]<<16);
for(int i=0;i<20;i++){
if((addrs&(1<<i))!=0){
addr_list.append(i+1);
}
}
return addr_list;
}
// 从机发起命令
int cmd_slave(){
return 0x20;
}
// pc收到回复,返回0不回复
int cmd_pc_recv(){
return 0x02;
}
// 生成接收回复到pc
myarray cmd_pc_recv_to_pc(){
myarray r;
r.append(uint8_t(addrs));
r.append(uint8_t(0));
return r;
}
// pc回复命令,返回0不回复
int cmd_pc_ret(){
return 0x82;
}
// 从机返回转pc
myarray ret_slave_to_pc(QList<myarray> data);
protected:
int addrs;
int chip_mode;
uint16_t delay;
QList<uid_code> uid_codes;
};
// 设置电阻校准值
@@ -276,16 +332,26 @@ class cmd_checker_check : public selfdev_runtask
public:
cmd_checker_check():selfdev_runtask(){
}
~cmd_checker_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);
// pc指令转从机
myarray cmd_pc_to_slave(myarray data);
// pc指令生成从机列表
QList<int> cmd_pc_to_addrs(myarray data){
QList<int> addr_list;
addrs=0;
// addrs=0;
int len=data.size();
for(int i=0;i<len;i+=5){
addr_list.append(data[i]);
addrs|=1<<(data[i]-1);
// addrs|=1<<(data[i]-1);
}
return addr_list;
}
@@ -310,8 +376,11 @@ public:
// 从机返回转pc
myarray ret_slave_to_pc(QList<myarray> data);
protected:
int addrs;
// int addrs;
int mode;
prot_m4_cb moter_down_cb_fun;
signals:
void send_to_m4_signal(myarray data);
};