Blood Pressure sensor interfacing | Arduino code and Block Schematic
This page covers Blood Pressure sensor interfacing with arduino code. It describes Blood Pressure sensor interfacing block circuit schematic.
Introduction: As we know blood pressure is very essential to be measured due to serious problems such as heart attack, stroke or kidney related diseases. High blood pressure does not have any symptoms and hence it requires regular checking.
What is Blood Pressure sensor ?
The device which measures the blood pressure is known as blood pressure sensor. It is also called as Sphygmomanometer.
The blood pressure is measured as numbers viz. systolic stress, diastolic pressure and pulse rate.

Following are the features of Blood Pressure sensor manufactured by Sunrom.
• Automatic compression/decompression
• Easy to operate using button
• Memory to save measurements
• Automated power saving
• Large LCD screen
• Requires +5V for its operation
• Serial output in ASCII format at 9600 baud
• Refer working operation of Blood Pressure sensor >>.
Blood Pressure interfacing with Arduino block circuit schematic
It is very easy to interface blood pressure sensor with arduino or microcontroller having UART. Here arduino or microcontroller is set to communicate at 9600 baud.
The sensor is interfaced with arduino as per circuit schematic diagram shown below. During dumping of code do not connect Rx pin of arduino with Tx pin of sensor module. After the code is dumped both of these pins are connected.

Following table mentions connections between Blood Pressure sensor and Arduino board.
Blood pressure sensor | Arduino Uno Board |
---|---|
VCC | 5V |
GND | GND |
Tx-OUT | RxD pin |
Blood Pressure sensor interfacing with Arduino code
Following is the arduino code to interface Blood Pressure sensor with arduino or any microcontroller board. The blood pressure sensor provides output in 8 bit ASCII format which ranges from 000 to 255. The three parameters viz. systolic, diastolic and pulse rate are separated by comma and space. The last byte of packet is always 0x0A in hex and 10 in decimal so one can view each reading from sensor on new line. The serial communication speed is set initially to 9600 bps.
int sensorValue; // variable to store the output from the sensor
SoftwareSerial serial(9,10);
char sbuffer[14], ch;
unsigned char pos;
unsigned char read1, read2, read3;
boolean newData=false;
void setup() {
Serial.begin(9600);
Serial.begin(9600);
Serial.println("<Arduino is ready>");
}
void loop() {
recvChar();
showNewData();
}
void recvChar() {
if (Serial.available() > 0)
{
while(Serial.available()>0)
{
ch = Serial.read(); //loop till character received
if(ch==0x0A) // if received character is <LF>, 0x0A, 10 then process buffer
{
pos = 0; // buffer position reset for next reading
newData=true;
// extract data from serial buffer to 8 bit integer value
// convert data from ASCII to decimal
read1 = ((sbuffer[1]-'0')*100) + ((sbuffer[2]-'0')*10) +(sbuffer[3]-'0');
read2 = ((sbuffer[6]-'0')*100) + ((sbuffer[7]-'0')*10) +(sbuffer[8]-'0');
read3 = ((sbuffer[11]-'0')*100) + ((sbuffer[12]-'0')*10) +(sbuffer[13]-'0');
}
else
{ //store serial data to buffer
sbuffer[pos] = ch;
pos++;
}
}
}
}
void showNewData() {
if (newData == true)
{
Serial.println("Calculating Results ... ");
Serial.println(read1);
Serial.println(read2);
Serial.println(read3);
newData = false;
}
}
Advantages and Disadvantages of other Sensor Types
Advantages and Disadvantages of other wireless technologies
What is Difference between
difference between OFDM and OFDMA
Difference between SC-FDMA and OFDM
Difference between SISO and MIMO
Difference between TDD and FDD
FDMA vs TDMA vs CDMA
FDM vs TDM
CDMA vs GSM