#include "../app/task_w600_ptc.h" #include "../app/task_w600.h" U8 constructor_QueryTaskPkg() { _s_task_w600_para.querytaskpkg.filter[0] = 0xAA; _s_task_w600_para.querytaskpkg.filter[1] = 0xBB; _s_task_w600_para.querytaskpkg.num = 0x07; _s_task_w600_para.querytaskpkg.cmd = 0xA1; _s_task_w600_para.querytaskpkg.did[0] = G.mcu_id[3]; _s_task_w600_para.querytaskpkg.did[1] = G.mcu_id[4]; _s_task_w600_para.querytaskpkg.did[2] = G.mcu_id[5]; _s_task_w600_para.querytaskpkg.did[3] = G.mcu_id[6]; _s_task_w600_para.querytaskpkg.crc[0] = 0xCC; _s_task_w600_para.querytaskpkg.crc[1] = 0xDD; //CRC // crc16(_s_task_w600_para.crc, &_s_task_w600_para.cmder, num - 2); return _s_task_w600_para.querytaskpkg.num + 3; } U8 constructor_SubmitTaskPkg() { _s_task_w600_para.submittaskpkg.filter[0] = 0xAA; _s_task_w600_para.submittaskpkg.filter[1] = 0xBB; _s_task_w600_para.submittaskpkg.num = 0x11; _s_task_w600_para.submittaskpkg.cmd = 0xA3; _s_task_w600_para.submittaskpkg.did[0] = G.mcu_id[3]; _s_task_w600_para.submittaskpkg.did[1] = G.mcu_id[4]; _s_task_w600_para.submittaskpkg.did[2] = G.mcu_id[5]; _s_task_w600_para.submittaskpkg.did[3] = G.mcu_id[6]; // 其他属性在游戏完成时赋值 _s_task_w600_para.submittaskpkg.cmd[0] = 0xCC; _s_task_w600_para.submittaskpkg.crc[1] = 0xDD; //CRC // crc16(_s_task_w600_para.crc, &_s_task_w600_para.cmder, num - 2); return _s_task_w600_para.submittaskpkg.num + 3; } U8 parse_QueryAckPkg(U8* d,U8 num) { if (num != 0x0F) { return 0; } _s_task_w600_para.queryackpkg.filter[0] = d[0]; _s_task_w600_para.queryackpkg.filter[1] = d[1]; if ( _s_task_w600_para.queryackpkg.filter[0] != 0xAA || _s_task_w600_para.queryackpkg.filter[1] != 0xBB ) { return 0; } _s_task_w600_para.queryackpkg.num = d[2]; _s_task_w600_para.queryackpkg.cmd = d[3]; _s_task_w600_para.queryackpkg.did[0] = d[4]; _s_task_w600_para.queryackpkg.did[1] = d[5]; _s_task_w600_para.queryackpkg.did[2] = d[6]; _s_task_w600_para.queryackpkg.did[3] = d[7]; _s_task_w600_para.queryackpkg.Plan_ID[0] = d[8]; _s_task_w600_para.queryackpkg.Plan_ID[1] = d[9]; _s_task_w600_para.queryackpkg.Game_ID[0] = d[10]; _s_task_w600_para.queryackpkg.Game_ID[1] = d[11]; _s_task_w600_para.queryackpkg.Tranning_Status = d[12]; // 其他属性在游戏完成时赋值 _s_task_w600_para.queryackpkg.crc[0] = d[13]; _s_task_w600_para.queryackpkg.crc[1] = d[14]; if ( _s_task_w600_para.queryackpkg.crc[0] != 0xCC || _s_task_w600_para.queryackpkg.crc[1] != 0xDD ) { return 0; } //CRC // crc16(_s_task_w600_para.crc, &_s_task_w600_para.cmder, num - 2); return 1; }