找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1259|回复: 8
打印 上一主题 下一主题
收起左侧

我的单片机程序读不出来GPS经纬度信息,如何调试?

[复制链接]
跳转到指定楼层
楼主
ID:1065398 发表于 2023-3-20 22:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请问有没有大佬对GPS模块熟悉的啊?可以帮我看看为什么我的程序读不出来GPS经纬度信息吗?
我用的是stm32f103c8t6做主控,GPS选的是ublox-NEO-6m,需要把经纬度显示在OLED屏幕上面,但是死活读不出来数据。
跪求!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:401564 发表于 2023-3-20 23:31 | 只看该作者
求知识不丢人,不用跪
主要还是要看GPS的数据输出协议是什么,只要是NMEA0183 协议,不管你是什么GPS模块,它程序基本就是通用的
回复

使用道具 举报

板凳
ID:384109 发表于 2023-3-21 07:55 | 只看该作者
在室内没有延长天线的话没法定位的
回复

使用道具 举报

地板
ID:1065084 发表于 2023-3-21 08:45 | 只看该作者
gps模块都配有上位机软件,写一个简单的程序 将gps输出的信息通过另一个串口转发到电脑,第一看下数据格式是不是有问题,第二用上位机软件解算看搜星状态定位状态。

如果转发信息乱码 直接将gps模块接到电脑上,看数据格式再次解算。

debug的方法都是逐渐缩减变量范围,而且一般都是硬件优先于软件,比如检查供电电压 纹波之类的。

当然写程序也一样每个模块都是先写测试程序模块再逐步增加并测试功能,注意写轮子的时候一定注意入参出参,而且每个模块的都做历史备份,即使出问题了能迅速定位故障点
回复

使用道具 举报

5#
ID:291668 发表于 2023-3-21 09:28 | 只看该作者
一般先检查硬件问题,如果正常了再查看程序部分。程序也是分步检查。先看OLED是否正常显示。在看GPS模块输出是否正常。(对应的串口通讯),在看数据解析是否正常。串口的波特率设置,数据位,校验位,停止位等等。首先检查通讯链路。
回复

使用道具 举报

6#
ID:1034262 发表于 2023-3-21 09:56 | 只看该作者
单片机不用读GPS模块的,只需要用串口接收GPS模块发出的报文即可,非常简单,就是一个串口接收程序而已!然后将你要显示的内容显示到OLED屏上。
回复

使用道具 举报

7#
ID:807182 发表于 2023-3-21 10:44 | 只看该作者
你说的这个GPS模块是串口通信的,先确定模块没问题,其次用单片机写一个串口的中断函数,把数据接收过来,最终在做数据处理,把自己想要的数据取出来,然后在考虑显示在oled上
回复

使用道具 举报

8#
ID:139866 发表于 2023-3-22 10:34 | 只看该作者
真实的位置信息就是你读的那个,对照百度地图之类的查看是肯定对不上的,不然导弹直接照地图设置坐标算了
回复

使用道具 举报

9#
ID:748788 发表于 2023-3-22 10:57 | 只看该作者
GPS模块是通过串口输出数据的,并不需要你去读。要想知道模块好坏,接串口助手之类的工具,设置波特率,正常的话就能收到数据
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表