İçindekiler:
Video: Basit, Pratik Bir Arduino Kronometresi: 4 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:20
Arduino kronometresi için web'de arama yapın. Eğer buradaysan, muhtemelen az önce yaptın. Kişisel deneyimlerime göre, internetteki herhangi bir kronometrenin ya çok karmaşık olduğunu (yeni başlayanlar için kodda) ya da çok basit olduğunu ve sıfırlamadan sadece saniyeleri saymaya devam edenler gibi pratik olmadığını söyleyebilirim.
Sen de öyle düşünüyorsun, ha? Öyleyse tahmin et. Bunu yaptım ve dahası, girdimi doğrudan millis() işlevinden alıyorum - sonsuz bir sayı satırı (49 güne kadar veya her neyse). En iyi kısım? Sadece bir satır.
Sıfırlama, kronometrenin asıl zor kısmıdır. Orta seviye programcılar için, henüz yapmadıysanız, devam edin ve bunu saniyeler, dakikalar ve saatler ile birlikte kendiniz yapmaya çalışın. Ne hakkında konuştuğumu anlayacaksın.
Yeni başlayanlar için okumaya devam edin ve zihnimin dehasının keyfini çıkarın.
Şaka yapıyorum, ama bulduğum çözüm oldukça temiz. İşte ne olduğu:
Adım 1: Çözüm
Yani sorun sıfırlanıyor. İstediğimiz şey, ardışık sayıların (milis()) sonsuz çıktısından sürekli, yinelenen bir sayı döngüsüdür - temelde milisaniyeleri veya aslında 1.024 milisaniyeyi sayar, ama her neyse).
Akla gelen ilk şey, time1 -time2 ve bir gecikme gibi bir fark kullanmaktır. Unutmak. Önyükleme için en az altı satır kod ve bir if ifadesi gerekir.
İşte nasıl yapılacağı. Bir sınırımız var (59). 0'dan 59'a kadar her şeyin defalarca tekrarlanmasını istiyoruz. Nasıl?
Ya millis fonksiyonunun geri kalanını… bölü 59'a bölseydik… Bingo!
Yani, şöyle olmalı:
(60 [limit 59 olduğu için başlangıç değeri olarak] + millis() / 1000 [1000 milisaniye bir saniyedir]) % 60
Tamam, açıklamama izin ver. (%) veya modül, temelde (+) gibi kalanı bulan bir operatördür. %9 2=1 gibi.
Yani:
- kalan (60 + 0) % 60 = 0
- kalan (60 + 1) % 60 =1
- kalan (60 + 58) % 60 = 58
- kalan (60 + 59) % 60 = 59
- kalan (60 + 60) % 60 = 60
- kalan (60 + 61) % 60 = 1
Görmek!
Şimdi, parçalar için.
Adım 2: Parçalar
Pek değil, hiç
- herhangi bir arduino
-
Herhangi bir ekran (0.96 OLED kullandım, ancak sahip olduğunuz her şeyi kullanabilirsiniz, ekranınızın ekran işlevlerine doğru değişkenleri koyduğunuzdan emin olun.)
Bu kadar.
Adım 3: Kod
Al bakalım. Oldukça net bir şekilde yorumlandı, bu yüzden sorun olmamalı. 0.96 OLED için kütüphaneler ve init kodda var. Farklıysa, onu kendi ekranınızla değiştirin.
// 0.96 OLED kitaplıkları
#Dahil etmek
#Dahil etmek
#Dahil etmek
#Dahil etmek
// 0.96 OLED Başlangıç
#define OLED_RESET 4
Adafruit_SSD1306 ekranı(OLED_RESET);
int saniye;
int dakika;
int saat;
geçersiz kurulum() {
// Biraz daha 0.96 OLED Başlatma
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay(); display.setTextSize(2); display.setTextColor(BEYAZ); }
boşluk döngüsü () {
saniye = (60 + milis() / 1000) % 60;
dakika = (60 + milis() / 60000) % 60; saat = (25 + millis() / 3600000) % 25;
display.clearDisplay();
display.setCursor(0, 22); // sıfırlamadan bu yana geçen saat sayısını yazdır display.print(saat); display.print("h:");
// sıfırlamadan bu yana geçen dakika sayısını yazdır
display.print(dakika);
display.print("m:");
// sıfırlamadan bu yana geçen saniye sayısını yazdır display.print(saniye); display.print("s");
display.setCursor(0, 0);
display.print("Kronometre"); display.drawLine(0, 18, 128, 18, BEYAZ); display.display();
}
Adım 4: Sonlandırmada…
İşte bu kadar! Şimdi git onunla istediğini yap. Biraz yumurta koyun ya da mahallenizi ele geçirin.
Şerefe, Aarush
Önerilen:
PIR, 3D Baskılı Balkabağı ve Troll Arduino Uyumlu Sesli Şaka/pratik Şaka Panosu Kullanan Cadılar Bayramı Korkutma Makinesi: 5 Adım
PIR, 3D Basılı Balkabağı ve Troll Arduino Uyumlu Sesli Şakacı/pratik Şaka Panosu Kullanan Cadılar Bayramı Korkutma Makinesi: EngineeringShock Electronics'ten Patrick Thomas Mitchell tarafından oluşturulan ve çok uzun zaman önce Kickstarter'da tamamen finanse edilen Troll panosu. Bazı kullanım örnekleri yazmaya ve bir denemede bir Arduino kütüphanesi oluşturmaya yardımcı olmak için ödülümü birkaç hafta erken aldım
Croakers' Kronometresi: 16 Adım (Resimlerle)
Croakers' Chronometer: Kurbağalara gülümserseniz, bazıları titrer. Hareketi anlayarak, zamanın titrek bir işlem olduğunu söyleyebiliriz. Kurbağalar "yukarı bakar"; saatleri ikili olarak temsil eder (soldan sağa; 8,4,2,1). Kurbağalar "ileriye dönük"; min
Pratik Arduino ESP32 Kablosuz Duvar Prizi LED Şerit Kontrol Cihazı: 6 Adım
Pratik Arduino ESP32 Kablosuz Duvar Prizi LED Şerit Kontrol Cihazı: Bu, düşük maliyetli LED şeritler için çok pratik bir DIY Kablosuz Duvar Prizi kontrol cihazıdır. EBay'de satılan ucuz wifi kontrol cihazlarının yerini alır. RGB Led şeritlerle iyi çalışırlar. EBay Wifi denetleyicisi iyi yapılandırılmamış ve kolayca kırılıyor. Als
Kiwix Kullanarak Pratik Bir Otostopçunun Galaksi Rehberi: 4 Adım
Kiwix Kullanarak Pratik Bir Otostopçunun Galaksi Rehberi: Bu eğitim, Wikipedia'nın çevrimdışı bir sürümünü ve Kiwix android uygulamasını kullanarak Otostopçunun Galaksi Rehberi'nin pratik bir versiyonunu oluşturmanıza yardımcı olacaktır. Kiwix, Ted konuşmaları ve Project Gute gibi birçok farklı içeriği çevrimdışı olarak kullanmanıza olanak tanır
Pratik Bir Robot: 11 Adım (Resimlerle)
Pratik Bir Robot: Birkaç nedenden dolayı ona pratik bir robot diyorum. Evin etrafında çalışan çoğu insanın sahip olacağı günlük araçları kullanarak yapılabilir. Birçok fazla ürün kullanarak maliyet düşük tutulur. Robotun kolu, yerden 2 librelik bir nesneyi kaldırabilir