Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json ESP8266和Arduino UNO之间的通信问题_Json_Arduino_Esp8266_Serial Communication_Arduinojson - Fatal编程技术网

Json ESP8266和Arduino UNO之间的通信问题

Json ESP8266和Arduino UNO之间的通信问题,json,arduino,esp8266,serial-communication,arduinojson,Json,Arduino,Esp8266,Serial Communication,Arduinojson,我有个奇怪的问题。我提供了我的代码,但我相信问题出在接线上,稍后我会解释。 ESP8266代码: #include <SoftwareSerial.h> SoftwareSerial s(12,14); #include <ArduinoJson.h> void setup() { s.begin(9600); Serial.begin(9600); } void loop() { StaticJsonBuffer<1000> jsonBuffer;

我有个奇怪的问题。我提供了我的代码,但我相信问题出在接线上,稍后我会解释。 ESP8266代码:

#include <SoftwareSerial.h>
SoftwareSerial s(12,14);
#include <ArduinoJson.h>
 
void setup() {
s.begin(9600);
Serial.begin(9600);
}
 
void loop() {
 StaticJsonBuffer<1000> jsonBuffer;
 JsonObject& root = jsonBuffer.createObject();
  root["data1"] = 100;
  root["data2"] = 200;
 Serial.println(s.available());
if(s.available()>0)
{
 root.printTo(s);
}
delay(1000);
}

#包括
串行软件(12,14);

#包括

好的,我刚刚设法解决了这个问题。我必须将引脚更改为0和1,如下所示:

SoftwareSerial s(0,1);


但是,这些引脚也用于与您的计算机通信,导致arduino ide无法在这些引脚被占用时将代码上载到我们的arduino。简单的解决方案是上传代码,然后连接NodeMcu ESP8266。希望这对somone有所帮助。

我不知道或使用这些库,但在我看来,您的ESP等待接收某个信息,然后发送某个信息,而您的UNO从未尝试发送或接收任何信息。您能否编辑您的问题,并澄清谁应该发送代码中的内容以及何时/何地,以及谁应该在何时/何地/接收内容?谢谢,什么?在硬件串行引脚上使用软件串行?然后使用硬件,正确答案在注释中。您等待available(),但没有任何内容,因为您没有从另一端发送任何内容。只有当重新连接产生的随机字节发生时,才会出现这种情况
SoftwareSerial s(0,1);