Sadržaj:

Povezana štoperica: 5 koraka
Povezana štoperica: 5 koraka

Video: Povezana štoperica: 5 koraka

Video: Povezana štoperica: 5 koraka
Video: Алгоритм успеха. 5 шагов 2024, Studeni
Anonim
Povezana štoperica
Povezana štoperica
Povezana štoperica
Povezana štoperica
Povezana štoperica
Povezana štoperica

Pozdrav! U ovom vodiču ćete saznati kako spojiti bilo koji Arduino kompatibilan uređaj, opremljen WiFi -em, na REST API -je! Ovo koristi web stranicu GitKraken Glo Board za stvaranje ploča, stupaca i kartica za organiziranje stvari!

Potrebno je znanje o tome kako javni API funkcionira. Ovaj projekt ima za cilj koristiti GitKraken Glo's API za praćenje vremena koje trošite na zadatke na popisima obaveza.

Na primjer, morate obaviti sljedeće zadatke:

- Piti kavu

Pritisnite start kad počnete, kada završite, pritisnite Done, i voilà, vrijeme koje provedete dobiva komentar.

Korak 1: Izgradite

Izgraditi
Izgraditi
Izgraditi
Izgraditi

Za izgradnju možete smisliti bilo što. Mala štoperica bila bi izvrsna, ali nisam ništa sitno legao.

Dakle, kartonski i arkadni gumbi su bili pravi put!

Ploča koju sam koristio je ESP8266 WeMos D1 Mini. Ovo je jeftinije od Arduina, a ima ugrađen WiFi!

Zaslon je Nokia 5110 LCD.

n

Popis dijelova na AliExpressu:

  • Nokia 5110
  • 2 arkadna gumba
  • ESP8266
  • Kratkospojne žice
  • Kartonska kutija

No, u osnovi ga možete pronaći bilo gdje ili na drugim web stranicama poput Amazona ili eBaya.

Ukupni račun: 5 € 86

Iglasti priključci:

ESP8266 WeMos D1 Mini, Nokia 5110 LCD

  • D2 (GPIO4) ↔ 0 RST
  • D1 (GPIO5) ↔ 1 CE
  • D6 (GPIO12) ↔ 2 istosmjerna
  • D7 (GPIO13) ↔ 3 DIN
  • D5 (GPIO14) ↔ 4 CLK
  • 3V3 ↔ 5 VCC
  • D0 (GPIO16) ↔ 6 BL
  • G (GND) ↔ 7 GND

ESP8266 WeMos D1 Mini ↔ Arkadni gumbi

D3 (GPI18) ↔ Lijevo dugme

D4 (GPI17) ↔ Desni gumb

Drugi pin gumba spojen je na masu (GND).

Korak 2: Kodiranje

Kodirati
Kodirati
Kodirati
Kodirati
Kodirati
Kodirati

Samo mi daj kod

Cijeli izvorni kod možete pronaći ovdje:

github.com/antoinech/glo-stopwatch

Da bi vam to uspjelo, morate promijeniti ove varijable:

// Ovdje unesite svoje vjerodajnice za WiFiconst char* ssid = "--your-ssid--"; const char* lozinka = "-vaša-lozinka--"; // Stavite svoj osobni pristupni token (https://support.gitkraken.com/developers/pats/) const char *bearer = "Nosilac XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";

Također će vam trebati 2 biblioteke Adafruit:

github.com/adafruit/Adafruit-GFX-Library

github.com/adafruit/Adafruit-PCD8544-Nokia…

I ovaj sjajni Arduino Json:

arduinojson.org/

Objašnjenja

U izvornom kodu ćete saznati:

  • kako se spojiti na HTTPS krajnju točku
  • kako napraviti POST ili GET zahtjev
  • kako serializirati JSON odgovor za dobivanje objekata i polja
  • kako prikazati tekst i slike na Nokia 5110 LCD -u

Ako želite saznati više o ovom API -ju:

support.gitkraken.com/developers/overview/

Ovaj zahtjev može raditi s daljinskim upravljanjem bilo kojim API -jem koji koristi POST i GET zahtjeve:)

Korak 3: Povežite se s HTTPS web lokacijom

Ovaj pseudo-kôd objašnjava kako se spojiti na HTTPS web stranicu. Njegovi prvi koraci isti su kao i kod a

WiFiClient klijent

ali s korakom provjere. Morate otići do krajnje točke API -ja koju želite provjeriti i provjeriti SHA1 otisak prsta certifikata. Kopirajte ga zalijepite kao niz u svoj kôd i nazovite client.verify (otisak prsta, hosturl).

WiFiClientSecure klijent;

// Spajanje na WiFi WiFi.mode (WIFI_STA); WiFi.započni (ssid, lozinka); while (WiFi.status ()! = WL_CONNECTED) {odgoda (500); Serial.print ("."); } if (! client.connect (host, httpsPort)) {Serial.println ("povezivanje nije uspjelo"); povratak; } if (client.verify (otisak prsta, host)) {Serial.println ("certifikati se podudaraju"); } else {Serial.println ("certifikat se ne podudara"); }

Korak 4: Učinite POST / GET zahtjeve

POST

Ovo je sintaksa za upućivanje POST zahtjeva:

Niz PostData = "{"; PostData += "\" tekst / ": \" moja poruka / ""; PostData += "}"; Serijski.ispis (PostData); client.print (String ("POST") + url + "HTTP/1.1 / r / n" + "Host:" + host + "\ r / n" + "Autorizacija:" + nositelj + "\ r / n" + "Korisnički agent: BuildFailureDetectorESP8266 / r / n" + "cache-control: no-cache / r / n" + "Content-Type: application/json / r / n" + "Content-Length:" + PostData. length () + "\ r / n" + "\ r / n" + PostData + "\ n"); Serial.println ("zahtjev poslan");

PostData su podaci koje šaljete kao JSON, u ovom slučaju:

{

"text": "moja poruka"}

Varijabla url je URL krajnje točke, host, URL web stranice, nositelj je API pristupni token.

DOBITI

Ovo je pseudo kod za GET zahtjev:

client.print (String ("GET") + url + "HTTP/1.1 / r / n" + "Host:" + host + "\ r / n" + "Autorizacija:" + nositelj + "\ r / n" + "Korisnički agent: BuildFailureDetectorESP8266 / r / n" + "Veza: održava-u životu / r / n / r / n"); Serial.println ("zahtjev poslan"); while (client.connected ()) {String line = client.readStringUntil ('\ n'); if (line == "\ r") {Serial.println ("primljena zaglavlja"); pauza; }} Linija niza = client.readStringUntil ('\ n');

Rezultat ove naredbe bit će pohranjen u linijskoj varijabli.

Korak 5: JSON & NOKIA LCD

Da biste postigli sličan projekt, morat ćete prikazati slike, tekstove i simbole na Nokia 5110 LCD -u. Ovaj dubinski vodič možete pogledati od prošlogodišnjih inženjera.

Za rukovanje JSON -om u Arduinu C ++ upotrijebite web mjesto ArduinoJson koje će vam reći sve o tome!

Ne ustručavajte se postaviti pitanja ako ih imate ili objavite ono što ste napravili s ovim izvornim kodom / vodičem.

Preporučeni: