OBBIETTIVO
Da Arduino UNO, invia comandi AT a ESP8266 tramite una porta SoftwareSerial e ricevi i risultati.
STATO ATTUALE
O invio comandi AT e non ottengo nulla indietro ( schema di cablaggio 1 ) oppure invio comandi AT e ricevo immondizia ( schema di cablaggio 2 ).
Usando Arduino come pass-through (come spiegato nel tutorial elencato nella sezione risorse), posso inviare comandi AT. Ho scoperto che posso comunicare con ESP8266 a 115200 baud.
Questo è il risultato dell'esecuzione AT+GMR
:
AT version:0.40.0.0(Aug 8 2015 14:45:58)
SDK version:1.3.0
Ai-Thinker Technology Co.,Ltd.
Build:1.3.0.2 Sep 11 2015 11:48:04
SCHEMA DI CABLAGGIO 1
!! Ho il filo verde attaccato al pin 3 sull'Arduino Uno e il filo giallo attaccato al pin 2; non 1 e 0 come suggerisce l'immagine !!
SCHEMA DI CABLAGGIO 2
Stesso cablaggio di cui sopra, ma ho RX e TX invertiti. Il filo verde è attaccato al pin 2 e il filo giallo è attaccato al pin 3.
CODICE
Questo è in esecuzione su Arduino Uno
#include <SoftwareSerial.h>
SoftwareSerial esp8266(2, 3);
void setup() {
// Open serial communications and wait for port to open:
Serial.begin(115200);
while (!Serial) {
; // wait for serial port to connect. Needed for native USB port only
}
Serial.println("Started");
// set the data rate for the SoftwareSerial port
esp8266.begin(115200);
esp8266.write("AT\r\n");
}
void loop() {
if (esp8266.available()) {
Serial.write(esp8266.read());
}
if (Serial.available()) {
esp8266.write(Serial.read());
}
}
RISULTATI DALLA SCHERMATA IN FUNZIONE
Schema di cablaggio 1
Started
Schema elettrico 2
Started
�����
Ho testato ESP8266 tramite le istruzioni elencate nel tutorial nella sezione Risorse che ho usato di seguito. ESP8266 funziona perfettamente quando si inviano istruzioni tramite il prompt seriale.
RISORSE CHE HO UTILIZZATO http://rancidbacon.com/files/kiwicon8/ESP8266_WiFi_Module_Quick_Start_Guide_v_1.0.4.pdf
DOMANDA
Qualcuno sa se ciò che sto cercando di fare è possibile? E se lo è, cosa sto facendo di sbagliato?