void XBeeActive::test_arRequestMod() { arRequestMod.setCommand(command); arRequestMod.setCommandValue(commandValue); arRequestMod.setCommandValueLength(commandValueLength); sendAtCommand_ar(); delay(250); atRequest.setCommand(WRCmd); sendAtCommand(); delay(250); atRequest.setCommand(assocCmd); sendAtCommand(); arRequestMod.clearCommandValue(); }
void XBeeActive::search_XBee() { d0Value[0] = 0xFE; commandValueLength = 0x1; atRequest.setCommand(NTCmd); sendAtCommand(); delay(250); arRequestMod.clearCommandValue(); delay(100); atRequest.setCommand(NDCmd); int search_list = 0; int i10; Serial.println("\nSending command search XBee"); xbee.send(atRequest); while (true) { if (xbee.readPacket(5000)) // подождите до 5 секунд для ответа состояния { if (xbee.getResponse().getApiId() == AT_COMMAND_RESPONSE) // Должна быть команда отклика AT { xbee.getResponse().getAtCommandResponse(atResponse); if (atResponse.isOk()) { Serial.print("Command ["); Serial.print(atResponse.getCommand()[0]); Serial.print(atResponse.getCommand()[1]); Serial.println("] was successful!"); if (atResponse.getValueLength() > 0) { Len_XBee = atResponse.getValueLength(); Serial.print("Command value length is - "); Serial.println(atResponse.getValueLength(), DEC); Serial.print("Command value: "); for (i10 = 0; i10 < atResponse.getValueLength(); i10++) { info_XBee_data[i10] = atResponse.getValue()[i10]; Serial.print(info_XBee_data[i10], HEX); Serial.print(" "); } Serial.println(""); search_list++; } } else { Serial.print("Command return error code: "); Serial.println(atResponse.getStatus(), HEX); } } else { Serial.print("Expected AT response but got "); Serial.println(xbee.getResponse().getApiId(), HEX); } } else { if (xbee.getResponse().isError()) // at command failed { Serial.print("Error reading packet. Error code: "); Serial.println(xbee.getResponse().getErrorCode()); } else { Serial.println("\nNo response from radio1"); return; } } } }