Arama butonu
Bu konudaki kullanıcılar: 1 misafir
1
Cevap
289
Tıklama
0
Öne Çıkarma
arduino bpm hesaplama
S
5 yıl
Er
Konu Sahibi

arkadaşlar merhaba. ben arduinoyla bpm hesaplayan bir kod yazmak istiyorum ama bir yerde işin içinden çıkamadım. istediğim şey şu aynı butona iki basış arasındaki zaman farkını hesaplamak istiyorum. bir sürü şey denedim ama beceremedim. yardımcı olursanız sevinirim.



< Bu ileti mobil sürüm kullanılarak atıldı >

Z
5 yıl
Yarbay

Merhaba hocam. Sizin için bu projeyi yaptım. Butona iki kez (biraz bekleyerek) basıyoruz. Program iki basma işlemi arasında geçen süreyi bize söylüyor. Daha doğrusu ekrana yazdırıyor. BPM tam olarak nedir, nasıl hesaplanır bilmediğimden bu şekilde yaptım. Geliştirmek size kalmış. Kolay gelsin.


Videoyu izlemek için tıklayınız




#include <LiquidCrystal.h>
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

int pushButton = -1;
int myCounter = -1;
unsigned long millis1;
unsigned long millis2;
unsigned long secondsPassed;

void setup() {
lcd.begin(16, 2); //LCD ekranımızı başlatıyor ve boyutlarını belirtiyoruz.
lcd.setCursor(0, 0); //İmleci ilk satırın başına alıyoruz.
lcd.print("Merhaba"); //İlk satır
lcd.setCursor(0, 1); //İmleci ikinci satırın başına alıyoruz.
lcd.print("Ben zwanzig"); //İkinci satır

pinMode(13,INPUT);
}

void loop() {
pushButton = digitalRead(13);

if(myCounter == -1 && pushButton == 0)
{
myCounter = 0;
millis1 = millis();
}
if(pushButton == 1)
{
myCounter = 1;
millis2 = millis();

//secondsPassed = (millis2 / 1000) - (millis1 / 1000);
secondsPassed = millis2 - millis1;
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("BPM");
lcd.setCursor(0, 1);
lcd.print(secondsPassed);
myCounter = -1;
}

}



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.