Malzemeler
Kodları
1 tane Buzzer
1 tane potansiyometre
1 tane I2C LCD Ekran 0x27
breadboard
arduino uno R3 klon
Şeması
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
#define POT_PIN A0 // Potansiyometre bağlantı pini
#define SPEAKER_PIN 7 // Hoparlör bağlantı pini
int potValue = 0; // Potansiyometre değeri
int heartRate = 0; // Kalp atış hızı
void setup() {
pinMode(POT_PIN, INPUT);
pinMode(SPEAKER_PIN, OUTPUT);
lcd.init();
lcd.backlight();
}
void loop() {
// Potansiyometre değerini oku (0-1023 arasında bir değer)
potValue = analogRead(POT_PIN);
// Potansiyometre değerini kalp atış hızına dönüştür (30-180 arasında bir değer)
heartRate = map(potValue, 0, 1023, 30, 180);
// Kalp atış hızına bağlı olarak ses çal
playHeartbeatSound(heartRate);
}
void playHeartbeatSound(int rate) {
// Kalp atış hızına bağlı olarak PWM sinyalini ayarla
int toneValue = map(rate, 30, 180, 100, 1000);
tone(SPEAKER_PIN, toneValue);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Kalp_Atisi: ");
lcd.println(heartRate);
// Kalp atış hızına bağlı olarak bekleme süresini ayarla
int delayTime = map(rate, 30, 180, 200, 600);
delay(delayTime);
// Hoparlörü kapat
noTone(SPEAKER_PIN);
// Bir sonraki atış için biraz bekleyin
delay(1000 - delayTime);
}
Yorumlar
Yorum Gönder