SMS-bericht in een fles (4 / 5 stap)

Stap 4: Schrijven programma


BELANGRIJKE opmerking: LiquidCrystal bibliotheek

Op het moment van schrijven van dit komt de LinkIt één IDE met versie 1.6.5 van de Arduino IDE, die toevallig ook een waar de LiquidCrystal -bibliotheek die wij gebruiken is gebroken. Kijk naar dit Instructable op hoe de bestanden wilt vervangen LiquidCrystal met werken van degenen.

Intro

Ik ben ervan uitgaande dat u al hebt ingesteld uw Arduino IDE te werken met de LinkIt One, zo niet, neem een kijkje op de "getting started" gids hier.

Ik heb mijn definitieve code bijgevoegd met deze stap, u moet zitten kundig voor lezen via het en haar opmerkingen om een vrij goed idee van hoe het werkt. Ik zal beschrijven hier de belangrijke segmenten.

Importeren van bibliotheken

De eerste stap is opgenomen van de verschillende bibliotheken die zullen worden gebruikt.

Variabelen definiëren

Daarna definiëren we verschillende globale variabelen die worden gebruikt in het programma. U zult zien dat een aantal van hen zijn gedefinieerd als "char naam [x]" wat betekent dat ze een matrix van x tekens, die is gebruikt voor het opslaan van dingen zoals het SMS-bericht of een bericht van de status.

Setup functie

Deze functie wordt uitgevoerd als wanneer de Raad van bestuur laarzen.

waitForSim() functie

De rest van het programma zal niet werken als de SIM-kaart niet is geïnitialiseerd, zodat deze functie alleen het apparaat in een lus houdt, wachten op de SIM-kaart klaar te zijn (en afdrukken van kleine puntjes op de seriële interface, zodat u het weet nog niet overleden).

receiveSMS() functie

Deze functie zal controleren of er een nieuwe SMS. Als er een, het is gelezen in, één teken tegelijk, en wordt opgeslagen in de buffer van de smsContent (een karakter array), dan retourneert de functie hoog (true/1). Als er geen nieuwe SMS retourneert de functie lage (false/0). Dit kan we noemen het zo vaak als we zoals in de hoofdlus, maar alleen iets doen als er een nieuw bericht.

De "newMessage" boolean is ook ingesteld op TRUE wanneer een nieuw bericht is ontvangen.

Zodra de SMS heeft gelezen het is verwijderd met de opdracht flush().

chargeStatus() functie

Deze functie maakt een tekstregel 16 karakter over laadstatus.

Lbattery.isCharging() retourneert een 1 als de batterij wordt opgeladen en een 0 als het niet.

Lbattery.level() retourneert 0,33,66 of 100, afhankelijk van de huidige laadniveau van de batterij.

We gebruiken de "sprintf"-functie voor het opmaken van de uitvoer van de vorige twee functies in een mooie lijn van tekst, die slaan wij op in de karakter array van statusMessage voor gebruik in de updateDisplay() functie.

updateDisplay() functie

Dit is waar alle eerder gegenereerde inhoud wordt verzonden naar het LCD-scherm voor weergave. Het zal het meest zinvol om te lezen het door en kijken naar de inline-opmerkingen maken.

Het eerste ding op te merken is het gebruik van een teller, die neemt nota van het wanneer het scherm voor het laatst werd bijgewerkt (in milliseconden, geboden door de Arduino millis() functie), en alleen weer bijgewerkt als er voldoende tijd (scrollInterval) is verstreken.

Het scrollen aan het bericht op de 2e regel wordt bereikt door het opslaan van twee variabelen:

msgStartChar

Deze variabele slaat welk teken van de inhoud van de SMS we eerst afdrukken zijn (omdat we niet de hele 160 karakter sms op een regel van 16 tekens past)

lcdStartChar

Deze variabele opgeslagen waar op het LCD-scherm het bericht begint, omdat we willen dat het bericht om te scrollen van rechts, het kan niet altijd gewoon beginnen op het eerste teken.

Elke keer dat de weergave wordt bijgewerkt we beginnen van rechts (positie 15) en lcdStartChar verkleinen totdat het bericht op het eerste teken (positie 0) begint, dit effectief schuift het bericht links.

Eens het begin van het bericht is aan de linkerkant, het moet schuiven scherm, dus we verhogen de msgStartChar op elke update.

			
          

Gerelateerde Artikelen

Waarde van de sensor geactiveerd SMS-bericht met behulp van LinkitOne

Waarde van de sensor geactiveerd SMS-bericht met behulp van LinkitOne

Een andere grote eigenschap van de MediaTek LinkitOne ontwikkeling van bestuur is de ondersteuning voor SIM-kaarten!De mogelijkheden van de ontwikkeling van iets echt cool met de Linkit zijn eindeloos.In dit instructable, laat ons kijken hoe Lees sen
Sleutel tot mijn hart (in een fles)

Sleutel tot mijn hart (in een fles)

