Satura rādītājs:
- 1. darbība. Veidojiet
- 2. darbība: kods
- 3. darbība: izveidojiet savienojumu ar HTTPS vietni
- 4. darbība. Sūtiet POST / GET pieprasījumus
- 5. darbība: JSON & NOKIA LCD
Video: Pievienots hronometrs: 5 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Labdien! Šajā apmācībā jūs uzzināsit, kā savienot jebkuru ar Arduino saderīgu ierīci, kas aprīkota ar WiFi, REST API! Izmantojiet tīmekļa lietotni GitKraken Glo Board, lai izveidotu dēļus, kolonnas un kartītes lietu kārtošanai!
Ir vajadzīgas zināmas zināšanas par publiskās API darbību. Šis projekts ir paredzēts, lai izmantotu GitKraken Glo API, lai izsekotu laiku, ko pavadāt uzdevumiem savos uzdevumos.
Piemēram, jums ir jāveic šādi uzdevumi:
- Dzert kafiju
Kad sākat, nospiediet sākuma pogu, kad esat pabeidzis, nospiediet Gatavs, un, voilà, jūsu pavadītais laiks tiek komentēts.
1. darbība. Veidojiet
Lai izveidotu, jūs varat domāt par jebko. Neliels hronometrs būtu lieliski, bet es neko mazu nenovietoju.
Tātad kartona un arkādes spiedpogas bija pareizais ceļš!
Tāfele, kuru izmantoju, ir ESP8266 WeMos D1 Mini. Tas ir lētāk nekā Arduino, un tajā ir WiFi!
Ekrāns ir Nokia 5110 LCD.
n
Daļu saraksts vietnē AliExpress:
- Nokia 5110
- 2 arkādes pogas
- ESP8266
- Jumper vadi
- Kartona kastē
Bet jūs to galvenokārt varat atrast jebkur vai citās vietnēs, piemēram, Amazon vai eBay.
Kopējais rēķins: 5 € 86
Tapu savienojumi:
ESP8266 WeMos D1 Mini un Nokia 5110 LCD
- D2 (GPIO4) ↔ 0 RST
- D1 (GPIO5) ↔ 1 CE
- D6 (GPIO12) ↔ 2 līdzstrāvas
- D7 (GPIO13) ↔ 3 DIN
- D5 (GPIO14) ↔ 4 CLK
- 3V3 un 5VCC
- D0 (GPIO16) ↔ 6 BL
- G (GND) ↔ 7 GND
ESP8266 WeMos D1 Mini, arkādes pogas
D3 (GPI18), kreisā poga
D4 (GPI17) ↔ labā poga
Pogas otra tapa ir savienota ar zemi (GND).
2. darbība: kods
Vienkārši dodiet man kodu
Pilnu avota kodu varat atrast šeit:
github.com/antoinech/glo-stopwatch
Lai tas jums noderētu, jums būs jāmaina šie mainīgie:
// Ievietojiet savus WiFi akreditācijas datus šeit* char* ssid = "-jūsu-ssid--"; const char* parole = "-jūsu-parole-"; // Put your Personal Access Token (https://support.gitkraken.com/developers/pats/) const char *bearer = "Nesējs XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
Jums būs nepieciešamas arī 2 Adafruit bibliotēkas:
github.com/adafruit/Adafruit-GFX-Library
github.com/adafruit/Adafruit-PCD8544-Nokia…
Un šis brīnišķīgais Arduino Json:
arduinojson.org/
Skaidrojumi
Avota kodā jūs uzzināsit:
- kā izveidot savienojumu ar HTTPS galapunktu
- kā izveidot POST vai GET pieprasījumu
- kā serializēt JSON atbildi, lai iegūtu objektus un masīvus
- kā parādīt tekstu un attēlus Nokia 5110 LCD
Ja vēlaties uzzināt vairāk par šo API:
support.gitkraken.com/developers/overview/
Šis pieprasījums varētu darboties ar attālināti jebkuru API, kas izmanto POST un GET pieprasījumus:)
3. darbība: izveidojiet savienojumu ar HTTPS vietni
Šis pseidokods paskaidro, kā izveidot savienojumu ar HTTPS vietni. Pirmie soļi ir tādi paši kā a
WiFiClient klients
bet ar verifikācijas soli. Jums jāiet uz API galapunktu, kuru vēlaties pārbaudīt, un pārbaudiet sertifikāta SHA1 pirkstu nospiedumu. Kopējiet un ielīmējiet to kā virkni savā kodā un zvaniet client.verify (pirkstu nospiedums, hosturl).
WiFiClientSecure klients;
// Savienojuma izveide ar WiFi WiFi.mode (WIFI_STA); WiFi.begin (ssid, parole); while (WiFi.status ()! = WL_CONNECTED) {kavēšanās (500); Sērijas nospiedums ("."); } if (! client.connect (host, httpsPort)) {Serial.println ("savienojums neizdevās"); atgriešanās; } if (client.verify (pirkstu nospiedums, resursdators)) {Serial.println ("sertifikāts atbilst"); } else {Serial.println ("sertifikāts neatbilst"); }
4. darbība. Sūtiet POST / GET pieprasījumus
POST
Šī ir POST pieprasījuma sintakse:
String PostData = "{"; PostData += "\" text / ": \" mans ziņojums / ""; PostData += "}"; Serial.print (PostData); client.print (String ("POST") + url + "HTTP/1.1 / r / n" + "Host:" + resursdators + "\ r / n" + "Autorizācija:" + nesējs + "\ r / n" + "User-Agent: BuildFailureDetectESESP8266 / r / n" + "cache-control: no-cache / r / n" + "Content-Type: application/json / r / n" + "Content-Length:" + PostData. garums () + "\ r / n" + "\ r / n" + PostData + "\ n"); Serial.println ("pieprasījums nosūtīts");
PostData ir dati, kurus jūs sūtāt kā JSON, šajā gadījumā:
{
"text": "mans ziņojums"}
URL mainīgais ir galapunkta URL, resursdators, vietnes URL, nesējs ir API piekļuves pilnvara.
GŪT
Šis ir GET pieprasījuma pseidokods:
client.print (String ("GET") + url + "HTTP/1.1 / r / n" + "Host:" + resursdators + "\ r / n" + "Autorizācija:" + nesējs + "\ r / n" + "User-Agent: BuildFailureDetectESESP8266 / r / n" + "Savienojums: saglabāt dzīvu / r / n / r / n"); Serial.println ("pieprasījums nosūtīts"); while (client.connected ()) {String line = client.readStringUntil ('\ n'); if (line == "\ r") {Serial.println ("galvenes saņemtas"); pārtraukums; }} String line = client.readStringUntil ('\ n');
Šīs komandas rezultāts tiks saglabāts rindas mainīgajā.
5. darbība: JSON & NOKIA LCD
Lai sasniegtu līdzīgu projektu, Nokia 5110 LCD displejā būs jāparāda attēli, teksti un simboli. Jūs varat apskatīt šo padziļināto pamācību no lastminuteengineers.
Lai apstrādātu JSON Arduino C ++, izmantojiet ArduinoJson vietni, kas jums visu pastāstīs!
Nevilcinieties publicēt jautājumus, ja jums tādi ir, vai publicējiet to, ko esat izveidojis, izmantojot šo avota kodu / apmācību.
Ieteicams:
Arduino Leonardo hronometrs: 3 soļi
Arduino Leonardo hronometrs: Kredīts: https://www.instructables.com/id/Arduino-Stopwatch … Šis hronometra dizains radās no iepriekš minētās saites, kas ir hronometrs, kas skaitās no 1, turpretim šis skaitās no 60 sekundēm . Lielākā daļa izmantotā koda atbilst oriģinālam
Vienkāršs CloudX M633 digitālais hronometrs: 4 soļi
Vienkāršs CloudX M633 digitālais hronometrs: šajā projektā mēs izveidosim digitālā pulksteņa versiju, kas var saglabāt stundu, minūšu un sekunžu ierakstu, tāpat kā hronometrs jūsu mobilajā tālrunī! Mēs izmantosim LCD, lai parādītu laiku
Croakers hronometrs: 16 soļi (ar attēliem)
Krokera hronometrs: ja jūs smaidīsit vardēm, dažas no tām vibrēs. Izprotot kustību, var pateikt laiku-trīcošu darbību.Vardes " skatoties uz augšu " attēlo stundas binārā formātā (no kreisās uz labo; 8,4,2,1). Vardes " gaida uz priekšu " pārstāvēt min
Nepāra vai pāra rokas kriketa spēle Vs Intelligence Pievienots dators C ++: 4 soļi
Nepāra vai pāra rokas kriketa spēle Vs izlūkošana Pievienots dators C ++ valodā: roku krikets/ nepāra vai pāra spēle ir populāra mūsu vidū jau no skolas laikiem. Šajā pamācībā mēs izstrādājam šo spēli C ++. Tā ir viena spēlētāja spēle, kurā jums jāspēlē pret datoru, kurš nav mēms. Dators neliek nejaušus skaitļus
Pievienots lādētājs: 5 soļi (ar attēliem)
Pievienots lādētājs: Pirms kāda mēneša es nopirku elektrisko motorolleru, lai katru dienu braucu uz darbu. Viņu sauc HP_BEXXTER (tikai google, lai iegūtu vairāk informācijas :-)) Tagad es gribēju zināt, cik daudz enerģijas man ir nepieciešams šiem diskiem. Es arī vēlos apkopot vairāk informācijas par