#include <Wire.h>
#include <Ultrasonic.h>
const int pulseSensorPin = A0;
const int trigPin = 2; // HC-SR04 trigger pin
const int echoPin = 5; // HC-SR04 echo pin
Ultrasonic ultrasonic(trigPin, echoPin);
void setup() {
Wire.begin();
Serial.begin(115200);
pinMode(pulseSensorPin, INPUT);
}
void loop() {
// Read MPU6050 data
Wire.beginTransmission(0x68); // MPU6050 address
Wire.write(0x3B); // Start with register 0x3B (ACCEL_XOUT_H)
Wire.endTransmission(false);
Wire.requestFrom(0x68, 14, true); // Read 14 bytes
int sensorValue = analogRead(pulseSensorPin); // Read the analog value from the sensor
float heartRate = map(sensorValue, 0, 4095, 60, 100);
while (Wire.available() < 14) {
delay(1);
}
int16_t accelX = Wire.read() << 8 | Wire.read();
int16_t accelY = Wire.read() << 8 | Wire.read();
int16_t accelZ = Wire.read() << 8 | Wire.read();
// Read HC-SR04 distance
float distance = ultrasonic.read();
// Print sensor data
Serial.print("Accel X: ");
Serial.println(accelX);
Serial.print("Accel Y: ");
Serial.println(accelY);
Serial.print("Accel Z: ");
Serial.println(accelZ);
Serial.print("Distance (cm): ");
Serial.println(distance);
Serial.print("Heart Rate (Simulated): ");
Serial.println(heartRate);
delay(1000); // Adjust as needed
}