Setelah memasang modul Wi-Fi di papan Arduino, operasikan aplikasi ini di ponsel untuk menghubungkan komunikasi Wi-Fi antara ponsel dan Arduino, tekan 10 tombol yang tersedia di ponsel untuk mengenali penekanan tombol pada Arduino untuk melakukan operasi yang diinginkan. aplikasi yang memungkinkan
- Tombol tunggal: 10
(Data dikirim ke Arduino saat setiap tombol ditekan)
Tombol 1: '0' (heksadesimal 30) Tombol 2: '1' (heksadesimal 31)
Tombol 3: '2' (heksadesimal 32) Tombol 4: '3' (heksadesimal 33)
Tombol 5: '4' (heksadesimal 34) Tombol 6: '5' (heksadesimal 35)
Tombol 7: '6' (heksadesimal 36) Tombol 8: '7' (heksadesimal 37)
Tombol 9: '8' (heksadesimal 38) Tombol 10: '9' (heksadesimal 39)
(Contoh program di Arduino)
LED yang terhubung ke port digital 5 Arduino menyala ketika tombol 1 ditekan sekali, dan mati ketika ditekan lagi.(Toggle action)
///// Mengontrol LED melalui Wi-Fi
Sertakan SoftwareSerial.h di bagian pertama.
SoftwareSerial esp8266(2,3);
pengaturan batal()
{
Serial.begin(9600);
esp8266.begin(9600); // tingkat baud dari esp
pinMode(5, KELUARAN);
digitalWrite(, RENDAH);
sendData("AT+RST\r\n",2000); // reset modul
sendData("AT+CWMODE=2\r\n",1000); // tetapkan sebagai AP (titik akses)
sendData("AT+CIFSR\r\n",1000); // dapatkan alamat ip
sendData("AT+CIPMUX=1\r\n",1000); // atur ke banyak koneksi
sendData("AT+CIPSERVER=1,80\r\n",1000); // server di port 80
}
lingkaran kosong()
{
if(esp8266.available()) // jika esp mengirim pesan
{
jika(esp8266.find("+IPD,"))
{
penundaan (200); // membaca semua data serial
int connectionId = esp8266.read();
esp8266.find("?");
int Nomor = esp8266.read();
jika(Angka==0x30){
if(digitalRead(5)==TINGGI) digitalWrite(5, RENDAH);
lainnya digitalWrite(5, TINGGI);
}
// perintah tutup
String closeCommand = "AT+CIPCLOSE=";
closeCommand += connectionId; // lampirkan id koneksi
closeCommand += "\r\n";
sendData(closeCommand,1000); // tutup koneksi
}
}
}
String sendData(Perintah string, batas waktu const int)
{
Tanggapan string = "";
esp8266.print(perintah); // kirim karakter baca ke esp8266
lama int waktu = millis();
while( (waktu+batas waktu) > millis())
{
while(esp8266.tersedia())
{
// Jika ada data yang diterima di esp, kirimkan secara serial
char c = esp8266.read(); // membaca karakter selanjutnya
respon+=c;
}
}
respon balik;
}