Den primade Excuser (4 / 6 steg)
Steg 4: Kod I: ta emot ett textmeddelande
Från och med nu ut det all kod förrän distribution, men låt oss bråttom inte när vi bara få känna varandra. Koden är inte din genomsnittliga varje dag Arduino C++ eftersom vi använder något mycket mer kraftfull: LinkIt en. Biblioteken är mycket mer omfattande och mer avancerade tekniken. Att göra ett telefonsamtal med en micro controller direkt ur lådan kan verka lite konstigt. Vi kommer att använda det LGSM biblioteket ganska omfattande, så kan det vara bra att läsa upp det lite.
Att fånga ett textmeddelande
Första, vi vill fånga ett textmeddelande. Logik inom funktionen loop()...
IF(LSMS.available()) / / kolla om det finns nya SMS
{
Denna jätte om block kontroller för att se om det finns ett nytt textmeddelande. Om det är, låt oss fortsätta och gå och tolka den.
LSMS.remoteNumber (p_num, 20); Display antal del
Serial.println ("det finns nya meddelande.");
Serial.Print("Number:");
Serial.println(p_num);
Serial.Print("Content:"); Visa innehåll del
Nästa, vi trycker lite grundläggande felsökning info. När det här distribueras vi bryr förmodligen mig inte mycket om den seriella produktionen, men är det alltid bra att skriva detta ut ifall vi vill gå tillbaka och ta en titt.
While(true)
{
int v = LSMS.read();
IF(v < 0)
bryta;
dtaget [len ++] = (char) v;
Serial.Print((Char)v);
}
Nästa vi kommer att läsa textmeddelandet. Det är lite svårt eftersom detta bäddas in teknik, det är inte så enkelt som "sträng = textMessage.read();". I stället måste vi läsa byte från textmeddelandet tecken för tecken, bildar en rad tecken som är vårt slutliga budskap. Detta görs i ovanstående medan loop.
LSMS.flush(); ta bort meddelande
Nu, för att spara utrymme på enheten, vi "spola" eller ta bort meddelandet.
om (()
dtaget [0] == "E"
& & dtaget [1] == 'X'
& & dtaget [2] == "C"
& & dtaget [3] == 'U'
& & dtaget [4] == 'S "
& & dtaget [5] == "E"
)
)
Slutligen, låt oss göra en grundläggande logik kontroll se till att textmeddelande säger "Ursäkta". Detta kommer att se till att vi faktiskt vill utlösa excuser, kontra fick vi bara lite random text.
Och det är det! Nu ska vi gå in i hur vi kommer att utlösa det telefonsamtalet för att ta oss ur vår ättikslag...