Arduino ബോർഡിൽ Wi-Fi മൊഡ്യൂൾ ഘടിപ്പിച്ച ശേഷം, മൊബൈൽ ഫോണും Arduino-യും തമ്മിലുള്ള Wi-Fi ആശയവിനിമയം ബന്ധിപ്പിക്കുന്നതിന് മൊബൈൽ ഫോണിൽ ഈ ആപ്ലിക്കേഷൻ പ്രവർത്തിപ്പിക്കുക, ബട്ടൺ അമർത്തുന്നത് തിരിച്ചറിയാൻ മൊബൈൽ ഫോണിൽ നൽകിയിരിക്കുന്ന 10 ബട്ടണുകൾ അമർത്തുക. ആവശ്യമുള്ള പ്രവർത്തനം നടത്താൻ Arduino. അനുവദിക്കുന്ന ആപ്പ്
- ഒറ്റ ബട്ടൺ: 10
(ഓരോ ബട്ടണും അമർത്തുമ്പോൾ Arduino-ലേക്ക് ഡാറ്റ അയയ്ക്കുന്നു)
ബട്ടൺ 1: '0' (ഹെക്സാഡെസിമൽ 30) ബട്ടൺ 2: '1' (ഹെക്സാഡെസിമൽ 31)
ബട്ടൺ 3: '2' (ഹെക്സാഡെസിമൽ 32) ബട്ടൺ 4: '3' (ഹെക്സാഡെസിമൽ 33)
ബട്ടൺ 5: ‘4’ (ഹെക്സാഡെസിമൽ 34) ബട്ടൺ 6: ‘5’ (ഹെക്സാഡെസിമൽ 35)
ബട്ടൺ 7: ‘6’ (ഹെക്സാഡെസിമൽ 36) ബട്ടൺ 8: ‘7’ (ഹെക്സാഡെസിമൽ 37)
ബട്ടൺ 9: ‘8’ (ഹെക്സാഡെസിമൽ 38) ബട്ടൺ 10: ‘9’ (ഹെക്സാഡെസിമൽ 39)
(ആർഡ്വിനോയിലെ പ്രോഗ്രാമിന്റെ ഉദാഹരണം)
ഒരു തവണ ബട്ടൺ അമർത്തുമ്പോൾ Arduino-യുടെ ഡിജിറ്റൽ പോർട്ട് 5-ലേക്ക് കണക്റ്റ് ചെയ്ത LED ഓണാകും, വീണ്ടും അമർത്തുമ്പോൾ ഓഫാകും. (പ്രവർത്തനം മാറ്റുക)
///// Wi-Fi വഴി LED-കൾ നിയന്ത്രിക്കുന്നു
ആദ്യ ഭാഗത്തിൽ SoftwareSerial.h ഉൾപ്പെടുത്തുക.
SoftwareSerial esp8266(2,3);
അസാധുവായ സജ്ജീകരണം ()
{
സീരിയൽ.ആരംഭിക്കുക(9600);
esp8266.begin(9600); // ബോഡ് റേറ്റ് ഓഫ് എസ്പി
പിൻമോഡ്(5, ഔട്ട്പുട്ട്);
ഡിജിറ്റൽ റൈറ്റ് (, ലോ);
sendData("AT+RST\r\n",2000); // മൊഡ്യൂൾ റീസെറ്റ്
sendData("AT+CWMODE=2\r\n",1000); // AP ആയി സജ്ജീകരിച്ചു (ആക്സസ് പോയിന്റ്)
sendData("AT+CIFSR\r\n",1000); // ഐപി വിലാസം നേടുക
sendData("AT+CIPMUX=1\r\n",1000); // ഒന്നിലധികം കണക്ഷനുകളിലേക്ക് സജ്ജമാക്കി
sendData("AT+CIPSERVER=1,80\r\n",1000); പോർട്ട് 80-ലെ സെർവർ
}
അസാധുവായ ലൂപ്പ്()
{
if(esp8266.available()) // esp ഒരു സന്ദേശം അയയ്ക്കുകയാണെങ്കിൽ
{
if(esp8266.find("+IPD,"))
{
കാലതാമസം (200); // എല്ലാ സീരിയൽ ഡാറ്റയും വായിക്കുക
int connectionId = esp8266.read();
esp8266.find("?");
int നമ്പർ = esp8266.read();
എങ്കിൽ(സംഖ്യ==0x30){
if(digitalRead(5)==HIGH) digitalWrite(5, LOW);
മറ്റ് ഡിജിറ്റൽ റൈറ്റ് (5, ഉയർന്നത്);
}
// കമാൻഡ് അടയ്ക്കുക
String closeCommand = "AT+CIPCLOSE=";
CloseCommand += connectionId; // കണക്ഷൻ ഐഡി അറ്റാച്ചുചെയ്യുക
CloseCommand += "\r\n";
sendData (closeCommand,1000); // അടുത്ത ബന്ധം
}
}
}
String sendData(String command, const int കാലഹരണപ്പെട്ടു)
{
സ്ട്രിംഗ് പ്രതികരണം = "";
esp8266.print(കമാൻഡ്); // വായിച്ച അക്ഷരം esp8266 ലേക്ക് അയയ്ക്കുക
നീണ്ട സംഖ്യാ സമയം = മില്ലിസ്();
അതേസമയം((സമയം+കാലാവധി) > മില്ലി())
{
അതേസമയം(esp8266.available())
{
// esp ൽ ലഭിച്ച ഡാറ്റ ഉണ്ടെങ്കിൽ, അത് സീരിയലായി അയയ്ക്കുക
char c = esp8266.read(); //അടുത്ത അക്ഷരം വായിക്കുക
പ്രതികരണം+=സി;
}
}
തിരിച്ചുള്ള പ്രതികരണം;
}
അപ്ഡേറ്റ് ചെയ്ത തീയതി
2024, ഡിസം 5