0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何将Arduino的GPS模块连接和使用

454398 来源:网络整理 作者:网络整理 2019-11-26 15:26 次阅读

步骤1:电路连接

BLACK线到Ultimate板的Gnd连接

RED线到Ultimate板的5V连接

BLUE线到Ultimate板的RxD连接

GREEN线到Ultimate板的TxD连接

WHITE线到Ultimate板的PPS连接

根据我们的代码

connect

RXPin电路板到digitalPin 4,

电路板到digitalPin 3的TXPin

Vcc到5v,GND到GND

步骤2:编程

首先需要一个库:

您可以从此处下载

arduino中安装库之后,打开 DeviceExample.ino 来自示例》 tinyGPS ++

或简单地复制以下代码。

#include

#include

/*

* https://alaspuresujay.github.io/

* follow me on instagram https://www.instagram.com/alaspuresujay

*

This sample sketch demonstrates the normal use of a TinyGPS++ (TinyGPSPlus) object.

It requires the use of SoftwareSerial, and assumes that you have a

9600-baud serial GPS device hooked up on pins 4(rx) and 3(tx)。

*/

static const int RXPin = 4, TXPin = 3;

static const uint32_t GPSBaud = 9600;

// The TinyGPS++ object

TinyGPSPlus gps;

// The serial connection to the GPS device

SoftwareSerial ss(RXPin, TXPin);

void setup()

{

Serial.begin(115200);

ss.begin(GPSBaud);

Serial.println(F(“DeviceExample.ino”));

Serial.println(F(“A simple demonstration of TinyGPS++ with an attached GPS module”));

Serial.print(F(“Testing TinyGPS++ library v. ”)); Serial.println(TinyGPSPlus::libraryVersion());

Serial.println(F(“by Sujay Alaspure”));

Serial.println();

}

void loop()

{

// This sketch displays information every time a new sentence is correctly encoded.

while (ss.available() 》 0)

if (gps.encode(ss.read()))

displayInfo();

if (millis() 》 5000 && gps.charsProcessed() 《 10)

{

Serial.println(F(“No GPS detected: check wiring.”));

while(true);

}

}

void displayInfo()

{

float latt=gps.location.lat();

Serial.print(gps.location.lat(),10);

Serial.print(F(“,”));

Serial.print(gps.location.lng(), 10);

Serial.print(“ ”);

Serial.print(latt,10);

Serial.print(F(“Location: ”));

if (gps.location.isValid())

{

Serial.print(gps.location.lat(), 6);

Serial.print(F(“,”));

Serial.print(gps.location.lng(), 6);

}

else

{

Serial.print(F(“INVALID”));

}

Serial.print(F(“ Date/Time: ”));

if (gps.date.isValid())

{

Serial.print(gps.date.month());

Serial.print(F(“/”));

Serial.print(gps.date.day());

Serial.print(F(“/”));

Serial.print(gps.date.year());

}

else

{

Serial.print(F(“INVALID”));

}

Serial.print(F(“ ”));

if (gps.time.isValid())

{

if (gps.time.hour() 《 10) Serial.print(F(“0”));

Serial.print(gps.time.hour());

Serial.print(F(“:”));

if (gps.time.minute() 《 10) Serial.print(F(“0”));

Serial.print(gps.time.minute());

Serial.print(F(“:”));

if (gps.time.second() 《 10) Serial.print(F(“0”));

Serial.print(gps.time.second());

Serial.print(F(“。”));

if (gps.time.centisecond() 《 10) Serial.print(F(“0”));

Serial.print(gps.time.centisecond());

}

else

{

Serial.print(F(“INVALID”));

}

Serial.println();

}

步骤3:注意:

请将GPS模块放在房屋外面或窗户旁边。

廉价的GPS模块例如VK16E的1pps信号精度不高。

您可能会发现,与许多使用贴片天线的GPS模块一样,GPS模块可能需要放在窗户旁边或外面。 GPS信号的强度似乎会根据位置和周围建筑物等的不同而有很大差异。根据您的棚屋布局和接地情况,离极限套件越远,GPS模块也可能会受益。因此,您可能需要使用几米长的电线将GPS模块连接到套件。我建议在屏幕连接到Gnd的情况下使用屏蔽电缆。 4)

该模块具有绿色LED(如上图所示),在GPS模块搜索卫星锁定时该LED持续亮起,并且在锁定时以每秒1脉冲的频率闪烁。/strong》

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • GPS模块
    +关注

    关注

    0

    文章

    89

    浏览量

    16719
  • Arduino
    +关注

    关注

    188

    文章

    6479

    浏览量

    188656
