本文整理汇总了Java中com.rapplogic.xbee.api.AtCommandResponse类的典型用法代码示例。如果您正苦于以下问题:Java AtCommandResponse类的具体用法?Java AtCommandResponse怎么用?Java AtCommandResponse使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
AtCommandResponse类属于com.rapplogic.xbee.api包,在下文中一共展示了AtCommandResponse类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: ZNetApiAtExample
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
public ZNetApiAtExample() throws XBeeException {
try {
// replace with port and baud rate of your XBee
xbee.open("COM6", 9600);
// get the 8 byte SH/SL address
log.debug("SH is " + ByteUtils.toBase16(((AtCommandResponse)xbee.sendAtCommand(new AtCommand("SH"))).getValue()));
log.debug("SL is " + ByteUtils.toBase16(((AtCommandResponse)xbee.sendAtCommand(new AtCommand("SL"))).getValue()));
// uncomment to run
// this.configureIOSamples(xbee);
// this.associationStatus(xbee);
// this.nodeDiscover(xbee);
// this.configureCoordinator(xbee);
// this.configureEndDevice(xbee);
} finally {
if (xbee != null && xbee.isConnected()) {
xbee.close();
}
}
}
示例2: ZNetApiAtExample
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
public ZNetApiAtExample() throws XBeeException {
try {
// replace with port and baud rate of your XBee
xbee.open("COM6", 9600);
// get the 8 byte SH/SL address
log.debug("SH is " + ByteUtils.toBase16(((AtCommandResponse)xbee.sendAtCommand(new AtCommand("SH"))).getValue()));
log.debug("SL is " + ByteUtils.toBase16(((AtCommandResponse)xbee.sendAtCommand(new AtCommand("SL"))).getValue()));
// uncomment to run
// this.configureIOSamples(xbee);
// this.associationStatus(xbee);
// this.nodeDiscover(xbee);
// this.configureCoordinator(xbee);
// this.configureEndDevice(xbee);
} finally {
xbee.close();
}
}
示例3: processResponse
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
public void processResponse(XBeeResponse response)
{
if (response.getApiId() == ApiId.AT_RESPONSE)
{
NodeDiscover nd = NodeDiscover.parse((AtCommandResponse)response);
XBeeAddress64 addr = nd.getNodeAddress64();
if(!nodeAddresses.contains(addr))
{
nodeAddresses.add(addr);
log.debug(nd);
}
if(!currentNodeAddresses.contains(addr))
currentNodeAddresses.add(addr);
for(int i = 0; i < pruningIndex; i++)
{
if(unresponsiveNodes.get(i).contains(addr))
unresponsiveNodes.get(i).remove(addr);
}
}
}
示例4: ZBNodeDiscoverExample
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
public ZBNodeDiscoverExample() throws XBeeException, InterruptedException {
try {
// replace with your serial port
xbee.open("/dev/tty.usbserial-A6005v5M", 9600);
// get the Node discovery timeout
xbee.sendAsynchronous(new AtCommand("NT"));
AtCommandResponse nodeTimeout = (AtCommandResponse) xbee.getResponse();
// default is 6 seconds
int nodeDiscoveryTimeout = ByteUtils.convertMultiByteToInt(nodeTimeout.getValue()) * 100;
log.info("Node discovery timeout is " + nodeDiscoveryTimeout + " milliseconds");
log.info("Sending Node Discover command");
xbee.sendAsynchronous(new AtCommand("ND"));
// NOTE: increase NT if you are not seeing all your nodes reported
List<? extends XBeeResponse> responses = xbee.collectResponses(nodeDiscoveryTimeout);
log.info("Time is up! You should have heard back from all nodes by now. If not make sure all nodes are associated and/or try increasing the node timeout (NT)");
for (XBeeResponse response : responses) {
if (response instanceof AtCommandResponse) {
AtCommandResponse atResponse = (AtCommandResponse) response;
if (atResponse.getCommand().equals("ND") && atResponse.getValue() != null && atResponse.getValue().length > 0) {
ZBNodeDiscover nd = ZBNodeDiscover.parse((AtCommandResponse)response);
log.info("Node Discover is " + nd);
}
}
}
} finally {
if (xbee != null && xbee.isConnected()) {
xbee.close();
}
}
}
示例5: parseIsSample
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
public static ZNetRxIoSampleResponse parseIsSample(AtCommandResponse response) throws IOException {
if (!response.getCommand().equals("IS")) {
throw new RuntimeException("This is only applicable to the \"IS\" AT command");
}
IntArrayInputStream in = new IntArrayInputStream(response.getValue());
ZNetRxIoSampleResponse sample = new ZNetRxIoSampleResponse();
sample.parseIoSample(in);
return sample;
}
示例6: ZBNodeDiscoverExample
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
public ZBNodeDiscoverExample() throws XBeeException, InterruptedException {
try {
// replace with your serial port
xbee.open("/dev/tty.usbserial-A6005v5M", 9600);
// get the Node discovery timeout
xbee.sendAsynchronous(new AtCommand("NT"));
AtCommandResponse nodeTimeout = (AtCommandResponse) xbee.getResponse();
// default is 6 seconds
int nodeDiscoveryTimeout = ByteUtils.convertMultiByteToInt(nodeTimeout.getValue()) * 100;
log.info("Node discovery timeout is " + nodeDiscoveryTimeout + " milliseconds");
log.info("Sending Node Discover command");
xbee.sendAsynchronous(new AtCommand("ND"));
// NOTE: increase NT if you are not seeing all your nodes reported
List<? extends XBeeResponse> responses = xbee.collectResponses(nodeDiscoveryTimeout);
log.info("Time is up! You should have heard back from all nodes by now. If not make sure all nodes are associated and/or try increasing the node timeout (NT)");
for (XBeeResponse response : responses) {
if (response instanceof AtCommandResponse) {
AtCommandResponse atResponse = (AtCommandResponse) response;
if (atResponse.getCommand().equals("ND") && atResponse.getValue() != null && atResponse.getValue().length > 0) {
ZBNodeDiscover nd = ZBNodeDiscover.parse((AtCommandResponse)response);
log.info("Node Discover is " + nd);
}
}
}
} finally {
xbee.close();
}
}
示例7: processResponse
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
public void processResponse(XBeeResponse response)
{
if (response.getApiId() == ApiId.AT_RESPONSE)
{
NodeDiscover nd = NodeDiscover.parse((AtCommandResponse)response);
XBeeAddress64 addr = nd.getNodeAddress64();
log.debug("Found Address: " + addr);
chessbots.add(addr);
}
}
示例8: associationStatus
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
private void associationStatus(XBee xbee) throws XBeeException {
// get association status - success indicates it is associated to another XBee
AtCommandResponse response = (AtCommandResponse) xbee.sendAtCommand(new AtCommand("AI"));
log.debug("Association Status is " + AssociationStatus.get(response));
}
示例9: ZNetReceiverExample
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
private ZNetReceiverExample() throws Exception {
XBee xbee = new XBee();
try {
// replace with the com port of your receiving XBee (typically your end device)
// router
xbee.open("/dev/tty.usbserial-A6005uPi", 9600);
while (true) {
try {
// we wait here until a packet is received.
XBeeResponse response = xbee.getResponse();
log.info("received response " + response.toString());
if (response.getApiId() == ApiId.ZNET_RX_RESPONSE) {
// we received a packet from ZNetSenderTest.java
ZNetRxResponse rx = (ZNetRxResponse) response;
log.info("Received RX packet, option is " + rx.getOption() + ", sender 64 address is " + ByteUtils.toBase16(rx.getRemoteAddress64().getAddress()) + ", remote 16-bit address is " + ByteUtils.toBase16(rx.getRemoteAddress16().getAddress()) + ", data is " + ByteUtils.toBase16(rx.getData()));
// optionally we may want to get the signal strength (RSSI) of the last hop.
// keep in mind if you have routers in your network, this will be the signal of the last hop.
AtCommand at = new AtCommand("DB");
xbee.sendAsynchronous(at);
XBeeResponse atResponse = xbee.getResponse();
if (atResponse.getApiId() == ApiId.AT_RESPONSE) {
// remember rssi is a negative db value
log.info("RSSI of last response is " + -((AtCommandResponse)atResponse).getValue()[0]);
} else {
// we didn't get an AT response
log.info("expected RSSI, but received " + atResponse.toString());
}
} else {
log.debug("received unexpected packet " + response.toString());
}
} catch (Exception e) {
log.error(e);
}
}
} finally {
if (xbee != null && xbee.isConnected()) {
xbee.close();
}
}
}
示例10: ZNetReceiverExample
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
private ZNetReceiverExample() throws Exception {
XBee xbee = new XBee();
try {
// replace with the com port of your receiving XBee (typically your end device)
// router
xbee.open("/dev/tty.usbserial-A6005uPi", 9600);
while (true) {
try {
// we wait here until a packet is received.
XBeeResponse response = xbee.getResponse();
log.info("received response " + response.toString());
if (response.getApiId() == ApiId.ZNET_RX_RESPONSE) {
// we received a packet from ZNetSenderTest.java
ZNetRxResponse rx = (ZNetRxResponse) response;
log.info("Received RX packet, option is " + rx.getOption() + ", sender 64 address is " + ByteUtils.toBase16(rx.getRemoteAddress64().getAddress()) + ", remote 16-bit address is " + ByteUtils.toBase16(rx.getRemoteAddress16().getAddress()) + ", data is " + ByteUtils.toBase16(rx.getData()));
// optionally we may want to get the signal strength (RSSI) of the last hop.
// keep in mind if you have routers in your network, this will be the signal of the last hop.
AtCommand at = new AtCommand("DB");
xbee.sendAsynchronous(at);
XBeeResponse atResponse = xbee.getResponse();
if (atResponse.getApiId() == ApiId.AT_RESPONSE) {
// remember rssi is a negative db value
log.info("RSSI of last response is " + -((AtCommandResponse)atResponse).getValue()[0]);
} else {
// we didn't get an AT response
log.info("expected RSSI, but received " + atResponse.toString());
}
} else {
log.debug("received unexpected packet " + response.toString());
}
} catch (Exception e) {
log.error(e);
}
}
} finally {
if (xbee.isConnected()) {
xbee.close();
}
}
}
示例11: parse
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
public static ZBNodeDiscover parse(AtCommandResponse response) {
if (!response.getCommand().equals("ND")) {
throw new RuntimeException("This method is only applicable for the ND command");
}
int[] data = response.getValue();
IntArrayInputStream in = new IntArrayInputStream(data);
ZBNodeDiscover nd = new ZBNodeDiscover();
nd.setNodeAddress16(new XBeeAddress16(in.read(2)));
nd.setNodeAddress64(new XBeeAddress64(in.read(8)));
StringBuffer ni = new StringBuffer();
int ch;
// NI is terminated with 0
while ((ch = in.read()) != 0) {
if (ch < 32 || ch > 126) {
throw new RuntimeException("Node Identifier " + ch + " is non-ascii");
}
ni.append((char)ch);
}
nd.setNodeIdentifier(ni.toString());
nd.setParent(new XBeeAddress16(in.read(2)));
nd.setDeviceType(DeviceType.get(in.read()));
// TODO this is being reported as 1 (router) for my end device
nd.setStatus(in.read());
nd.setProfileId(in.read(2));
nd.setMfgId(in.read(2));
return nd;
}
示例12: parse
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
public static WpanNodeDiscover parse(AtCommandResponse response) {
if (!response.getCommand().equals("ND")) {
throw new IllegalArgumentException("This method is only applicable for the ND command");
}
int[] data = response.getValue();
if (data == null || data.length == 0) {
throw new IllegalArgumentException("ND command has no value");
}
IntArrayInputStream in = new IntArrayInputStream(data);
WpanNodeDiscover nd = new WpanNodeDiscover();
nd.setNodeAddress16(new XBeeAddress16(in.read(2)));
nd.setNodeAddress64(new XBeeAddress64(in.read(8)));
nd.setRssi(-1*in.read());
StringBuilder ni = new StringBuilder();
int ch;
// NI is terminated with 0
while ((ch = in.read()) != 0) {
if (ch < 32 || ch > 126) {
throw new RuntimeException("Node Identifier " + ch + " is non-ascii");
}
ni.append((char)ch);
}
nd.setNodeIdentifier(ni.toString());
return nd;
}
示例13: setState
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
@Override
public void setState(boolean state) throws IOException {
NDC.push("write(" + address + ")");
Marker m = new Marker("write(" + address + ")");
try {
XBeeAddress64 xbeeAddress = Parser.parse(address.hardwareAddress);
String channel = address.channel;
int deviceState = state ? 5 : 4;
RemoteAtRequest request = new RemoteAtRequest(xbeeAddress, channel, new int[] {deviceState});
AtCommandResponse rsp = (AtCommandResponse) container.sendSynchronous(request, XBeeConstants.TIMEOUT_AT_MILLIS);
logger.info(channel + " response: " + rsp);
if (rsp.isError()) {
throw new IOException(channel + " + query failed, status: " + rsp.getStatus());
}
} catch (Throwable t) {
IOException secondary = new IOException("Unable to write " + address);
secondary.initCause(t);
throw secondary;
} finally {
m.close();
NDC.pop();
}
}
示例14: getSignal
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
@Override
public DataSample<Double> getSignal() {
NDC.push("getSignal(" + address + ")");
Marker m = new Marker("getSignal(" + address + ")");
try {
XBeeAddress64 xbeeAddress = Parser.parse(address.hardwareAddress);
String channel = address.channel;
RemoteAtRequest request = new RemoteAtRequest(xbeeAddress, "IS");
AtCommandResponse rsp = (AtCommandResponse) container.sendSynchronous(request, XBeeConstants.TIMEOUT_IS_MILLIS);
logger.debug(channel + " response: " + rsp);
if (rsp.isError()) {
throw new IOException(channel + " + query failed, status: " + rsp.getStatus());
}
IoSample sample = new IoSample(rsp.getValue(), xbeeAddress, logger);
logger.debug("sample: " + sample);
return new DataSample<Double>(System.currentTimeMillis(), sourceName, signature, sample.getChannel(channel), null);
} catch (Throwable t) {
IOException secondary = new IOException("Unable to read " + address);
secondary.initCause(t);
throw new IllegalStateException("Not Implemented", t);
} finally {
m.close();
NDC.pop();
}
}
示例15: processResponse
import com.rapplogic.xbee.api.AtCommandResponse; //导入依赖的package包/类
@Override
public void processResponse(XBeeResponse packet) {
NDC.push("processResponse");
try {
logger.debug("packet: " + packet);
ApiId apiId = packet.getApiId();
switch (apiId) {
case AT_RESPONSE:
AtCommandResponse atCommandResponse = (AtCommandResponse) packet;
String command = atCommandResponse.getCommand();
if ("ND".equals(command)) {
createPrototype(ZBNodeDiscover.parse(atCommandResponse));
} else if ("NT".equals(command)) {
// No big deal, browse() initiated it and handled it
} else {
logger.warn("Unexpected response received (command: " + command + ")");
}
break;
case ZNET_IO_SAMPLE_RESPONSE:
broadcastIoSample((ZNetRxIoSampleResponse) packet);
break;
default:
// Have no idea what this is, don't care
break;
}
} catch (Throwable t) {
logger.error("Oops", t);
} finally {
NDC.pop();
}
}