Serial data transfer trough Bluetooth HC05 and display on LCD

Hello Every One,

need help.
We have project were load cell is connected on crane which is at height (within range of buetooth).

so need to get out put of load at ground level.

we have Two arduino uno, one HX711, one load cell, two LCD, two HC05.

completed work,
1.Master Slave configuration.
2.data getting from one uno to another vai Bluetooth.
3. Load cell value.

So we have two program one for sender uno and another for receiver uno.
1.Sender Uno(arduino+HX711+Load Cell+lcd+HC05(master))
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 10, 11, 12, 13);

#define DT A0
#define SCK A1
#define sw 2

long sample=0;
float val=0;
long count=0;

unsigned long readCount(void)
{
unsigned long Count;
unsigned char i;
pinMode(DT, OUTPUT);
digitalWrite(DT,HIGH);
digitalWrite(SCK,LOW);
Count=0;
pinMode(DT, INPUT);
while(digitalRead(DT));
for (i=0;i<24;i++)
{
digitalWrite(SCK,HIGH);
Count=Count<<1;
digitalWrite(SCK,LOW);
if(digitalRead(DT))
Count++;
}
digitalWrite(SCK,HIGH);
Count=Count^0x800000;
digitalWrite(SCK,LOW);
return(Count);
}

void setup()
{
Serial.begin(9600);
pinMode(SCK, OUTPUT);
pinMode(sw, INPUT_PULLUP);
lcd.begin(16, 2);
lcd.print(" Weight “);
lcd.setCursor(0,1);
lcd.print(” Measurement ");
delay(1000);
lcd.clear();
calibrate();
}

void loop()
{
count= readCount();
int w=(((count-sample)/val)-2*((count-sample)/val));
Serial.print(“weight:”);
Serial.print((int)w);
Serial.println(“g”);
lcd.setCursor(0,0);
lcd.print("Weight ");
lcd.setCursor(0,1);
lcd.print(w);
lcd.print("g ");

if(digitalRead(sw)==0)
{
val=0;
sample=0;
w=0;
count=0;
calibrate();
}
}

void calibrate()
{
lcd.clear();
lcd.print(“Calibrating…”);
lcd.setCursor(0,1);
lcd.print(“Please Wait…”);
for(int i=0;i<100;i++)
{
count=readCount();
sample+=count;
Serial.println(count);
}
sample/=100;
Serial.print(“Avg:”);
Serial.println(sample);
lcd.clear();
lcd.print(“Put 100g & wait”);
count=0;
while(count<1000)
{
count=readCount();
count=sample-count;
Serial.println(count);
}
lcd.clear();
lcd.print(“Please Wait…”);
delay(2000);
for(int i=0;i<100;i++)
{
count=readCount();
val+=sample-count;
Serial.println(sample-count);
}

val=val/100.0;
val=val/100.0; // put here your calibrating weight
lcd.clear();
}

2.Receiver Uno (arduino+lcd+HC05(slave))
#include <LiquidCrystal.h>

// Set the LCD address to 0x3F for a 16 chars and 2 line display
LiquidCrystal lcd(8, 9, 10, 11, 12, 13);

void setup()
{
lcd.begin(16,2);

// Initialize the serial port at a speed of 9600 baud
Serial.begin(9600);
}

void loop()
{
// If characters arrived over the serial port…
if (Serial.available()) {
// Wait a bit for the entire message to arrive
delay(1000);
// Clear the screen
lcd.clear();

// Write all characters received with the serial port to the LCD.
while (Serial.available() > 0) {

lcd.write(Serial.read());
}
}
}

Need help.
1.Data received is continuous running.
2.every time asking for calibration.

NOTE: most of program part copied from internet.

  int w=(((count-sample)/val)-2*((count-sample)/val));
  Serial.print("weight:");
  Serial.print((int)w);

Why do you think you need to cast an int to an int?

    // Wait a bit for the entire message to arrive
    delay(1000);

That comment and the associated code is NOT anything even remotely close to the proper way to handle serial data. Read, understand, and start over.

Serial input basics - updated

  if(digitalRead(sw)==0)

You have not defined the mode for this pin, so it defaults to INPUT. How IS the switch wired?

1.Data received is continuous running.

Why is that a problem? I would expect this behavior.