收藏 人收藏

    相关推荐

    如何将项目从IAR迁移到Embedded Studio

    本文描述如何将IAR EWARM项目迁移到SEGGER Embedded Studio(简称SES)中。
    的头像 发表于 02-25 17:11 158次阅读
    <b class='flag-5'>如何将</b>项目从IAR迁移到Embedded Studio

    请问如何将DLP lightcrafter连接成为普通的投影仪使用?

    请问如何将DLP lightcrafter连接成为普通的投影仪使用? 通过mini HDMI连接到我的电脑后,电脑能显示一个叫LCr 4500的屏幕,但是lightcrafter不能显示屏幕内容,请问怎么操作,谢谢。
    发表于 02-21 09:43

    如何将ADS1278通过SPI与处理器连接?

    在设计电路时,由于采用ADS1278进行8通道同步采样,通过SPI接口与ARM微处理器的SPI接口进行连接,而ADS1278工作在Discrete模式下,请问专家如何将ADS1278通过SPI与处理器连接?此时DOUT1-8如
    发表于 02-07 07:31

    CW32模块使用 NEO-6M GPS模块

    NEO—6M/7M GPS模块,具有高灵敏度、低功耗、小型化、高追踪灵敏度,大大扩大了其定位的覆盖面,在普通GPS接收模块不能定位的地方,如狭窄都市天空下、密集的丛林环境,NEO-6M
    的头像 发表于 01-23 13:06 212次阅读
    CW32<b class='flag-5'>模块</b>使用 NEO-6M <b class='flag-5'>GPS</b><b class='flag-5'>模块</b>

    如何使用Arduino实现CAN总线通信呢

    ,这些是常见的CAN控制器芯片,可以通过SPI接口与Arduino通信。 CAN总线转接板 :用于CAN控制器芯片与Arduino连接。 CAN总线终端电阻 :通常需要在
    的头像 发表于 12-23 09:06 810次阅读

    Arduino采集雷达模块数据与串口绘图

    Arduino采集雷达模块数据与串口绘图
    的头像 发表于 12-14 11:44 405次阅读
    <b class='flag-5'>Arduino</b>采集雷达<b class='flag-5'>模块</b>数据与串口绘图

    如何将ADC10D1500与Virtex-7fpga评估板连接,用哪个连接器?

    如何将ADC10D1500与Virtex-7fpga评估板连接,用哪个连接器?
    发表于 12-05 06:49

    基于Arduino的串口通信项目

    Arduino Mega等。 USB数据线 :用于Arduino开发板连接到计算机。 串口设备 :可以是另一个Arduino开发板、传感
    的头像 发表于 11-22 09:24 1097次阅读

    如何使用Arduino实现CAN总线通信

    可以通过SPI接口与Arduino通信。 CAN总线转接板 :用于CAN总线模块Arduino连接。 跳线 :用于
    的头像 发表于 11-12 10:09 1753次阅读

    如何将LMH34400评估模块设置成电流输入模式?

    LMH34400 评估模块手册里注明默认电压输入模式,如何设置成电流输入模式没有说明,烦请说明下如何将LMH34400 评估模块设置成电流输入模式,谢谢。
    发表于 08-01 07:35

    如何将ESP2866更新到正确的AT Command固件?

    /mega-wifi-r3-atmega2560-esp8266-flash-32mb-usb-ttl-ch340g-micro-usb.html 在通电时,它会创建一个 WiFi AP,而不会被告知这样做(Arduino 草图什么都不做)。 我猜它在ESP8266上安装了一些固件,这不是标准的AT命令固件。
    发表于 07-19 08:37

    使用ESP8266arduino连接到thinkspeak云,无法将其连接到任何网页,为什么?

    我正在尝试使用 ESP8266 arduino 连接到 thinkspeak 云。所以我能够 esp 模块
    发表于 07-16 07:43

    支持 GPS,基于 Arduino 的墨水屏时钟(文末可下载完整文件)

    用内部的 8Mhz 晶体。 先做这一步很重要,因为 32K 晶体取代任何现有晶体。如果你不改变这些内熔丝,芯片会变得没有反应,直到你重新连接一个 8 或16Mhz 的振荡器。 Arduino
    发表于 05-31 11:34

    如何将CYKIT-028 TFT模块与Raspberry Pi和ESP32微控制器结合使用?

    我目前正在探索如何将 CYKIT-028 TFT 模块与 Raspberry Pi 和 ESP32 微控制器结合使用。 不过,在选择集成开发环境(IDE)和使用 PSOC Creator 的必要性
    发表于 05-21 07:36

    如何将数组的的字符重新连接起来保存?

    TEMP[2]依次存入,直到4存入TEMP[7], 问题是:如何将数组的的字符重新连接起来保存?如何定义新的变量str?使str=\"ABCD1234\"?
    发表于 04-16 07:39