#include <NewSoftSerial.h>
NewSoftSerial nss(5,8); // Put your TX and RX pins here, in the correct order
byte vals[3];
int heartRate, oxyLevel;
void setup()
{
nss.begin(9600);
Serial.begin(9600);
}
void loop()
{
if(nss.available() >= 3)
{
Serial.print("Heart rate: ");
Serial.println(heartRate);
Serial.print("Oxygen level: ");
Serial.println(oxyLevel);
vals[0] = nss.read(); //represent byte 1
vals[1] = nss.read(); //represent byte 2
vals[2] = nss.read(); //represent byte 3
heartRate = 0; // Sets all 8 bits to 0
oxyLevel = 0; // Sets all 8 bits to 0
bitWrite(heartRate, 0, bitRead(vals[1], 0)); // Set bit 0
bitWrite(heartRate, 1, bitRead(vals[1], 1)); // Set bit 1
bitWrite(heartRate, 2, bitRead(vals[1], 2)); // Set bit 2
bitWrite(heartRate, 3, bitRead(vals[1], 3)); // Set bit 3
bitWrite(heartRate, 4, bitRead(vals[1], 4)); // Set bit 4
bitWrite(heartRate, 5, bitRead(vals[1], 5)); // Set bit 5
bitWrite(heartRate, 6, bitRead(vals[1], 6)); // Set bit 6
bitWrite(heartRate, 7, bitRead(vals[0], 0)); // Set bit 7
bitWrite(heartRate, 8, bitRead(vals[0], 1)); // Set bit 8
oxyLevel = vals[2];
}
}
This program can be compiled. But i dont really understand it.
Can someone explain it to me in simpler terms? Thanks. ![]()