We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hey all,
I am doing a project on Vehicle Tracking System using GPS and GSM Modem.The 2 devices aforementioned communicates with 8051uC. But since there is only 1 UART in 8051 i have to use a analog multiplexer i.e CD 4062. I want to know how to interface it with GPS, GSM, and 8051.
Also it would be grateful if anyone could tell me how to parse output of GPS and how initialize a GPS receiver to that it starts giving me the GPRMC
See actually i am new to serial communication Ive been working with uC's for about a year or so but never did anything related to serial communication. Please try to understand. The reason why i was asking for the code was because i would have got an idea by that way.It would have alright ifyou could have just replied me not with the GPS' output but any random program related to serial communication. I think you misunderstood me and I misunderstood you. Lets close that chapter. And mark a new beginning
5 minutes looking around on this site - or looking around on your computer - should give you a good starting ground for serial communication.
Processing $GPRMC strings doesn't have anything to do with serial communication. You could just as well have received the data from a file on a memory card or have the strings hard-coded in the source code.
When writing software, you partition your problem into smaller pieces until you have pieces small enough for you to handle. Receiving data, and decoding data is definitely two separate pieces. And processing NMEA strings is also possible to see as multiple tasks. - Locating record separators (i.e. individual text lines) - Computing checksum - Splitting line into individual fields - Decoding the contents of the different fields - Using the decoded data in an application-specific way.
Yes - you start by following the links you've already been given, and doing a bit of study and research.
"Ive been working with uC's for about a year or so but never did anything related to serial communication"
I find that quite amazing - to have gone a whole year and done nothing with serial comms!
Really, serial comms is a very, very, very common part of microcontroller/embedded systems!
After "blinky", a "hello, world" program on the UART must be one of most developer's first programs.
You really should have no problem at all finding plenty of examples of it!
Start on this very website: http://www.keil.com/download/ http://www.keil.com/books
and take it from there...
Ive been working with uC's for about a year doing what?
Erik
Putting in fresh batteries and then pressing the remote control buttons? Or plugging in the headphones and then activated the MP3 player.
As Andy notes, serial comms is hard to avoid. Even products that doesn't need a serial port normally makes use of one just to be able to be programmed or for emitting debug information or similar.
See I've been doing projects like Temperature Sensor and Regulator, Security Lock Code, Data Acquisition System and projects like these so i have never been Serial Communication consequently not good knowledge of it but i do have some basic knowledge.. I think you all are trying to pull my leg, you've been insulting me Isn't it?
I gave you a link to the Device Database Parametric Search - all you had to do was click it, and you could easily have found chips with 2 UARTs and all your other requirements.
Did you do that? No - you just asked people to tell you chips.
If you want people to believe that you are actually interested in doing some work yourself, then you need to demonstrate it!
Look, buddy, if you came over here to get some "respect" - you are invited to leave right NOW. People here are interested in helping you if you actually help them to help you! Step 1: Follow their advise!
See I've been doing projects like Temperature Sensor and Regulator, Security Lock Code, Data Acquisition System doing? copying from the net? actually designing hardware? actually designing software?
If you want help show where you are, "I have" NOT "I need".
e.g. a code snippet can show better than a thousand words what you (do not) know.
Giving you "sample code" will just lead to frustration on both sides.
Surely you cannot accuse of me copying my projects from net, It's me who knows how much dedicated efforts and sleepless night i spend for my projects.
It seems that the only thing which made you all lunatic at me was me asking you for the sample codes and i also gave u a reason for that.
But nevertheless, can't we now just get back to the basics. I wasn't here for a duel with you all. Vehicle Tracking System is my BTech project and is dearly close to me. All I want is full support from your side. Because I know the deeper i go into the project, the more tedious it would be going to be. All you tech savvy people with great application oriented knowledge Pls be with me then.
No, it's the way that you totally ignored all suggestions, and showed no evidence of having done any work at all of your own!
"can't we now just get back to the basics"
OK - These are the things that you need to do now:
1. You need to use the database search to find some potential candidate processors that meet your needs (including the 2 UARTs). If you then need some help selecting from the candidates, ask specific questions (but be sure that you have studied the datasheets first).
2. You need to do some research into how to use the serial port on your chosen processor. As already noted, it really is an extremely common task - and, thus, there are plenty of tutorials, examples, etc readily available all over the web.
3. You need to do some research into handling the output from a GPS receiver. As already noted, NMEA is a long-established and widely-used format - so, again, there are plenty of tutorials, examples, etc readily available on the web.
4. You need to do some research into controlling modems using AT Commands. As already noted, this is a long-established and widely-used format - so, again, there are plenty of tutorials, examples, etc readily available on the web.
Note that this is the standard way to start any project - called the research phase - that's why it is important that you learn to do it yourself!
To do all this you will need to take advantage of resource such as:
* Internet search engines - such as Google;
* Manufacturer's websites - including this one - where you will find technical documentation, datasheets, application notes, reference designs, examples, etc, etc. Be sure to make use of the 'Search' facility on these websites...
* Your college library - where you will find books on programming, etc
"I wasn't here for a duel with you all"
So stop fighting, and start working! Show some evidence that you have done some work on this!
Here are some links to get you started: www.8052.com/.../160143 http://www.keil.com/download/ http://www.keil.com/books http://www.8052.com/faqs www.keil.com/.../search.asp
Your project requires 2 UARTs for its basic operation - so these will be dedicated to the GPS and GSM.
You also need to think about how you will monitor and debug your project. A "spare" UART can be extremely useful - some would even say invaluable - for this.
So think carefully before limiting yourself with only 2 UARTs - there are plenty of chips with 3 (and more!) UARTs...
You already have the link to identify such chips...
Thank you, I went through the link to identify the chips. As I am keen on working with 8051 family. I came across AT 89C51RE2. It had features which suites me well.There is no MCU with 3 UARTS(in 8051 family). Also 89C51RE2 doesnt have a feature called as " ON CHIP DEBUG" ....What exactly is on chip debug. What is the difference between ISP(In System Programming) and IAC(In Application Programming)
In-system programming means that you can download new firmware to the chip without desoldering the chip.
You sometimes have dedicated pins, and sometimes have pins with multiple function. You might for example have a SPI interface that is "normal" SPI when the processor is running, but is a programming interface when the reset signal is active.
In-application programming means that your own application can directly or indirectly reprogram some parts of the flash contents. You might for example be able to write new code to XDATA and this is aliased with flash memory.
By the way - why do you say no 8051 chip exists with 3 UART? What about Dallas DS80C400?
Yes I know about DS80C400 having 3 UARTS but in the previous thread forgot to metion 3 UARTS + ISP. NO MCU with 3 UARTS + ISP.
Also Pls help me with what is called as ON CHIP DEBUG
Please note the difference between a "thread" and a "post":
A "post" is a single messge by a single author;
A "thread" is a collection of related posts - usually from different authors.