【发布时间】:2018-04-10 22:36:13
【问题描述】:
我正在使用带有 NEO6MV2 GPS 模块的 NodeMCU。
代码:
#include <SoftwareSerial.h>
#include <TinyGPS.h>
long lati,lon; // create variable for latitude and longitude object
static const int RXPin = 5; // (RX GPS -> D1 MCU)
static const int TXPin = 4; // (TX GPS -> D2 MCU)
SoftwareSerial gpsSerial (RXPin, TXPin);
TinyGPS gps; // create gps object
void setup() {
Serial.begin(9600); // connect serial
gpsSerial.begin(4800); // connect gps sensor
}
int i=0;
void loop() {
Serial.println("\nTest");
Serial.println(i);
delay(500);
while(gpsSerial.available()) {
// check for gps data
if(gps.encode(gpsSerial.read())) {
// encode gps data
gps.get_position(&lati, &lon); // get latitude and longitude
// display position
Serial.print("Position: ");
Serial.print("lat: ");Serial.print(lati);Serial.print(" "); // print latitude
Serial.print("lon: ");Serial.println(lon); // print longitude
}
}
i++;
}
对于知道这一点的人,我的 GPS 模块是否正确连接到我的 NodeMCU(TX、RX 引脚),即 TX(GPS) -> D2(MCU) 和 RX(GPS) -> D1(MCU)?是否建议使用其他引脚?
假设我的引脚连接正确 - 而且我知道 GPS 模块本身工作正常 - 为什么我的串行监视器不打印纬度和经度?
我已经阅读了很多教程、各种库、YouTube 视频等,但似乎没有任何东西可以将 NodeMCU 直接连接到 GPS 模块并在串行监视器上打印以及任何地方的可读代码。
提前致谢!
【问题讨论】: