İçindekiler:

Arduino 101: Tech Guy'dan Kurs: 4 Adım
Arduino 101: Tech Guy'dan Kurs: 4 Adım

Video: Arduino 101: Tech Guy'dan Kurs: 4 Adım

Video: Arduino 101: Tech Guy'dan Kurs: 4 Adım
Video: Yazılımcıyım Dediğimde Çevrem vs Aslında Olan 😂 2024, Temmuz
Anonim
Arduino 101: Tech Guy'dan Kurs
Arduino 101: Tech Guy'dan Kurs

Umarım, Arduino dünyasına dalmak isteyen birçok insan, özellikle yeni başlayanlar, bunu ve diğer makalelerimi/Öğretim Tablolarımı (düzenli olarak yayınlayacağım) faydalı bulacaktır.

Bu normal bir Kopyala-Yapıştır dersleri gibi olmaz. den çok daha fazla olurdu.

Selam! Ben Romanım ve Orta PHP Geliştiricisiyim.

Bu biraz ön tarih alacaktır, bu nedenle bir sonraki adıma geçmek istiyorsanız - Gereksinimler'e kaydırmanız yeterlidir.

10 yaşında programlamaya başladım. ve benim üzerimde gerçekten büyük bir etkisi oldu. Çünkü o kadar ilginçti - inanamadım. Ayrıca, benim yaşımdaki pek çok erkek okulda bu tür becerileri gösteremezdi. Bu, bir ders olarak Bilişim ve kurs içinde Programlama öğrenmeye başlamadan önceydi.

Bu yüzden sadece insanlara yardım etmek istedim. Hayatlarını kolaylaştırmak ve rutinin dışına çıkmalarına ve bazı sorunları çözmelerine yardımcı olacak bazı araçlar sağlamak. Ve 2 yıl önce ek olarak Arduino ile geldim.

Sonra, bir çeşit kursa gitmeye ve bunun gibi şeyler yaratmaya karar verdim. Daha sonra Youtube'da, mükemmel bir eşleşme elde etmek için nasıl kurulacağını ve neler yapıldığını görebileceğiniz videolar yapacağım.

Ama burada, benden temel kod hakkında daha fazla bilgi alacaksınız. Kodu düzgün bir şekilde yapılandırmak için sıcak, programlama ilkeleri nelerdir ve neden önemlidir? Yaptığımız her şey - Mühendislik. Ve hataya yer yok. Öyleyse, açıkça okuyun ve bazı sorularla gelecekseniz - sadece yorumlara yazın.

Adım 1: Gerekli Yazılımı Kurun/Gerekli Donanımı Alın

Geliştirme sürecini başlatmak için ihtiyacınız olacak:

Yazılım

- Visual Studio Kodu

- Platform. IO

Donanım

- Arduino Board'larından biri (Mega 2560, Nano, Leonardo, vb.)

- Ekmek tahtası

- Dupont telleri (Erkek-Erkek)

- Çeşitli nominal dirençler

- RGB Led'ler

- Ekranlar, vb

Adım 2: Programlama İlkeleri

Verimli ve anlaşılır bir kod yazmak istiyorsanız, programlama ilkeleri hakkında daha fazla bilgi sahibi olmanız gerekir. Proje örneklerimizde aşağıdaki ilkeleri izleyeceğiz:

- SAĞLAM

- KURU (Kendinizi Tekrar Etmeyin)

- KISS (Çok Basit Tutun)

- YAGNI (İhtiyacınız olmayacak)

SOLID nedir?

SOLID şu şekilde yazılabilir:

- [S] Tek Sorumluluk (Her sınıf bir türden sorumludur)

- [O] Açık-Kapalı İlkesi (Sınıflar veya Nesneler genişletilmeye açıktır, ancak değiştirilemez)

- [L] Liskov Değiştirme (Sınıflar veya Nesneler, hasar görmeden alt türleri ile değiştirilebilir)

- [I] Arayüz ayrımı (Bir evrensel yerine daha özel arayüzlere sahip olmak daha iyidir)

