朱葛亮 发表于 2015-4-8 08:54:56

求问GPS问题。。。求大神讲解。。。

我购买了这个GPS模块
http://item.taobao.com/item.htm?spm=a1z0k.7385961.1997985097.d4918997.XjdXA1&id=13198221647&_u=8p7dcnj6ecc
没用示例中的GSM模块,想直接把GPS数据从串口监视器上显示出来,根据他示例的代码改了一下。。但是没反应。。求教。。
Q526970969



#include <SoftwareSerial.h>
//#include "inetGSM.h"

#include <string.h>

#include <TinyGPS.h>

/* This sample code demonstrates the normal use of a TinyGPS object.
   It requires the use of SoftwareSerial, and assumes that you have a
   4800-baud serial GPS device hooked up on pins 3(rx) and 4(tx).
*/

TinyGPS gps;

#define ledpin 13
#define pwrkey 27



int error;
boolean started=false;
bool newData = false;

char gps_year;
char gps_mon;
char gps_day;
char gps_hour;
char gps_min;
char gps_sec;


char gps_lon;
char gps_lat;

char gps_sms;


void setup()
{

//software power sim900 up

Serial.begin(115200);
Serial2.begin(9600);

delay(10000);

}

void loop()
{

check_gps();

}




char check_gps()
{
newData=false;
unsigned long chars;
unsigned short sentences, failed;

// For one second we parse GPS data and report some key values
for (unsigned long start = millis(); millis() - start < 1000;)
{
    while (Serial2.available())
    {
      char c = Serial2.read();
      Serial.write(c); // uncomment this line if you want to see the GPS data flowing
      if (gps.encode(c)) // Did a new valid sentence come in?
      newData = true;
      Serial.println("GPS READY!");
    }
}

if (newData)
{
    float flat, flon;
    unsigned long age;
    int _year;
    byte _month, _day,_hour,_minute,_second,_hundredths;
    gps.f_get_position(&flat, &flon, &age);
    gps.crack_datetime(&_year,&_month,&_day,&_hour,&_minute,&_second,&_hundredths,&age);
    flat == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flat, 6;
    flon == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flon, 6;
    dtostrf(flat, 11, 6, gps_lat);
    dtostrf(flon, 10, 6, gps_lon);
    Serial.println("lat:"); //latitude
    Serial.println(gps_lat);
    Serial.println("lon:");
    Serial.println(gps_lon);//longitude
   }
}

shihaipeng04 发表于 2015-4-8 09:57:04

这个模块没研究过。但是好像 gps天线的4个线 就是 vcc gnd rx tx 直接就输出文字来的,读出来就ok了。

suoma 发表于 2015-4-8 10:36:36

   模块的名字是什么?

suoma 发表于 2015-4-8 10:36:56

         看一下接线图?

suoma 发表于 2015-4-8 10:37:51

我也做过,遇到过同样问题,用这个ATK-NEO-6M GPS模块

朱葛亮 发表于 2015-4-13 09:14:58

shihaipeng04 发表于 2015-4-8 09:57 static/image/common/back.gif
这个模块没研究过。但是好像 gps天线的4个线 就是 vcc gnd rx tx 直接就输出文字来的,读出来就ok了。

我就是这么写的代码。。为神马串口监视器什么都没有?。。

komoya 发表于 2015-4-13 10:45:00

不用SoftwareSerial库,直接连到arduino的RX/TX试试看,有没有输出。

遇到多次这样的问题,要么是自己线接错了,RX/TX反了,要么就是模块供电有问题。多试试看呢,

mep 发表于 2015-4-13 12:21:10

可能主要是跳线问题,你仔细核对下跳线,多尝试
页: [1]
查看完整版本: 求问GPS问题。。。求大神讲解。。。