Isi kandungan:

Membuat Perpustakaan Arduino untuk Pemandangan YouTube: 7 Langkah
Membuat Perpustakaan Arduino untuk Pemandangan YouTube: 7 Langkah

Video: Membuat Perpustakaan Arduino untuk Pemandangan YouTube: 7 Langkah

Video: Membuat Perpustakaan Arduino untuk Pemandangan YouTube: 7 Langkah
Video: BELAJAR ARDUINO #92 - AYO BUAT LIBRARY SENDIRI !!! 2024, November
Anonim
Image
Image
Apa itu Perpustakaan?
Apa itu Perpustakaan?

Hai semua, Saya baru-baru ini membuat perkhidmatan yang disebut YouTube Sight yang dapat mengekstrak data pelanggan dari YouTube Analytics API dan memberi anda jumlah pelanggan yang lebih tepat sejak YouTube mula mengumpulkan hasilnya. Dengan itu, saya telah membuat lakaran contoh tetapi saya juga ingin membuat perpustakaan Arduino supaya orang dapat menggunakannya dengan lebih mudah.

Langkah 1: Apa itu Perpustakaan?

Apa itu Perpustakaan?
Apa itu Perpustakaan?

Perpustakaan adalah sekeping kod yang dapat menangani operasi tertentu, memproses sejenis data atau dapat mengetahui cara berinteraksi dengan elemen perkakasan tertentu. Mereka membolehkan kita memperluas persekitaran Arduino dengan mudah dan ada banyak dari mereka yang telah dipasang dengan Arduino IDE.

Dalam kes seperti saya, di mana kita ingin menambah kemungkinan baru ke Arduino, kita dapat membuat perpustakaan kita sendiri untuk orang lain menggunakannya. Semua perpustakaan yang dipasang tinggal dalam folder tertentu di komputer kita. Dalam kes saya untuk PC Windows, perpustakaan berada di bawah folder Documents / Arduino. Jalan penuh akan khusus untuk anda, berdasarkan nama pengguna anda.

Langkah 2: Struktur dan Fail Perpustakaan

Struktur dan Fail Perpustakaan
Struktur dan Fail Perpustakaan

Untuk mula membina perpustakaan kami, pertama-tama kita perlu membuat folder di sini dengan nama itu, jadi saya telah membuat folder bernama YouTube Sight. Dalam versi minimum perpustakaan, kita mesti mempunyai sekurang-kurangnya dua fail.

Yang pertama adalah fail "header" yang disebut yang mengandungi semua definisi kaedah dan sifat yang disediakan oleh perpustakaan kami, dan yang kedua adalah fail sumber yang akan mengandungi semua kod sumber.

Fail header mempunyai lanjutan ".h" sementara file sumber mempunyai ekstensi ".cpp" dan mereka biasanya mempunyai nama perpustakaan sebagai nama file. Dalam kes saya, dua fail tersebut disebut "YouTubeSight.h" dan "YouTubeSight.cpp".

Proses menulis kod perpustakaan boleh menjadi sedikit membosankan dan mengecewakan, terutama ketika anda menulis perpustakaan untuk pertama kalinya, tetapi dengan banyak percubaan dan kesilapan, anda dapat mencapai hasil yang diinginkan. Oleh kerana itu, saya akan membimbing anda melalui kod kedua fail dan menjelaskannya.

Kod penuh dan pustaka tersedia untuk dimuat turun dari GitHub pada pautan berikut:

Langkah 3: Fail Header

Fail Pengepala
Fail Pengepala
Fail Pengepala
Fail Pengepala
Fail Pengepala
Fail Pengepala

Di dalam fail header, pada awalnya, seluruh file dibungkus dalam pernyataan "ifndef" yang memeriksa apakah pemboleh ubah yang ditentukan ditentukan atau tidak. Ini akan mengelakkan kesilapan bagi sesiapa yang menggunakan perpustakaan jika mereka memasukkannya dua kali dalam lakaran yang sama secara tidak sengaja.

Seterusnya, kami perlu memasukkan pustaka Arduino dasar dan kerana kami akan bekerjasama dengan klien HTTP untuk menghantar permintaan ke YouTube Sight, kami juga akan memasukkan pustaka Pelanggan asas.

Sebelum kita mula menulis kandungan kelas utama kita, kita perlu menentukan sebarang pemboleh ubah dan tetapan statik yang tidak mahu kita ubah. Dalam kes saya, terdapat dua pemboleh ubah tersebut. URL utama perkhidmatan YouTube Sight dan pemboleh ubah timeout yang akan kami gunakan untuk memeriksa berapa lama kami membaca suatu nilai.

Juga di bahagian ini, kita dapat menentukan jenis tersuai yang ingin kita gunakan seperti saluran ini Struktur statistik yang akan kita simpan hasilnya.

Definisi struktur kelas terbahagi kepada dua bahagian. Bahagian pertama adalah definisi semua fungsi dan harta benda awam dan bahagian kedua adalah definisi semua fungsi dan harta peribadi. Perbezaan antara keduanya adalah bahawa pengguna akhir perpustakaan kami tidak akan dapat menggunakan apa-apa dari bahagian peribadi secara langsung sementara mereka akan dapat secara langsung mengubah dan menggunakan mana-mana sifat dan fungsi dari bahagian awam.