- [D] Bağımlılık Tersine Çevirme (Sınıflar soyutlamalar üzerine kurulmalıdır)

KURU nedir?

KURU, Kendini Tekrar Etme demektir. Yani, bir çözüm yaptığınızda ve gördüğünüzde, aynı olan bazı yöntemler var - mümkün olduğunca basit tutmak için bu yöntemlerle (statik olarak çağrılması bile mümkün) bir yardımcı sınıf yapın. Ama bu başka bir hikaye.

KISS nedir?

KISS, Keep It So Simple için ayağa kalkar. Bu, tüm çözümlerinizin mümkün olduğunca az kod satırına sahip olması gerektiği, aynı zamanda tüm sınıfı aşırı karmaşıklaştırmaması gerektiği anlamına gelir.

YAGNI nedir?

YAGNI, İhtiyacınız Olmayacak için ayağa kalkar. Bunun anlamı, sınıfları ve işlevleri, tümünün veya çoğunun kullanımda olacağı şekilde oluşturmanız gerektiğidir. Çünkü olmasaydı - o zaman ihtiyacınız olmadığı için güvenle kaldırıldı. Basit.

Kodunuzu olabildiğince temiz tutmaya çalışın.

Adım 3: Projeler

Bu adım içerecek ve devam edecek, örnekler ve kütüphaneler içeren bir proje nedeniyle, çatallayıp kullanabileceksiniz.

Ayrıca, gerekli kütüphaneleri projenize indirebilmeniz için VS Kodu için bir uzantı oluşturmaya çalışacağım.

Bağlantısı olmayan projelerin henüz gerçekleşmediğini ve yakın gelecekte gerçekleştirileceğini unutmayın. Yapabildiğim kadar bilgilendirici, öğretici yapmaya çalışıyorum. Ve daha sonra - Bir video çekeceğim ve onları takip etmeniz için talimatlar olarak ekleyeceğim.

  • Basit LED Ampul Kontrolü
  • LED'ler + Potansiyometre (Potansiyometre değerlerinin LED'lerin sayısına dinamik eşlemesi)
  • Basit Hava Durumu istasyonu (v1; Nem + Sıcaklık)
  • Gelişmiş Hava Durumu İstasyonu w/ LCD 1602 (v2)
  • Gelişmiş Hava Durumu İstasyonu v2 + Ayarları (v3)
  • Gelişmiş Hava İstasyonu v3 + IR (Kızılötesi Uzaktan Kumanda) Görüntüleme için Kontrol (v4)
  • Advanced Weather Station v4 + LED'lerle durumu gösterme (v5)
  • Basit RFID okuyucu (v1)
  • Gelişmiş RFID Okuyucu v1 w/ LCD 1602 ve 0.91' OLED Ekranda veri görüntüleme (I2C) (v2)
  • Gelişmiş RFID Okuyucu v2 w/ Röle Kontrolü (v3)
  • Basit Tek SIM İstasyon (v1)
  • 0,91' OLED Ekranlı Gelişmiş Tek SIM İstasyon (v2)
  • 0,91' OLED Ekranlı Gelişmiş Çift SIM İstasyonu (v1)
  • Gelişmiş Çift SIM İstasyon v1 w/ SMS Gönderme
  • Otomat
  • Basit RGB Şerit WS8212b Kontrolü (v1)
  • Gelişmiş RGB Şerit WS8212b Kontrolü v1 w/ Renkler + Parlaklık kontrolü (Potansiyometre + Düğmeler) (v2)
  • IRVending Machine ile Gelişmiş RGB Strip WS8212b Control v1

Tüm projeler ve kütüphaneler GitHub'da mevcut olacak.

Adım 4: Yayınlanacak Yaklaşan Projeler

7-8 Mart '20- Basit LED Ampul Kontrolü- LED'ler + Potansiyometre (Potansiyometre değerlerinin LED'lerin sayısına dinamik olarak eşlenmesi)

Önerilen: