Searching \ for '[PIC]: GPS' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/microchip/ios.htm?key=gps
Search entire site for: 'GPS'.

Exact match. Not showing close matches.
PICList Thread
'[PIC]: GPS'
2002\11\24@232114 by Tony Nixon

flavicon
picon face
Has anyone used a PIC to communicate to a GPS module?

Any info on what data to expect?

--
Best regards

Tony

mICros
http://www.bubblesoftonline.com
spam_OUTsalesTakeThisOuTspambubblesoftonline.com

--
http://www.piclist.com hint: The list server can filter out subtopics
(like ads or off topics) for you. See http://www.piclist.com/#topics


2002\11\24@233939 by Bob Axtell

face picon face
Yes, its easy for most board GPS systems. We used
the "navy protocol" or whatever it was; was very simple.
It provided position information and at the same time stated
the number of birds used (when more are used, greater accuracy).
We threw out any measurements made with less than 4 birds.
It was 9600 baud and odd parity, if I remember right.

Most have several protocols; you can select the ones to use.

--Bob

{Original Message removed}

2002\11\25@055036 by Claudio Tagliola

picon face
Most common is NMEA. It's 9600/8n1 serial communication, ASCII text. Quite
easy to handle. Just google for NMEA and GPS and you'll bound to hit
something. But it's so simple, just looking at it will probably do as well.

-----Oorspronkelijk bericht-----
Has anyone used a PIC to communicate to a GPS module?

Any info on what data to expect?

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\11\25@055905 by Alvaro Deibe Diaz

flavicon
face
Yes. I've talked to a GPS with a 12CXX (don't remember). The information
from the GPS came in a format called "NMEA" (I think there are other
formats) easy to understand. The PIC cleaned some of the NMEA commands for
compatibility issues between two equipments.

All of this was in plain RS232.

regards,

Alvaro.

{Original Message removed}

2002\11\25@083911 by fred jones

picon face
Yes, I have a 16F877 talking to a Garmin GPS OEM module as well as a
handheld Magellan unit.  It is very simple to do.  Search on google for NMEA
0183 and you will find info on the sentences sent out.  I use the RMC
sentence to get all the info I'm looking for including time, date, lat,
long, speed, and heading.  There are other sentences also sent out with
other data.  The standard talks at 4800 baud although many modules can be
programmed to talk at higher speeds.  I recieve the data and test for "R",
"M", "C".  Once I detect these 3 letters then I begin listening for the
ascii data and store it.  The different data is seperated by ",".  These
links should give you enough info to understand it enough to implement.  I
couldn't find the link I used which even had files of example outputs from
various manufacturers.  If you want it let me know and I'll send it when I
get home from work as I have it bookmarked there.  On one product I use the
garmin and connect it directly.  On another product I talk to a customer
supplied unit so I opto isolate on that one so that I don't chance damaging
anybody's receiver :0)  Keep in mind that some units have to be configured.
You have to go into setup and turn on data output and which sentences you
want sent, others don't.  I have found that the NMEA-0183 "standard" is
better described as a recommendation.  The accuracy can vary anywhere from
1, 2, or 3 digits passed the ".".  Make sure your code can handle them if
you aren't going to be using the same module every time.
Good luck,
Fred

www.nolandengineering.com/nmeainfo.html#Msg_format
www.gmat.unsw.edu.au/cr/gmat4900/tutwk9.pdf
www.gsmbelarus.com/GPS10/12GPSinfo/12__NMEA2-1.htm
http://www.ct-gmbh.de/download/sirfnmea.pdf (page 6)




{Quote hidden}

_________________________________________________________________
MSN 8 helps eliminate e-mail viruses. Get 2 months FREE*.
http://join.msn.com/?page=features/virus

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\11\25@172329 by Tony Nixon

flavicon
picon face
fred jones wrote:
>
> Yes, I have a 16F877 talking to a Garmin GPS OEM module as well as a
> handheld Magellan unit.

Can you tell me the model of this unit.

I am looking for something portable that I can log data from.



--
Best regards

Tony

mICros
http://www.bubblesoftonline.com
salesspamspam_OUTbubblesoftonline.com

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\11\25@181542 by fred jones

picon face
Hi Tony,
The Garmin module I use is a GPS 25 series.
http://www.garmin.com/products/gps25/

The Magellan handheld I used is a Trailblazer XL.

This is the website that I learned a lot of info from:
http://vancouver-webpages.com/peter/

The following site has a project that may be of some help:
http://www.users.bigpond.com/tobbe/dl7aot.htm

Good luck,
Fred




{Quote hidden}

_________________________________________________________________
MSN 8 with e-mail virus protection service: 2 months FREE*
http://join.msn.com/?page=features/virus

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.



'[PIC]: GPS'
2002\12\10@193321 by Phil
flavicon
face
 I would like to connect a GPS card (Rockwell Jupiter) to my 16F877.
Initially I would like to have the output displayed on the PC via a
terminal program and eventually on an LCD.
- I understand how to communicate with the PC via the USART and a
MAX232.
- I understand how to communicate with the LCD display.
- I should be able to write the code necessary to convert the NMEA
strings into the information I want.

** What I do not know how to do is to set up a second serial port. (I
think that is what I need?)  The NMEA data is sent 4800,8-N-1, at one
second intervals.

 Does anyone have examples or pointers in a high level language (sorry
but I am not an assembler kind-of guy :} ) that I could base my effort
on?  Either in pseudo code or words would be gratefully appreciated.

 I have searched the PICLIST archive with no luck.  I must be entering
the wrong key words since I am surprised that I was unable to find any
references.

Phil
--
---------------------------------------------------------------
    Those who agree with us may not be right,
    but we admire their astuteness.
           - Cullen Hightower -
---------------------------------------------------------------

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\12\10@194906 by Josh Koffman

flavicon
face
The proper terminology for what you want to do is to bit-bang a serial
port. You toggle bits directly in code as opposed to letting an onboard
UART take care of it. You could in theory use an external UART as well.
I don't have any high-level code to do this. You could search around at
http://www.piclist.com though. Most of the code of this type seems to be
in assembler. At least now knowing what it's called, you can search
smarter.

Josh
--
A common mistake that people make when trying to design something
completely foolproof is to underestimate the ingenuity of complete
fools.
       -Douglas Adams

Phil wrote:
> ** What I do not know how to do is to set up a second serial port. (I
> think that is what I need?)  The NMEA data is sent 4800,8-N-1, at one
> second intervals.
>
>   Does anyone have examples or pointers in a high level language (sorry
> but I am not an assembler kind-of guy :} ) that I could base my effort
> on?  Either in pseudo code or words would be gratefully appreciated.

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\12\10@195806 by Nick Veys

flavicon
face
Is your problem a lack of a secord hardware serial port?

Give the MAX3110 a shot.  They're great, easy to use, support a wide
range of baud rates, and have a nice buffer as well.

Nick Veys / TakeThisOuTnickEraseMEspamspam_OUTveys.com / http://www.veys.com

] {Original Message removed}

2002\12\10@200801 by Harold Hallikainen

picon face
A few possibilities are:

1. Bit bang another serial port.

2. Use a PIC with 2 ports (the 18f6720 I'm using in a project right now has 2 serial ports, others might also).

3. If you are only transmitting async serial, you might try using the SSP. You'd have to swap the bit order since async normally sends lsb first and SSP sends msb first. You'd also shift the bits a bit so the first bit sent represents the start bit (0), followed by 7 data bits.

4. Maxim makes an SPI UART.

Harold


---------- Phil <RemoveMEPhilspamTakeThisOuTPKELLER.NET> writes:


 I would like to connect a GPS card (Rockwell Jupiter) to my 16F877.
Initially I would like to have the output displayed on the PC via a
terminal program and eventually on an LCD.
- I understand how to communicate with the PC via the USART and a
MAX232.
- I understand how to communicate with the LCD display.
- I should be able to write the code necessary to convert the NMEA
strings into the information I want.

** What I do not know how to do is to set up a second serial port. (I
think that is what I need?)  The NMEA data is sent 4800,8-N-1, at one
second intervals.

 Does anyone have examples or pointers in a high level language (sorry
but I am not an assembler kind-of guy :} ) that I could base my effort
on?  Either in pseudo code or words would be gratefully appreciated.

 I have searched the PICLIST archive with no luck.  I must be entering
the wrong key words since I am surprised that I was unable to find any
references.

Phil
--
---------------------------------------------------------------
    Those who agree with us may not be right,
    but we admire their astuteness.
           - Cullen Hightower -
---------------------------------------------------------------

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.





FCC Rules Online at http://www.hallikainen.com/FccRules/




________________________________________________________________
Sign Up for Juno Platinum Internet Access Today
Only $9.95 per month!
Visit http://www.juno.com

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\12\10@230433 by Dale Botkin

flavicon
face
On Tue, 10 Dec 2002, Phil wrote:

>   Does anyone have examples or pointers in a high level language (sorry
> but I am not an assembler kind-of guy :} ) that I could base my effort
> on?  Either in pseudo code or words would be gratefully appreciated.

The high level language (well, compared to ASM anyway) that I use is C.
The compiler from CCS (http://www.ccsinfo.com) has built in serial
send/receive support for hardware and software UARTS, and you can use both
at the same time.  Works well in every application I've tried.  It's not a
free product, though I think there's a demo limited either in memory or
time, not sure which.

Dale

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.


2002\12\11@081542 by Olin Lathrop

face picon face
>   I would like to connect a GPS card (Rockwell Jupiter) to my 16F877.
> Initially I would like to have the output displayed on the PC via a
> terminal program and eventually on an LCD.
> - I understand how to communicate with the PC via the USART and a
> MAX232.
> - I understand how to communicate with the LCD display.
> - I should be able to write the code necessary to convert the NMEA
> strings into the information I want.
>
> ** What I do not know how to do is to set up a second serial port. (I
> think that is what I need?)  The NMEA data is sent 4800,8-N-1, at one
> second intervals.

Unless this is a high volume product where every penny matters, just use a
PIC with two UARTs.  I've used the 17C756A a few times for exactly that
reason.  The newer alternative is the 18F6620, but I'm not sure if it's
available yet.


*****************************************************************
Embed Inc, embedded system specialists in Littleton Massachusetts
(978) 742-9014, http://www.embedinc.com

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email listservEraseMEspam.....mitvma.mit.edu with SET PICList DIGEST in the body


2002\12\11@084531 by Claudio Tagliola

picon face
With a PIC with only one uart the easiest is to receive on
the hardware uart and bitbang the outgoing serial port. As soon as
you have two incoming lines, it'll get ugly really fast.

If you want a higher language, and the compiler supports software
serial ports (I know CCS has this), you have the basic controls
up and running in 30 minutes. I think there even are examples on
how to use the software serial port on their site, it's just a matter
of defining two serial streams, one on the hardware pins and the other
on two arbitrary pins. Take a look at http://www.ccsinfo.com/faq/?5.

I have a design with this, it works like a charm.

Best regards,

Claudio

-----Oorspronkelijk bericht-----
** What I do not know how to do is to set up a second serial port. (I
think that is what I need?)  The NMEA data is sent 4800,8-N-1, at one
second intervals.

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email EraseMElistservspammitvma.mit.edu with SET PICList DIGEST in the body


2002\12\11@120441 by Tim Webb

flavicon
face
It may seem silly, but you can also use a second 16f877

-----Original Message-----
From: Harold Hallikainen [RemoveMEharoldhallikainenEraseMEspamEraseMEJUNO.COM]
Sent: Tuesday, December 10, 2002 5:05 PM
To: RemoveMEPICLISTspam_OUTspamKILLspamMITVMA.MIT.EDU
Subject: Re: [PIC]: GPS


A few possibilities are:

1. Bit bang another serial port.

2. Use a PIC with 2 ports (the 18f6720 I'm using in a project right now has 2 serial ports, others might also).

3. If you are only transmitting async serial, you might try using the SSP. You'd have to swap the bit order since async normally sends lsb first and SSP sends msb first. You'd also shift the bits a bit so the first bit sent represents the start bit (0), followed by 7 data bits.

4. Maxim makes an SPI UART.

Harold


---------- Phil <RemoveMEPhilTakeThisOuTspamspamPKELLER.NET> writes:


 I would like to connect a GPS card (Rockwell Jupiter) to my 16F877.
Initially I would like to have the output displayed on the PC via a
terminal program and eventually on an LCD.
- I understand how to communicate with the PC via the USART and a
MAX232.
- I understand how to communicate with the LCD display.
- I should be able to write the code necessary to convert the NMEA
strings into the information I want.

** What I do not know how to do is to set up a second serial port. (I
think that is what I need?)  The NMEA data is sent 4800,8-N-1, at one
second intervals.

 Does anyone have examples or pointers in a high level language (sorry
but I am not an assembler kind-of guy :} ) that I could base my effort
on?  Either in pseudo code or words would be gratefully appreciated.

 I have searched the PICLIST archive with no luck.  I must be entering
the wrong key words since I am surprised that I was unable to find any
references.

Phil
--
---------------------------------------------------------------
    Those who agree with us may not be right,
    but we admire their astuteness.
           - Cullen Hightower -
---------------------------------------------------------------

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.





FCC Rules Online at http://www.hallikainen.com/FccRules/




________________________________________________________________
Sign Up for Juno Platinum Internet Access Today
Only $9.95 per month!
Visit http://www.juno.com

--
http://www.piclist.com hint: The PICList is archived three different
ways.  See http://www.piclist.com/#archives for details.

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email EraseMElistservspamspamspamBeGonemitvma.mit.edu with SET PICList DIGEST in the body


2002\12\11@120454 by Phil

flavicon
face
 Well it looks like from the response that it is off to the local book
store for a book on bit-banging a Serial Interfaces (Serial-PIC'n
maybe).

 Thanks for all the assistance and suggestions.
Phil

Phil wrote:
{Quote hidden}

--
---------------------------------------------------------------
    Those who agree with us may not be right,
    but we admire their astuteness.
           - Cullen Hightower -
---------------------------------------------------------------

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email RemoveMElistservKILLspamspammitvma.mit.edu with SET PICList DIGEST in the body


2002\12\11@141643 by fred jones

picon face
Hi,
I am using a 16F877 to talk to a GPS module.  It just receives the data once
a second and stores it.  I am bit banging that one.  The USART is set up in
interrupt mode and recieves data from another source.  When it gets data, I
combine that with the GPS data and send it out the USART to a PC via an
RS-232 port.  It works quite well.
Good luck,
Fred

{Quote hidden}

_________________________________________________________________
STOP MORE SPAM with the new MSN 8 and get 2 months FREE*
http://join.msn.com/?page=features/junkmail

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email @spam@listserv@spam@spamspam_OUTmitvma.mit.edu with SET PICList DIGEST in the body



'[PIC]: GPS'
2003\11\17@221018 by amg amg
picon face
Anybody have a link to an example of parsing serial data from a GPS that
they'd care to share?
For starters, I am trying to extract position and heading info.

Toss a bone to get me going...preferrably in C.  (I'm using Microchip's
C18.)

Google and a search of the PIClist didn't seem to get me what I was
looking for.

Regards,
amg

________________________________________________________________
The best thing to hit the internet in years - Juno SpeedBand!
Surf the web up to FIVE TIMES FASTER!
Only $14.95/ month - visit http://www.juno.com to sign up today!

--
http://www.piclist.com hint: To leave the PICList
spamBeGonepiclist-unsubscribe-requestspamKILLspammitvma.mit.edu

2003\11\17@232110 by Chris Nye

flavicon
face
How about perl? I have a code example I'd be happy to send you directly. I
use it to access my garmin GPS. Just send me a quick mail. In the meantime,
here is an additional perl link for GPS modules:
http://sourceforge.net/projects/perl-gps/

Good luck,
nyec
{Original Message removed}

2003\11\17@232324 by Russell McMahon

face
flavicon
face
> Anybody have a link to an example of parsing serial data from a GPS that
> they'd care to share?
> For starters, I am trying to extract position and heading info.

No code, but if you don't want elegance it's pretty trivial:

Monitor data stream until desired sentence identifier appears.
   Count commas until requisite commas count reached
       Input data.

Some sentences change in length depending on valid satellites in view etc
but the position, heading, and time info always has the same number of
commas between it and the start of the line (AFAIR)

eg Look for data after 3rd comma in $GPRMC sentence (whatever)
Typically:
$GPRMC,235948,V,3648.3912,S,17444.5462,E,0.000,0.0,280697,19.5,E*45

Track data until $GPRMC occurs after a CRLF, then count 3 commas, then input
data until comma 4 occurs.

I grabbed that data line from the start of a log file.
FWIW that's probably the address of Talon Technologies in Auckland, NZ.



       RM

--
http://www.piclist.com hint: To leave the PICList
.....piclist-unsubscribe-requestspam_OUTspammitvma.mit.edu

2003\11\18@112041 by Michael J. Pawlowsky

flavicon
face
I have some code in PicBasicPro which would be easy to port to "C".
It's somewhat more intelligent than most code I've seen out there in the sense that it has routines to find the field and parse the data and even compare the cheksum.

Most of the examples I've seen expect fields to be in a specific place and in  a specific format.
Which is not the case with different brand/model GPSs.

Take a look at: http://www.rconline.ca/products/mi-soft/rcap/
From there, there is a link to the CVS server.

Mike



*********** REPLY SEPARATOR  ***********

On 11/17/2003 at 10:10 PM amg amg wrote:

>Anybody have a link to an example of parsing serial data from a GPS that
>they'd care to share?
>For starters, I am trying to extract position and heading info.

--
http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads

More... (looser matching)
- Last day of these posts
- In 2003 , 2004 only
- Today
- New search...