Isi kandungan:
- Langkah 1: Bina
- Langkah 2: Kod
- Langkah 3: Sambungkan ke Laman Web
- Langkah 4: Buat Permintaan POST / GET
- Langkah 5: LCD JSON & NOKIA
Video: Jam Randik Bersambung: 5 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:10
Halo! Dalam tutorial ini, anda akan mengetahui cara menyambungkan mana-mana peranti yang serasi dengan Arduino, dilengkapi dengan WiFi, ke REST API! Ini menggunakan aplikasi web GitKraken Glo Board untuk membuat papan, lajur & kad untuk menyusun sesuatu!
Sebilangan pengetahuan mengenai bagaimana API awam berfungsi sangat diperlukan. Projek ini bertujuan untuk menggunakan API GitKraken Glo untuk mengesan masa yang anda habiskan untuk tugas dalam senarai Yang Harus Dilakukan.
Contohnya, anda mesti melakukan tugas ini:
- Minum kopi
Anda menekan mula ketika anda memulakan, apabila selesai, anda menekan Selesai, dan voilà, masa yang anda habiskan akan dikomentari.
Langkah 1: Bina
Untuk membina, anda boleh memikirkan apa sahaja. Jam randik kecil pasti hebat, tetapi saya tidak melakukan perkara kecil.
Oleh itu, butang tekan kadbod dan arked adalah cara terbaik!
Papan yang saya gunakan ialah ESP8266 WeMos D1 Mini. Ini lebih murah daripada Arduino, dan mempunyai WiFi di kapal!
Skrinnya adalah LCD Nokia 5110.
n
Senarai bahagian di AliExpress:
- Nokia 5110
- 2 Butang arked
- ESP8266
- Wayar pelompat
- Kotak kadbod
Tetapi pada dasarnya anda boleh menjumpainya di mana sahaja atau di laman web lain seperti Amazon atau eBay.
Bil keseluruhan: 5 € 86
Sambungan pin:
ESP8266 WeMos D1 Mini ↔ 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 ↔ Butang Arked
D3 (GPI18) ↔ Butang Kiri
D4 (GPI17) ↔ Butang Kanan
Pin butang lain disambungkan ke tanah (GND).
Langkah 2: Kod
Beri saya kod sahaja
Anda boleh mendapatkan kod sumber penuh di sini:
github.com/antoinech/glo-stopwatch
Untuk menjadikannya berfungsi untuk anda, anda perlu mengubah pemboleh ubah ini:
// Masukkan kelayakan WiFi anda di sini char * ssid = "--your - ssid--"; const char * password = "--anda - kata laluan--"; // Masukkan Token Akses Peribadi anda (https://support.gitkraken.com/developers/pats/) const char * bearer = "Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
Anda juga memerlukan 2 perpustakaan Adafruit:
github.com/adafruit/Adafruit-GFX-Library
github.com/adafruit/Adafruit-PCD8544-Nokia…
Dan Arduino Json yang hebat ini:
arduinojson.org/
Penjelasan
Dalam kod sumber anda akan mengetahui:
- cara menyambung ke titik akhir
- bagaimana membuat permintaan POST atau GET
- cara membuat siri jawapan JSON untuk mendapatkan objek dan tatasusunan
- cara memaparkan teks dan gambar dalam Nokia 5110 LCD
Sekiranya anda ingin mengetahui lebih lanjut mengenai API ini:
support.gitkraken.com/developers/overview/
Permintaan ini dapat berfungsi dengan jauh dari API yang menggunakan permintaan POST dan GET:)
Langkah 3: Sambungkan ke Laman Web
Kod pseudo ini menerangkan cara menyambung ke laman web HTTPS. Langkah pertama adalah sama seperti dengan a
Pelanggan WiFiClient
tetapi dengan langkah pengesahan. Anda perlu pergi ke titik akhir API yang ingin anda sahkan, dan periksa cap jari SHA1 sijil. Salin tampal sebagai rentetan dalam kod anda dan panggil client.verify (cap jari, hosturl).
Pelanggan WiFiClientSecure;
// Sambungkan ke WiFi WiFi.mode (WIFI_STA); WiFi.begin (ssid, kata laluan); sementara (WiFi.status ()! = WL_CONNECTED) {kelewatan (500); Cetakan bersiri ("."); } if (! client.connect (host, httpsPort)) {Serial.println ("sambungan gagal"); kembali; } jika (client.verify (cap jari, hos)) {Serial.println ("sijil sepadan"); } lain {Serial.println ("sijil tidak sepadan"); }
Langkah 4: Buat Permintaan POST / GET
POS
Ini adalah sintaks untuk membuat permintaan POST:
String PostData = "{"; PostData + = "\" teks / ": \" mesej saya / ""; PostData + = "}"; Serial.print (PostData); client.print (String ("POST") + url + "HTTP / 1.1 / r / n" + "Host:" + host + "\ r / n" + "Kebenaran:" + pembawa + "\ r / n" + "Ejen Pengguna: BuildFailureDetectorESP8266 / r / n" + "cache-control: no-cache / r / n" + "Content-Type: application / json / r / n" + "Content-Length:" + PostData. panjang () + "\ r / n" + "\ r / n" + PostData + "\ n"); Serial.println ("permintaan dihantar");
PostData adalah data yang anda hantar sebagai JSON, dalam kes ini:
{
"text": "mesej saya"}
Pemboleh ubah url adalah url endpoint, host, url laman web, pembawa adalah token akses API.
DAPATKAN
Ini adalah kod pseudo untuk permintaan GET:
client.print (String ("GET") + url + "HTTP / 1.1 / r / n" + "Host:" + host + "\ r / n" + "Kebenaran:" + pembawa + "\ r / n" + "Ejen Pengguna: BuildFailureDetectorESP8266 / r / n" + "Sambungan: terus-hidup / r / n / r / n"); Serial.println ("permintaan dihantar"); while (client.connected ()) {String line = client.readStringUntil ('\ n'); if (line == "\ r") {Serial.println ("header diterima"); rehat; }} String line = client.readStringUntil ('\ n');
Hasil arahan ini akan disimpan dalam pemboleh ubah baris.
Langkah 5: LCD JSON & NOKIA
Untuk mencapai projek yang serupa, anda perlu memaparkan gambar, teks dan simbol ke Nokia 5110 LCD. Anda boleh melihat Tutorial Dalam Ini dari pengguna terakhir.
Untuk menangani JSON di Arduino C ++, gunakan laman web ArduinoJson yang akan memberitahu anda semua tentangnya!
Jangan ragu untuk menghantar soalan jika ada, atau hantar apa yang anda buat dengan kod sumber / tutorial ini.
Disyorkan:
Jam Randik Arduino Leonardo: 3 Langkah
Jam Randik Arduino Leonardo: Kredit: https://www.instructables.com/id/Arduino-Stopwatch..Reka bentuk jam randik ini berasal dari pautan di atas, yang merupakan jam randik yang dihitung dari 1, sedangkan yang ini dihitung dari 60 saat . Sebilangan besar kod yang saya gunakan mengikuti yang asli
Jam Randik Digital CloudX M633 Sederhana: 4 Langkah
Jam Ringkas Digital CloudX M633 Sederhana: Dalam projek ini, kami akan membuat versi jam digital yang dapat menyimpan catatan jam, minit dan saat, seperti jam randik di telefon bimbit anda! Kami akan menggunakan LCD untuk memaparkan waktu
Jam Randik Arduino Menggunakan LCD I2C: 5 Langkah
Arduino Stopwatch Menggunakan I2C LCD: Dalam projek ini saya akan mengajar anda untuk menggunakan paparan LCD dan Arduino sebagai jam randik interaktif. Apabila projek anda selesai dengan kod yang disediakan, ia akan kelihatan seperti foto di atas. Pergi ke langkah seterusnya untuk mengetahui di mana hendak bermula
Jam Randik Automatik: 9 Langkah
Jam Randik Automatik: Instruksional ini akan menunjukkan kepada anda cara membina jam randik automatik. Kerana berlari memang menyeronokkan, tetapi kadangkala anda tidak mempunyai orang yang dapat meluangkan masa dengan anda. Saya berusaha memastikannya sesederhana, murah dan setepat mungkin. Anda tidak memerlukan alat kawalan jauh
Jam / Jam Randik Arduino Mudah: 6 Langkah (dengan Gambar)
Jam / Jam Randik Arduino Sederhana: Ini " boleh diajar " akan menunjukkan dan mengajar anda cara membuat jam Arduino Uno ringkas yang juga bertindak sebagai jam randik hanya dalam beberapa langkah mudah