Pēc Wi-Fi moduļa uzstādīšanas uz Arduino plates, šīs lietotnes darbināšana mobilajā tālrunī, lai savienotu Wi-Fi saziņu starp mobilo tālruni un Arduino, nospiežot 10 mobilajā tālrunī paredzētās pogas, lai atpazītu pogas nospiešanu Arduino, lai veiktu vēlamo darbību. lietotne, kas ļauj
- Viena poga: 10
(Dati tiek nosūtīti uz Arduino, kad tiek nospiesta katra poga)
1. poga: “0” (heksadecimāls 30) 2. poga: 1 (heksadecimāls 31)
3. poga: “2” (heksadecimāls 32) 4. poga: 3 (heksadecimāls 33)
5. poga: “4” (heksadecimāls 34) 6. poga: 5 (heksadecimāls 35)
7. poga: “6” (heksadecimāls 36) 8. poga: 7 (heksadecimāls 37)
9. poga: “8” (heksadecimāls 38) 10. poga: 9 (heksadecimāls 39)
(Arduino programmas piemērs)
Gaismas diode, kas savienota ar Arduino digitālo portu 5, iedegas, kad vienreiz tiek nospiesta poga 1, un izslēdzas, kad to nospiež vēlreiz. (Pārslēgt darbību)
///// Gaismas diožu vadība, izmantojot Wi-Fi
Pirmajā daļā iekļaujiet SoftwareSerial.h.
SoftwareSerial esp8266(2,3);
nederīgs iestatījums ()
{
Sērijas sākums (9600);
esp8266.begin(9600); // bodu ātrums esp
pinMode(5, OUTPUT);
digitalWrite(, LOW);
sendData("AT+RST\r\n",2000); // moduļa atiestatīšana
sendData("AT+CWMODE=2\r\n",1000); // iestatīts kā AP (piekļuves punkts)
sendData("AT+CIFSR\r\n",1000); // iegūt IP adresi
sendData("AT+CIPMUX=1\r\n",1000); // iestatīts uz vairākiem savienojumiem
sendData("AT+CIPSERVER=1,80\r\n",1000); // serveris 80. portā
}
tukšuma cilpa ()
{
if(esp8266.available()) // ja esp sūta ziņojumu
{
if(esp8266.find("+IPD"))
{
kavēšanās(200); // lasīt visus sērijas datus
int savienojumsId = esp8266.read();
esp8266.find("?");
int Skaitlis = esp8266.lasīt();
if(skaitlis==0x30){
if(digitalRead(5)==HIGH) digitalWrite(5, LOW);
cits digitalWrite(5, AUGSTS);
}
// aizvērt komandu
String closeCommand = "AT+CIPCLOSE=";
closeCommand += savienojuma ID; // pievienot savienojuma ID
closeCommand += "\r\n";
sendData(closeCommand,1000); // ciešs savienojums
}
}
}
Virkne sendData (virknes komanda, const int taimauts)
{
Virknes atbilde = "";
esp8266.print(komanda); // nosūtīt lasāmo rakstzīmi uz esp8266
garš int laiks = millis();
while( (laiks+taimauts) > mili())
{
while(esp8266.available())
{
// Ja esp ir saņemti dati, nosūtiet tos sērijveidā
char c = esp8266.lasīt(); // lasīt nākamo rakstzīmi
atbilde+=c;
}
}
atbildes reakcija;
}
Atjaunināta
2024. gada 5. dec.