实现赋码仪命令

升级小板程序失败时停止
This commit is contained in:
ranchuan
2023-12-21 18:51:58 +08:00
parent af964ad733
commit d1e617afd3
22 changed files with 1291 additions and 43 deletions

View File

@@ -157,7 +157,12 @@ protected:
typedef struct{
char shell[20];
char uid[20];
char psw[20];
char uid_psw[20];
}uid_code;
// 赋码仪赋码命令
@@ -204,6 +209,8 @@ public:
myarray ret_slave_to_pc(QList<myarray> data);
protected:
int addrs;
int chip_mode;
QList<uid_code> uid_codes;
};
@@ -262,6 +269,56 @@ protected:
// 批检仪检测并设置模块流水号
class cmd_checker_check : public selfdev_runtask
{
Q_OBJECT
public:
cmd_checker_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=0;
int len=data.size();
for(int i=0;i<len;i+=5){
addr_list.append(data[i]);
addrs|=1<<(data[i]-1);
}
return addr_list;
}
// 从机发起命令
int cmd_slave(){
return 0x20;
}
// pc收到回复,返回0不回复
int cmd_pc_recv(){
return 0x48;
}
// 生成接收回复到pc
myarray cmd_pc_recv_to_pc(){
myarray r;
r.append(uint8_t(0));
return r;
}
// pc回复命令,返回0不回复
int cmd_pc_ret(){
return 0x31;
}
// 从机返回转pc
myarray ret_slave_to_pc(QList<myarray> data);
protected:
int addrs;
int mode;
};
#endif // CMD_CODER_H