dit is kleine geschenk die ik heb voor mijn vriendin voor haar verjaardag gemaakt.Ik kreeg het idee van deze link en besloot mijn eigen een te maken.U hoeft geen speciale vaardigheden of instrumenten voor dit zoals het is vrij gemakkelijk te maken.Ik
Hoe te sturen een SMS-bericht van "tekst" van Yahoo! naar een mobiele telefoon.

Hoe te sturen een SMS-bericht van "tekst" van Yahoo! naar een mobiele telefoon.

Dit zal u tonen hoe een korte bericht verzenden vanaf een computer via de website Yahoo!™ naar een mobiele telefoon, met inbegrip van hoe te beantwoorden en antwoorden die worden ontvangen in het chat-indeling accepteren. Dit is vrij om te sturen naa
Onorthodoxe Geboortekerk, Gabriels bericht in een plastic fles

Onorthodoxe Geboortekerk, Gabriels bericht in een plastic fles

het is een oud-katholieke traditie om een kerststal opgemaakt voor Kerstmis aan ons aan de oorsprong van het feest herinnert. De traditie is sterven in Nederland. Grote Santa wint aan belang met royale decoraties, geschenken, grote bomen, en teveel t
EMessage in een fles

EMessage in een fles

De eMessage in een fles is een eenvoudig project voor de beginner circuit liefhebber. Het duidelijk vandaan kwam over mij willen dat mijn stem in een fles. Herinner me als een kind probeerde u schreeuwen in een fles, snel te sluiten, en het vervolgen
"een beetje liefde time capsule" - Letter in een fles

"een beetje liefde time capsule" - Letter in een fles

Hi,Voor allen die er die willen iets speciale door gaat jezelf om uw Valentijn zich speciaal voelt hier een eenvoudige gemakkelijk te maken van de brief in een fles.Happy Valentijnsdag, genieten!!!Stap 1: Maak het buitenste vak klaar voor het verpakk
Zonne-hete luchtballon bericht-in-a-fles

Zonne-hete luchtballon bericht-in-a-fles

dit is een hete luchtballon gemaakt van Prullenbak zakken en verwarmd door de zon. Zodra vanuit de lucht, moet ook zo blijven 'til de zon neer of achter de wolken gaat. Onnodig te zeggen, kan het een lange, lange weg reizen. Aangesloten op het is een
GSM SIM900 Arduino dagelijks SMS bericht

GSM SIM900 Arduino dagelijks SMS bericht

Met behulp van SeeedStudio-GSM SIM900 Shield met Arduino en Ting.com SMSOverzichtIk wilde een manier voor het bijhouden van activiteit in pand met macht en cel service, maar geen WiFi service, dus ik draaide me om een SeeedStudio GSM GPRS SIM900 Ardu
Hoe maak je een fles gebouw

Hoe maak je een fles gebouw

Hoi iedereen dit is mijn eerste instructable. Wees voorzichtig.I f u bevalt, please vote voor mij. Bedankt.We hebben twee fles gebouwen gebouwd.Een is een kleine opslag gebouw met een scala aan verschillende flessen. De andere is een groter gebouw vo
Ik hou van je omdat... Boodschap in een fles Key Ring

Ik hou van je omdat... Boodschap in een fles Key Ring

hier is het - de handgemaakte geschenk, gepersonaliseerd door u voor de speciale man in je leven! Natuurlijk, dit zou een grote vrouw ketting ook maken, maar u weet hoe hard deze jongens zijn om te winkelen voor! Dit is een ander fantastisch Leerprog
Maak een wolk In een fles

Maak een wolk In een fles

Maak uw eigen Cloud In een flesDit is een groot experiment om opnieuw (met een beetje volwassen toezicht) wanneer de kinderen niet kunnen spelen want het regent. U kunt uitleggen hoe de wolk in de fles wordt gevormd en hoe dit is vergelijkbaar met ho
SMS verzenden vanuit een PHP website via HTTP met behulp van de Raspberry Pi

SMS verzenden vanuit een PHP website via HTTP met behulp van de Raspberry Pi

Achtergrond van het verzenden van SMS vanaf website met Raspberry PiBent u nieuwsgierig naar de meest eenvoudigste manier om SMS te verzenden vanaf uw website? Tegenwoordig, ik ben echt geïnteresseerd zijn in het gebied van Internet of Things (IoT) g
Hoe maak je een fles champagne nog meer romantisch

Hoe maak je een fles champagne nog meer romantisch

iedereen weet dat niets helpt een avond romantischer dan een fles champagne goed te maken. Maar wat als je zou kunnen maken van de gelegenheid zelfs een beetje meer romantisch? Hier is een manier om een stuk van afval te recycleren in een gekoesterde
Zelda stijl sprookje In een fles

Zelda stijl sprookje In een fles

Nodig een snelle pick-up me? Laag op hart? Of misschien je gewoon wilt nemen op een Stalfos maar zijn bang voor de gevolgen. Ook niet meer, want ik ga u tonen hoe te maken van uw eigen levensreddende sprookje in een fles. (Vervelend geluidseffecten n