#include <Wire.h>
#include "MAX30100_PulseOximeter.h"
#define ledPin 13 // Pin untuk LED
#define potPin 34 // Pin untuk potensio
PulseOximeter pox;
int ledThreshold = 512; // Nilai ambang batas untuk menyalakan LED
int potValue = 0; // Nilai dari potensio
void onBeatDetected()
{
Serial.println("Detected a beat!");
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
}
void setup()
{
Serial.begin(115200);
pinMode(ledPin, OUTPUT);
pinMode(potPin, INPUT);
if (!pox.begin())
{
Serial.println("Failed to initialize pulse oximeter. Please check wiring/power.");
for (;;)
;
}
pox.setOnBeatDetectedCallback(onBeatDetected);
}
void loop()
{
pox.update();
potValue = analogRead(potPin);
ledThreshold = map(potValue, 0, 4095, 100, 800); // Menggunakan potensio untuk menentukan nilai ambang batas
if (pox.sawStartOfBeat())
{
Serial.println("Heartbeat detected!");
}
if (pox.getHeartRate() > ledThreshold)
{
digitalWrite(ledPin, HIGH);
}
else
{
digitalWrite(ledPin, LOW);
}
}