İçindekiler:
- Adım 1: Kitaplık Nedir?
- Adım 2: Kitaplık Yapısı ve Dosyaları
- 3. Adım: Başlık Dosyası
- 4. Adım: Kaynak Dosya
- Adım 5: Örnek Eskizlerin Sağlanması
- 6. Adım: Kütüphane Yöneticisine Yayınlama
- 7. Adım: Sonraki Adımlar
Video: YouTube Sight için Arduino Kitaplığı Oluşturma: 7 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:18
Herkese selam, Kısa süre önce YouTube Analytics API'sinden abone verilerini çıkarabilen ve YouTube sonuçları toplamaya başladığından beri size daha doğru abone sayıları verebilen YouTube Sight adlı bir hizmet geliştirdim. Bununla birlikte, örnek bir eskiz oluşturdum ama aynı zamanda insanların daha kolay kullanabilmesi için bir Arduino kütüphanesi yapmak istedim.
Adım 1: Kitaplık Nedir?
Kitaplık, belirli bir işlemi gerçekleştirebilen, bir tür veriyi işleyebilen veya belirli bir donanım öğesiyle nasıl etkileşime gireceğini bilen bir kod parçasıdır. Arduino ortamını kolayca genişletmemize izin veriyorlar ve birçoğu Arduino IDE ile önceden yüklenmiş olarak geliyor.
Benimki gibi Arduino'ya yeni olanaklar eklemek istediğimiz durumlarda, başkalarının kullanması için kendi kütüphanelerimizi oluşturabiliriz. Kurulu kitaplıkların tümü bilgisayarımızda belirli bir klasörde bulunur. Windows PC için benim durumumda, kitaplıklar Documents/Arduino klasörü altında yaşıyor. Tam yol, kullanıcı adınıza göre size özel olacaktır.
Adım 2: Kitaplık Yapısı ve Dosyaları
Kitaplığımızı oluşturmaya başlamak için önce burada adında bir klasör oluşturmamız gerekiyor, bu yüzden YouTube Sight adlı bir klasör oluşturdum. Kütüphanenin minimum sürümünde en az iki dosyamız olmalıdır.
Birincisi, kütüphanemizin sağladığı metot ve özelliklerin tüm tanımlarını içeren “header” adı verilen dosya, ikincisi ise kaynak kodun tamamını içerecek olan kaynak dosyadır.
Başlık dosyalarının uzantısı ".h" iken kaynak dosyanın uzantısı ".cpp"dir ve genellikle dosya adı olarak kitaplığın adını taşırlar. Benim durumumda, iki dosyanın adı “YouTubeSight.h” ve “YouTubeSight.cpp”.
Kütüphane kodunu yazma işlemi, özellikle ilk defa bir kütüphane yazarken biraz sıkıcı ve sinir bozucu olabilir, ancak çok fazla deneme yanılma ile istediğiniz sonuçlara ulaşabilirsiniz. Bu nedenle, iki dosyanın bitmiş kodunda size rehberlik edeceğim ve açıklayacağım.
Tam kod ve kitaplık GitHub'dan aşağıdaki bağlantıdan indirilebilir:https://github.com/bkolicoski/arduino-youtube-sight
3. Adım: Başlık Dosyası
Başlık dosyasının içinde, başlangıçta, tüm dosya, belirtilen değişkenin tanımlanıp tanımlanmadığını kontrol eden bir “ifndef” ifadesinin içine sarılır. Bu, kütüphaneyi yanlışlıkla aynı çizime iki kez dahil ederlerse kullanan herkes için hataları önleyecektir.
Ardından, temel Arduino kitaplığını eklememiz gerekiyor ve isteği YouTube Sight'a göndermek için bir tür HTTP istemcisi ile çalışacağımızdan, temel İstemci kitaplığını da dahil edeceğiz.
Ana sınıfımızın içeriğini yazmaya başlamadan önce, değiştirilmesini istemediğimiz tüm statik değişkenleri ve ayarları tanımlamamız gerekiyor. Benim durumumda, böyle iki değişken var. YouTube Sight hizmetinin ana URL'si ve bir değeri ne kadar süreyle okuduğumuzu kontrol etmek için kullanacağımız zaman aşımı değişkeni.
Ayrıca bu bölümde, sonuçları kaydedeceğimiz bu channelStatistics yapısı gibi kullanmak istediğimiz özel türleri tanımlayabiliriz.
Sınıf yapısı tanımı iki bölüme ayrılmıştır. İlk kısım, tüm genel işlev ve özelliklerin tanımı, ikincisi ise tüm özel işlev ve özelliklerin tanımıdır. İkisi arasındaki fark, kütüphanemizin son kullanıcıları özel bölümden doğrudan hiçbir şeyi kullanamayacaklar, ancak genel bölümden herhangi bir özelliği ve işlevi doğrudan değiştirebilecek ve kullanabileceklerdir.
Genel bölümde, sınıf yapıcısını, sonuçları depolayacağımız channelStats değişkenini, verileri alacak işlevi ve daha sonra beklenen sonuçları alamayabileceğimiz durumları kontrol etmek için kullanabileceğimiz bir hata ayıklama özelliğini tanımlarız.
Özel mülkler için, kanal GUID'ini depolamak için bir tane, kullanacağımız HTTP istemcisine bir işaretçi ve döndürülen dizeyi YouTube Sight'tan bölecek bir işlev tanımlayacağız.
4. Adım: Kaynak Dosya
Şimdi tüm bunların kaynak dosyadaki gerçek uygulamasına bakalım.
Bizim için ilk adım, yeni oluşturduğumuz kendi başlık dosyamızı eklemek ve ardından kitaplık yapıcısını tanımlamamız gerekiyor. İçinde iki değişken geçiyoruz. GUID, daha önce tanımladığımız özel değişkene kaydedilir ve daha sonra aldığımız örneği çağırabilmemiz için İstemci referansla iletilir.
Kitaplığın ana getData işlevi, önce dönüş türü, ardından kitaplık adı ve işlev adı belirtilerek tanımlanır. Bu işlevde her satırın ne yaptığının ayrıntılarına girmeyeceğim, ancak genel olarak işlev, YouTube Sight sunucusuna bir bağlantı açar, istatistikleri almak için istek gönderir ve ardından döndürülen verileri yardımıyla ayrıştırır. özel getValue işlevi.
Alınan sonuçlar daha sonra channelStats değişkenine ayarlanır ve sonuçları almayı başarıp başaramadığımıza dair bir gösterge döndürülür ve bununla kitaplığımızın çekirdeği tamamlanır.
Adım 5: Örnek Eskizlerin Sağlanması
Genellikle siz, her kitaplık, hızlı bir şekilde yükleyebileceğiniz ve kitaplığın neler yapabileceğini ve nasıl yapılacağını göstermek için kullanabileceğiniz örnekler sağlar. Bu tür örnekler sağlamak için, şimdi başlık ve kaynak dosyanın bir “src” klasöründe olacağı ve “örnekler” adlı kitaplık kökü altına yeni bir klasörün ekleneceği kitaplık yapısını değiştirmemiz gerekiyor.
Bu klasörün içine yerleştireceğiniz herhangi bir Arduino taslağı, kütüphaneniz için örnek olarak Arduino IDE'den sunulacak ve insanlar onu hızlıca keşfedebilir ve kütüphanenin nasıl çalıştığını öğrenebilir.
6. Adım: Kütüphane Yöneticisine Yayınlama
Kütüphaneyi kullanmak için insanların kütüphanenizin başlık dosyasını taslaklarına eklemeleri gerekecek ve Arduino IDE onu onunla birlikte oluşturacak. Ancak bunu yapabilmek için önce makinelerine yüklemeleri gerekecek.
Yaygın bir yol, kitaplığı GitHub'dan indirip IDE'deki ZIP yükleyicisi aracılığıyla yüklemek veya oluştururken yaptığımız gibi kitaplıklar klasörünün içine yerleştirmektir. Bununla birlikte, Arduino IDE, doğrudan IDE'den bir kitaplık aramanıza izin veren Kitaplık Yöneticisi adlı bir araç da içerir.
Kütüphanenizi buna dahil etmek için öncelikle “library.properties” adlı kök klasörde ek bir dosya oluşturmamız ve içinde kütüphane adını, mevcut sürümü ve kütüphane yöneticisine yardımcı olacak bazı ek bilgileri belirtmemiz gerekiyor. hakkında daha iyi bilgi görüntülemek için.
Dosya yerindeyken, Arduino GitHub sayfasında kitaplığınızın bağlantıyla dizine dahil edilmesini isteyen bir sorun oluşturulmalı ve Arduino personeli tarafından onaylanıp eklendikten sonra, Kitaplık yöneticisi Sonuçlarda kitaplığınızı sunmaya başlayın. Ek olarak, yönetici gelecekte GitHub deposunda herhangi bir sürüm etiketi arayacak ve değişiklik olduğunda bunu kullanan kişilere bir güncelleme sunacaktır.
7. Adım: Sonraki Adımlar
Umarım bu Eğitilebilir Tablodan sonra, Arduino kitaplıklarının nasıl çalıştığını, nasıl bir tane oluşturabileceğinizi daha iyi anlarsınız ve en önemlisi, bir sonraki büyük fikriniz üzerinde çalışmaya başlamak için ilham aldığınızı umuyorum.
Herhangi bir ek soru veya öneriniz için yorumlara yazmaktan çekinmeyin, YouTube kanalıma abone olun ve beni burada Instructables'ta takip edin.
Önerilen:
Android Telefon Şarj Cihazı için Güç Hattı Filtresi Tasarlama ve Oluşturma: 5 Adım
Bir Android Telefon Şarj Cihazı için Güç Hattı Filtresi Tasarlama ve Oluşturma: Bu Eğitilebilir Kitapta, standart bir USB'den mini USB'ye kablonun nasıl alınacağını, ortasından nasıl ayrılacağını ve aşırı gürültüyü veya gürültüyü azaltacak bir filtre devresi nasıl takılacağını göstereceğim. tipik bir android güç kaynağı tarafından üretilen karma. Taşınabilir bir bilgisayarım var
Yeni Başlayanlar İçin Kendi Web Sitenizi Oluşturma: 5 Adım
Yeni Başlayanlar İçin Kendi Web Sitenizi Kurmak: İster bilgisayar programcısı olmayı hayal etmiş olun, ister bir web sitesi kullanmış olun, kabul edelim ki, hemen hemen hepimiz, bilgi teknolojisi işin bel kemiği haline geldi. Programlama ilk başta biraz korkutucu görünse de, amacım
6 Yaşında Arduino için Scratch ile Temel Trafik Işığı Oluşturma: 3 Adım
6 Yaşında Arduino İçin Scratch ile Temel Trafik Işığı Yaratmak: Oğlum Arduino projelerimi zaten merak ediyordu. Bir süre Snap Circuits ile oynadı ve LEGOHe de bazı Scratch projeleri yapmaya başladı.Arduino için Scratch ile oynamamız an meselesiydi. Bu bizim ilk projemiz. Ob
Bir Robot için Tampon Oluşturma: 4 Adım
Bir Robot için Tampon Oluşturma: 11. sınıf bilgisayar mühendisliği dersimde robotumuzu bir labirentten geçirme görevi bize verildi. Düz gidip gitmediğini, sağa mı yoksa sola mı döndüğünü kontrol etmek için tampon yapmamız istendi. Bu şekilde robot duvara dokunursa ve duvara çarparsa
Yocto Projesini Kullanarak Raspberry Pi için GNU/Linux Dağıtımı Oluşturma: 6 Adım
Yocto Projesini Kullanarak Raspberry Pi için GNU/Linux Dağıtımı Oluşturma: Raspberry Pi, muhtemelen piyasadaki en popüler düşük maliyetli tek kartlı bilgisayardır. Genellikle Nesnelerin İnterneti ve diğer gömülü projeler için kullanılır. Birkaç GNU/Linux dağıtımı Raspberry Pi için mükemmel desteğe sahiptir ve hatta Mi