Sisällysluettelo:
- Vaihe 1: Rakenna
- Vaihe 2: Koodi
- Vaihe 3: Muodosta yhteys HTTPS -verkkosivustoon
- Vaihe 4: Tee POST / GET -pyynnöt
- Vaihe 5: JSON & NOKIA LCD
Video: Liitetty sekuntikello: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:02
Hei! Tässä opetusohjelmassa saat selville, kuinka voit liittää minkä tahansa Arduino -yhteensopivan laitteen, jossa on WiFi, REST -sovellusliittymiin! Käytä GitKraken Glo Board -sovellusta luomaan tauluja, sarakkeita ja kortteja asioiden järjestämiseen!
Jotain tietoa julkisen sovellusliittymän toiminnasta tarvitaan. Tämä projekti on tarkoitettu käyttämään GitKraken Glo -sovellusliittymää tehtävälistojen tehtäviin käyttämäsi ajan seurantaan.
Sinun on esimerkiksi tehtävä seuraavat tehtävät:
- Juoda kahvia
Kun painat Start -painiketta, kun aloitat, kun olet valmis, painat Valmis, ja voilà, käyttämäsi aika kommentoidaan.
Vaihe 1: Rakenna
Rakentamiseen voi ajatella mitä tahansa. Pieni sekuntikello olisi hienoa, mutta en tehnyt mitään pientä.
Joten pahvi ja arcade -painikkeet olivat oikea tapa!
Käytetty levy on ESP8266 WeMos D1 Mini. Tämä on halvempaa kuin Arduino, ja siinä on WiFi!
Näyttö on Nokia 5110 LCD.
n
Osaluettelo AliExpressissä:
- Nokia 5110
- 2 arcade -painiketta
- ESP8266
- Hyppyjohdot
- Pahvilaatikko
Mutta voit periaatteessa löytää sen mistä tahansa tai muilta sivustoilta, kuten Amazon tai eBay.
Kokonaislasku: 5 € 86
Liitännät:
ESP8266 WeMos D1 Mini ja Nokia 5110 LCD
- D2 (GPIO4) ↔ 0 RST
- D1 (GPIO5) ↔ 1 CE
- D6 (GPIO12) ↔ 2 DC
- D7 (GPIO13) ↔ 3 DIN
- D5 (GPIO14) ↔ 4 CLK
- 3V3 ↔ 5 VCC
- D0 (GPIO16) ↔ 6 BL
- G (GND) ↔ 7 GND
ESP8266 WeMos D1 Mini ↔ Arcade -painikkeet
D3 (GPI18) ↔ Vasen painike
D4 (GPI17) ↔ Oikea painike
Painikkeen toinen nasta on kytketty maahan (GND).
Vaihe 2: Koodi
Anna vain koodi
Löydät koko lähdekoodin täältä:
github.com/antoinech/glo-stopwatch
Jotta se toimisi sinulle, sinun on muutettava nämä muuttujat:
// Laita WiFi-kirjautumistietosi tähän: char* ssid = "-sinun-ssid--"; const char* password = "-sinun-salasanasi-"; // Laita henkilökohtainen käyttöoikeustunnuksesi (https://support.gitkraken.com/developers/pats/) const char *bearer = "Kantaja XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
Tarvitset myös kaksi Adafruit -kirjastoa:
github.com/adafruit/Adafruit-GFX-Library
github.com/adafruit/Adafruit-PCD8544-Nokia…
Ja tämä mahtava Arduino Json:
arduinojson.org/
Selitykset
Lähdekoodista saat selville:
- kuinka muodostaa yhteys HTTPS -päätepisteeseen
- kuinka tehdä POST- tai GET -pyyntö
- kuinka sarjoittaa JSON -vastaus objekteja ja matriiseja varten
- kuinka näyttää tekstiä ja kuvia Nokia 5110 LCD -näytössä
Jos haluat lisätietoja tästä sovellusliittymästä:
support.gitkraken.com/developers/overview/
Nämä pyynnöt voivat toimia etäyhteydessä minkä tahansa sovellusliittymän kanssa, joka käyttää POST- ja GET -pyyntöjä:)
Vaihe 3: Muodosta yhteys HTTPS -verkkosivustoon
Tämä pseudokoodi selittää, miten muodostat yhteyden HTTPS-verkkosivustoon. Sen ensimmäiset vaiheet ovat samat kuin kohdassa
WiFiClient -asiakas
mutta vahvistusvaiheella. Sinun on siirryttävä API -päätepisteeseen, jonka haluat vahvistaa, ja tarkista varmenteen SHA1 -sormenjälki. Kopioi ja liitä se merkkijonoksi koodiin ja soita client.verify (sormenjälki, hosturl).
WiFiClientSecure -asiakas;
// Yhdistä WiFi WiFi -tilaan (WIFI_STA); WiFi.begin (ssid, salasana); while (WiFi.status ()! = WL_CONNECTED) {delay (500); Serial.print ("."); } if (! client.connect (isäntä, httpsPort)) {Serial.println ("yhteys epäonnistui"); palata; } if (client.verify (sormenjälki, isäntä)) {Serial.println ("sertifikaatti vastaa"); } else {Serial.println ("varmenne ei täsmää"); }
Vaihe 4: Tee POST / GET -pyynnöt
LÄHETTÄÄ
Tämä on syntaksi POST -pyynnön tekemiselle:
Jono PostData = "{"; PostData += "\" text / ": \" viestini / ""; PostData += "}"; Serial.print (PostData); client.print (Merkkijono ("POST") + url + "HTTP/1.1 / r / n" + "Isäntä:" + isäntä + "\ r / n" + "Valtuutus:" + kantaja + "\ r / n" + "User-Agent: BuildFailureDetectorESP8266 / r / n" + "cache-control: no-cache / r / n" + "Content-Type: application/json / r / n" + "Content-Length:" + PostData. pituus () + "\ r / n" + "\ r / n" + PostData + "\ n"); Serial.println ("pyyntö lähetetty");
PostData on tiedot, jotka lähetät JSON -muodossa, tässä tapauksessa:
{
"text": "viestini"}
URL -muuttuja on päätepisteen URL -osoite, isäntä, verkkosivuston URL -osoite, siirtotie on sovellusliittymän käyttöoikeustunnus.
SAADA
Tämä on GET-pyynnön pseudokoodi:
client.print (Merkkijono ("GET") + url + "HTTP/1.1 / r / n" + "Isäntä:" + isäntä + "\ r / n" + "Valtuutus:" + siirtotie + "\ r / n" + "Käyttäjäagentti: BuildFailureDetectorESP8266 / r / n" + "Yhteys: pidä hengissä / r / n / r / n"); Serial.println ("pyyntö lähetetty"); while (client.connected ()) {String line = client.readStringUntil ('\ n'); if (line == "\ r") {Serial.println ("otsikot vastaanotettu"); tauko; }} Merkkijono = client.readStringUntil ('\ n');
Tämän komennon tulos tallennetaan rivimuuttujaan.
Vaihe 5: JSON & NOKIA LCD
Jotta voit saavuttaa samanlaisen projektin, sinun on näytettävä kuvia, tekstejä ja symboleja Nokia 5110 LCD -näytöllä.
Käyttääksesi JSONia Arduino C ++: ssa, käytä ArduinoJson -verkkosivustoa, joka kertoo sinulle kaiken!
Älä epäröi lähettää kysymyksiä, jos sinulla on kysymyksiä, tai julkaista tekemäsi tämän lähdekoodin / opetusohjelman avulla.
Suositeltava:
Liitetty kukkaruukku Mikrolle: bitti: 4 vaihetta
Liitetty kukkaruukku Micro: bitille: Tämä kukkaruukku on tehty 3D -tulostuksella ja siinä on mikrobit -kortti.Tämä ruukku sisältää micro: bit -kortin, joka on sijoitettu maaperän alle. Tämä vastaanottaa tiedot maaperän kosteusanturilta (johtavuus)
Mirolo -verkkoon liitetty LED -matriisinäyttö digitaalisille opasteille: 22 vaihetta (kuvilla)
Mirolo -verkkoon liitetty LED -matriisinäyttö digitaalisille opasteille: Digitaaliset opasteet voivat olla hyödyllisiä tapahtumissa, jotta ne voivat tiedottaa vierailijoille tulevista paneeleista, aikataulun muutoksista tai antaa dynaamisesti tietoa. LED Matrix -näyttöjen käyttäminen tekee viestistä luettavan jopa kaukaa ja on silmäänpistävä
Liitetty termostaatti: 6 vaihetta (kuvien kanssa)
Liitetty termostaatti: Kodin lämpötilan tarkka tarkkailu on ehdottomasti yksi parhaista tavoista säästää energialaskuasi. Samalla haluat tuntea olosi hyväksi lämpimässä kodissa talvella. Nykyinen termostaattini sallii vain staattisen ohjelmoinnin: I
NAS (verkkoon liitetty tallennustila) Raspberry Pi: n avulla: 6 vaihetta
NAS (Network Attached Storage) Raspberry Pi: n käyttäminen: Verkkoon liitetty tallennustila tai NAS lyhyesti on todella hyvä laite, jos sinulla on suuri määrä tiedostoja ja tietoja. Minulla on niin paljon työhön liittyvää sisältöä tietokoneen sisäisellä kiintolevyllä, että se ei jätä paljon tilaa henkilökohtaisille tiedoilleni, joten
Liitetty laturi: 5 vaihetta (kuvien kanssa)
Liitetty laturi: Muutama kuukausi sitten ostin sähköisen skootterin jokapäiväiseen työmatkalle. Häntä kutsutaan nimellä HP_BEXXTER (googlettamalla saat lisätietoja :-)) Nyt halusin tietää, kuinka paljon energiaa tarvitsen näille asemille. Haluan myös kerätä lisätietoja