Di bahagian awam, kami menentukan konstruktor kelas, pemboleh ubah saluranStats di mana kami akan menyimpan hasilnya, fungsi yang akan mendapatkan data dan harta debug yang kemudian kami dapat gunakan untuk memeriksa kes di mana kami mungkin tidak mendapat hasil yang diharapkan.

Untuk sifat peribadi, kami akan menentukan satu untuk menyimpan saluran GUID, penunjuk ke klien HTTP yang akan kami gunakan dan fungsi yang akan memisahkan rentetan yang dikembalikan dari YouTube Sight.

Langkah 4: Fail Sumber

Fail Sumber
Fail Sumber
Fail Sumber
Fail Sumber

Sekarang mari kita lihat pelaksanaan sebenar semua ini di dalam fail sumber.

Langkah pertama bagi kita adalah memasukkan fail header kita sendiri yang baru kita buat dan kemudian kita perlu menentukan pembina perpustakaan. Di dalamnya, kita melepasi dua pemboleh ubah. GUID disimpan ke dalam pemboleh ubah peribadi yang kami tentukan sebelumnya dan Pelanggan diserahkan melalui rujukan sehingga kemudian kami dapat memanggil contoh yang sama seperti yang kami dapat.

Fungsi getData utama perpustakaan ditentukan seterusnya dengan terlebih dahulu menentukan jenis pengembalian, diikuti dengan nama perpustakaan dan nama fungsi. Saya tidak akan memperincikan apa yang dilakukan oleh setiap baris dalam fungsi ini, tetapi secara umum, fungsi membuka sambungan ke pelayan YouTube Sight, menghantar permintaan untuk mendapatkan statistik dan kemudian menguraikan data yang dikembalikan dengan bantuan fungsi getValue peribadi.

Hasil yang diambil kemudian ditetapkan ke variabel channelStats dan indikator dikembalikan jika kita berjaya mendapatkan hasilnya atau tidak dan dengan itu inti perpustakaan kita sudah lengkap.

Langkah 5: Memberikan Contoh Lakaran

Memberi Contoh Lakaran
Memberi Contoh Lakaran

Biasanya anda, setiap perpustakaan memberikan contoh yang dapat anda muatkan dan gunakan dengan cepat untuk menunjukkan apa yang dapat dilakukan perpustakaan dan bagaimana melakukannya. Untuk memberikan contoh seperti itu, kita perlu mengubah struktur perpustakaan di mana sekarang tajuk dan file sumber akan berada di folder "src" dan folder baru akan ditambahkan di bawah root perpustakaan yang disebut "contoh".

Segala lakaran Arduino yang anda letakkan di dalam folder ini akan disajikan dari Arduino IDE sebagai contoh untuk perpustakaan anda dan orang dapat dengan cepat menerokainya dan mengetahui bagaimana perpustakaan berfungsi.

Langkah 6: Penerbitan kepada Pengurus Perpustakaan

Penerbitan kepada Pengurus Perpustakaan
Penerbitan kepada Pengurus Perpustakaan

Untuk menggunakan perpustakaan, orang hanya perlu memasukkan fail tajuk perpustakaan anda dalam lakaran mereka dan Arduino IDE akan membuatnya bersama-sama dengannya. Tetapi untuk melakukannya, mereka terlebih dahulu perlu memasangnya di mesin mereka.

Cara yang biasa dilakukan ialah memuat turun perpustakaan dari GitHub dan memasangnya melalui pemasang ZIP di IDE atau meletakkannya di dalam folder perpustakaan seperti yang kita lakukan ketika kita membuatnya. Namun, Arduino IDE juga menyertakan alat, yang disebut sebagai Library Manager yang membolehkan anda mencari perpustakaan secara langsung dari IDE.

Untuk memasukkan pustaka anda di dalamnya, pertama-tama kita perlu membuat fail tambahan dalam folder root yang disebut "library.properties" dan di dalamnya, kita perlu menentukan nama perpustakaan, versi terkini dan beberapa maklumat tambahan yang akan membantu pengurus perpustakaan untuk memaparkan maklumat yang lebih baik mengenainya.

Dengan fail di tempat, masalah perlu dibuat di halaman Arduino GitHub yang hanya meminta perpustakaan anda disertakan dalam indeks dengan pautan ke sana dan setelah ia diluluskan dan ditambahkan oleh kakitangan Arduino, pengurus Perpustakaan akan mula menawarkan perpustakaan anda dalam hasilnya. Selain itu, pengurus akan mencari sebarang tag versi di repo GitHub pada masa akan datang dan menawarkan kemas kini kepada orang yang menggunakannya setelah ada perubahan.

Langkah 7: Langkah Seterusnya

Saya harap selepas Instructable ini, anda mempunyai pemahaman yang lebih baik tentang bagaimana perpustakaan Arduino berfungsi, bagaimana anda dapat membuatnya dan yang paling penting, saya harap anda mendapat inspirasi untuk mula mengusahakan idea besar anda yang seterusnya.

Untuk sebarang pertanyaan atau cadangan tambahan, sila tuliskan komen, melanggan saluran YouTube saya dan ikuti saya di sini di Instructables.

Disyorkan: