How to round off the data and Store it into Memory for processing

Could you explain what you mean by "round off the data" and "store it into memory for processing"?

It may be that you're trying to do something very easy, but from your question it isn't quite clear what that is.

basically what i am trying to do is to navigate my ride on Jeep through GPS the Problem i am facing is that its giving me continuous Lat\long i want to stop that and store it into EEPROM and then calculate the distance and bearing from my way point i am using NMEA library this is the method i am using if you have got any Knowledge regarding this Kindly let me know

You need to use a few of these. I've got some spares. Copy and paste these into your post. Then, maybe it will make sense.

................................................................................

Will your Arduino be running continuously during this journey, or do you want it to remember where it has been after you switch it off?

yes My Arduino will run continuously through the course from Destination to Waypoint

My Arduino will run continuously through the course from Destination to Waypoint

Then, every time you get a new position, you should update the distance and direction. There is no need to store any position in EEPROM.

But i dont know how can i fix the GPS data its continuously changing so for calculating the Distance and direction its not constant i can send you the the code

But i dont know how can i fix the GPS data its continuously changing

This assumption is invalid. The GPS returns new data often, but it does not return a continuous stream of data.

As far as the Arduino is concerned, there is an eternity between new readings.

i can send you the the code

Even better, post it.

// This is my first very simple GPS navigation tool, that
// was written for my Wiring board. It connects to a GPS
// module via port Serial1 (4800bps) and shows some very
// basic navigation information on a character-based LCD.
// The information shown is:
// - direction to destination, relative to own movement
// - distance to destination in meters (it is really
//   easy to do kilometers, miles, etc.)
// - my current speed in kilometers per hour
// - GPS status identifier
//
// I tried it in my car, and it works perfectly, although
// it's quite useless. The code below uses the Wiring
// board diagnostic LED on pin 48, which does not exist
// on Arduino's -- be aware.
#include <math.h>
#include <nmea.h>
#include <LiquidCrystal.h>
#include <NewSoftSerial.h>

NewSoftSerial mygps(7, 8);
// create connection to GPRMC sentences from my GPS
NMEA myGPS(GPRMC);
// create LCD object (I use a 2x16 character display)
LiquidCrystal myLCD = LiquidCrystal(12, 11, 5, 4, 3, 2);

// my destination coordinates in signed degrees-decimal
float dest_latitude = 25.362023;
float dest_longitude = 68.355542;  
//25.362023, 68.355542?
void setup() {
  
 myLCD.begin(16,2);
  mygps.begin(4800);
  pinMode(13, OUTPUT);  // diagnostic led on Wiring-board
  myLCD.clear();
  myLCD.home();
  myLCD.print("GPS-NAV By Eshu");
  delay(1000);
  
}
void loop() {
  // check if data from GPS available on Serial1 port
  if (mygps.available() > 0 ) {

    // check if full sentence recieved from GPS
    if (myGPS.decode(mygps.read())) {
      // if so, set status led on
      digitalWrite(13, HIGH);
         
      // calculate direction to destination, relative to my own direction of movement
      float lat = myGPS.gprmc_latitude();
      float longi = myGPS.gprmc_longitude();
      
      myLCD.clear();
      myLCD.home();
      myLCD.setCursor(0, 0);
      myLCD.print("lat:");
      myLCD.print(lat);
      myLCD.setCursor(0, 1);
      myLCD.print("longi:");
      myLCD.print(longi);
      myLCD.setCursor(15, 1);
      myLCD.print(myGPS.gprmc_status());

}
  }
}

i am using the following code for the latitude and Longitude display on LCD
and the result is continuously varying and i am taking this code for my direction code that is

// This is my first very simple GPS navigation tool, that
// was written for my Wiring board. It connects to a GPS
// module via port Serial1 (4800bps) and shows some very
// basic navigation information on a character-based LCD.
// The information shown is:
// - direction to destination, relative to own movement
// - distance to destination in meters (it is really
//   easy to do kilometers, miles, etc.)
// - my current speed in kilometers per hour
// - GPS status identifier
//
// I tried it in my car, and it works perfectly, although
// it's quite useless. The code below uses the Wiring
// board diagnostic LED on pin 48, which does not exist
// on Arduino's -- be aware.
#include <math.h>
#include <nmea.h>
#include <LiquidCrystal.h>
#include <NewSoftSerial.h>

NewSoftSerial mygps(7, 8);
// create connection to GPRMC sentences from my GPS
NMEA myGPS(GPRMC);
// create LCD object (I use a 2x16 character display)
LiquidCrystal myLCD = LiquidCrystal(12, 11, 5, 4, 3, 2);

