我有两个 subnero WNC-M25MSS3 调制解调器,我的目标是实现 2 节点网络。它们由协处理器和 Janus 协议组成。在我未来的海上部署期间,名为 A 的调制解调器将位于海面,调制解调器 B 位于深处,我可以连接到调制解调器 A 的外壳,以便执行我在那里创建的脚本的命令。我的目标如下:当我在 A 的 shell 中输入命令行“requestData”时,我必须从 B 申请数据。为此,一旦输入命令行,这将生成一条 Janus 消息,其中包含数据传输给B。当B收到消息时,它应该自动响应数据。这就是我卡住的地方,我已经为两个调制解调器创建了数据传输脚本,但是我找不到让 B“听”的方法,即
这是调制解调器 A 调用传输的功能:
B = host('B');
subscribe phy;
int counterA = 3; // counter which will create in the future
int ID = 0; // Transmitting to everybody
int [] request = new int[2];
request[0] = counterA; // Data is create in a table
request[1] = ID;
// request[2] = ; ????
phy << new TxJanusFrameReq(type: CONTROL, data: request, to: ID); // Transmission of data with Janus
这是我在调制解调器 B 上创建的无限循环,以便在收到消息后使用“sendData”进行传输:我在这里卡住了
subscribe phy;
while(RxFrameNtf != true){
//receivedData = [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
//receivedData = ntf.data;
try{
try { //wait 5 seconds function
Thread.sleep(5000) ;
} catch (InterruptedException e) {
// gestion de l'erreur
}
receivedData = ntf.data; // Analyse the receiving data
}catch (Exception e){
//println([receivedData]);
println("No data yet");
//tampomEvent;
}
//println([receivedData]);
}
println("Amazing, you're out now!!!");
if(ntf.data[1] == 0){
println("OK");
sendData;
}