Wi-Fi մոդուլը Arduino տախտակի վրա տեղադրելուց հետո, գործարկելով այս հավելվածը բջջային հեռախոսի վրա՝ բջջային հեռախոսի և 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-ում)
Arduino-ի թվային պորտին միացված LED 5-ը միանում է, երբ 1 կոճակը սեղմվում է մեկ անգամ, և անջատվում է, երբ նորից սեղմվում է: (Փոխարկել գործողությունը)
///// LED-ների կառավարում Wi-Fi-ի միջոցով
Առաջին մասում ներառեք SoftwareSerial.h-ը:
SoftwareSerial esp8266 (2,3);
void setup ()
{
Սերիալ. սկիզբ (9600);
esp8266.begin (9600); // baud rate of esp
pinMode (5, OUTPUT);
digitalWrite(, LOW);
sendData («AT+RST\r\n»,2000); // մոդուլի վերականգնում
sendData ("AT+CWMODE=2\r\n",1000); // սահմանվել է որպես AP (մուտքի կետ)
sendData («AT+CIFSR\r\n»,1000); // ստանալ IP հասցե
sendData ("AT+CIPMUX=1\r\n",1000); // սահմանել մի քանի կապեր
sendData ("AT+CIPSERVER=1,80\r\n",1000); // սերվեր 80 նավահանգստում
}
void loop ()
{
if(esp8266.available()) // եթե esp-ը հաղորդագրություն է ուղարկում
{
if(esp8266.find("+IPD"))
{
ուշացում (200); // կարդալ բոլոր սերիական տվյալները
int connectionId = esp8266.read();
esp8266.find("?");
int Համար = esp8266.read();
if(համար==0x30){
if(digitalRead(5)==HIGH) digitalWrite(5, LOW);
else digitalWrite(5, HIGH);
}
// փակել հրամանը
String closeCommand = "AT+CIPCLOSE=";
closeCommand += connectionId; // կցել կապի ID-ն
closeCommand += "\r\n";
sendData (closeCommand, 1000); // փակ կապ
}
}
}
String sendData (String հրաման, const int timeout)
{
Լարի պատասխան = "";
esp8266.print (հրաման); // ուղարկել ընթերցված նիշ esp8266-ին
երկար int ժամանակ = millis ();
while( (ժամանակ+ժամկետը) > millis())
{
while(esp8266.available())
{
// Եթե esp-ում ստացված տվյալներ կան, ուղարկեք սերիական
char c = esp8266.read(); // կարդալ հաջորդ նիշը
պատասխան+=գ;
}
}
վերադարձի պատասխան;
}
Վերջին թարմացումը՝
17 նոյ, 2022 թ.