// my destination coordinates in signed degrees-decimal
float dest_latitude = 25.362023;
float dest_longitude = 68.355542;  
//25.362023, 68.355542?
void setup() {
  
 myLCD.begin(16,2);
  mygps.begin(4800);
  pinMode(13, OUTPUT);  // diagnostic led on Wiring-board
  myLCD.clear();
  myLCD.home();
  myLCD.print("GPS-NAV By Eshu");
  delay(1000);
  
}
void loop() {
  // check if data from GPS available on Serial1 port
  if (mygps.available() > 0 ) {

    // check if full sentence recieved from GPS
    if (myGPS.decode(mygps.read())) {
      // if so, set status led on
      digitalWrite(13, HIGH);
         
      // calculate direction to destination, relative to my own direction of movement
      float dir = myGPS.gprmc_course_to(dest_latitude, dest_longitude) - myGPS.gprmc_course();
      if (dir < 0) { dir += 360; }
      if (dir > 180) { dir -= 360; }
      
      // display relative direction to destination
      myLCD.clear();
      myLCD.home();
      if (dir < 0) {
        myLCD.print('<');  // destination is to your left
      } else {
        myLCD.print('>');  // destination is to your right
      }
      myLCD.print(abs(dir), DEC);
      myLCD.print(223, BYTE);  // print °-character
      
       // display distance to destination in meters
      myLCD.setCursor(0, 1);
      myLCD.print("D:");
      myLCD.print(round(myGPS.gprmc_distance_to(dest_latitude, dest_longitude, MTR)));
      myLCD.print("m");
       
       // display my speed in kilometers per hour
      myLCD.setCursor(5, 0);
      myLCD.print("S:");
      myLCD.print(round(myGPS.gprmc_speed(KMPH)),DEC);
      myLCD.print("Km/h");
        
        // display GPS positioning status ('A'=active, 'V'=void)
      myLCD.setCursor(15, 1);
      myLCD.print(myGPS.gprmc_status());
      
      // set status led off
      digitalWrite(13, LOW);
    }
  }
}

The code below uses the Wiring
// board diagnostic LED on pin 48, which does not exist
// on Arduino's -- be aware.

So what Arduino board are you using then?

if (mygps.available() > 0 )

So you check that there is at least one character in the buffer and then go on:-

myGPS.decode(mygps.read())

To read a whole pile of bytes, how many I can't tell because I haven't got that library.

I think you need to wait until all the data is in before you try and read it.

To read a whole pile of bytes, how many I can't tell because I haven't got that library.

I think you need to wait until all the data is in before you try and read it.

If the NMEA library is anything like the TinyGPS library, only one byte is read, and then the decode() function is called. That function returns true or false, depending on whether the packet was completed by the last byte read.

OP: If you added a Serial.print() statement to loop, you'd see that there were thousands of passes through loop needed to collect one entire packet from the GPS. Each packet contains a timestamp. You'd see, if you printed the whole packet, that the time changes for each packet.

The code you posted is showing the direction to the destination already, so I'm not sure what it is you are asking for help with. It appears that all you need to do is to calculate the distance to the target.

NMEA is just like TinyGPS library but the difference is TinyGPS library doesn't gve course to and distane to feature where as NMEA do offer these refer the link below what i am referring
http://www.maartenlamers.com/nmea/

sir actually my output lat\long is continuously varying with the above code and hence the direction is varying so when the lat\long is fixed then it can give steady Direction to the destination

Sir i have found that the output i am getting is the timing error of the programming can u tell me is there any chances of My Programming mistake or so refer me a programme or Site from where i Accurate my GPS data

cutebuddy6:
Sir i have found that the output i am getting is the timing error of the programming can u tell me is there any chances of My Programming mistake or so refer me a programme or Site from where i Accurate my GPS data

I'm afraid I can't make sense of your question.

sir actually my output lat\long is continuously varying with the above code and hence the direction is varying so when the lat\long is fixed then it can give steady Direction to the destination

The only way to get a steady direction to the destination is to stop. I'm thinking that is what you need to do.

If you don't, the distance and direction from "here" to "there" is NOT going to be steady, for any value of "here" or "there".

its simple the LCD is showing 10 digit output of Lat and Long on the LCD and the the last digits are varying why ?

and how it can be solved?

Does the 10-digit value you're displaying exactly match the raw data you are getting from the GPS receiver?

If it does, the GPS receiver is jittering, so you need to investigate whet the GPS receiver is doing. Is the output actually accurate to ten digits?

If it doesn't match, the code that interprets the GPS output and produces your 10-digit display has a bug. You would need to know what the raw GPS data was and what value your sketch displayed to work out where the error was occurring.

the ten 10 Digit output is constant and the last 5 digits are continuously varying

I'm not familiar with your GPS receiver. Can you show an example of the output, indicate which part is varying and what that part represents in terms of lat/long?

the Following are the links of the Video