我正在使用STM32 Nucleo-F334R8 板和来自 Adafruit 的 Ultimate GPS Breakout V3。
我要做的是使用串行通信在我的计算机上使用Putty读取 GPS 数据。
最后,我想在我的 F334R8 板上获取 GPS 数据,然后通过串行通信将其发送到RaspberryPi 3。到目前为止,我遇到了很多麻烦,我在Mbed Compiler Online上进行编码,每次我想找到解决方案时,情况都会变得更糟。
有人对我有解决方案吗?
编辑:好的,谢谢!我还尝试通过串行通信将接收到的数据发送到 Raspberry Pi 3。我已将 D15 和 D14 连接到 Raspberry 的 TX 和 RX,但是当我使用时:
#include "mbed.h"
#include "MTK3339.h"
static int waitData = 0;
static MTK3339 gps(D8, D2);
static float latitude = 0;
static float longitude = 0;
Serial rasp(D15, D14); // D15 = RX, D14 = TX
static void dataAvailable() {
waitData |= gps.getAvailableDataType();
}
int main(void) {
gps.start(&dataAvailable, (MTK3339::NmeaGga|MTK3339::NmeaVtg));
while(1) {
while(waitData == 0);
if ((waitData & MTK3339::NmeaGga) != 0) {
waitData &= ~(MTK3339::NmeaGga);
latitude = gps.getLatitudeAsDegrees();
longitude = gps.getLongitudeAsDegrees();
//printf("%f,%f\n", gps.getLatitudeAsDegrees(), gps.getLongitudeAsDegrees());
//printf("lat = %f, long = %f",latitude, longitude);
rasp.printf("%f\n", latitude);
}
waitData &= (MTK3339::NmeaGga|MTK3339::NmeaVtg);
}
}
但它不起作用。我在 Raspberry 控制台上没有收到任何内容。有人可以帮忙吗?