标题:
51单片机收不到gps传送的数据求解
[打印本页]
作者:
grizzly
时间:
2019-4-9 20:19
标题:
51单片机收不到gps传送的数据求解
我把51单片机和gps模块连接,两个都是UART通信,RXD-TXD,TXD-RXD,GND-GND,但是51收不到gps的数据,简而言之是进不去串口中断。经试验证明gps确实在源源不断地发送数据;通过电脑串口助手向51发送数据也能成功进入中断。
可能是什么原因?谢谢各位
作者:
小猫要吃鱼
时间:
2019-4-9 22:31
原因很多:
1、晶振选择的对吗?
2、单片机程序对吗?
3、数据解析是不是正确?
作者:
devcang
时间:
2019-4-9 22:37
相关的代码,是怎样的。
GPS 的tx连接到MCU的rx,就可以。。。。。注意波特率要相同的。
~~~~~~~~~~~~~~~~~~~~
作者:
jakcypater
时间:
2019-4-29 16:15
楼上说的对,单片机只需要接收GPS通过串口发过来的数据就行了,所以只需要接gps的供电,GPS的tx接单片机的RX,51串口1的RX是P3.0。
void Uart_Init() //串口初始化,11.0592MHz,9600bps
{
SCON = 0X50; //UART方式1;8位UART
REN = 1; //允许串行口接收数据
PCON = 0x00; //SMOD=0;波特率不加倍
TMOD = 0x20; //T1方式2,用于产生波特率
TH1 = 0xFD; //装初值
TL1 = 0xFD;
TR1 = 1; //启动定时器1
EA = 1; //打开全局中断控制
ES = 1; //打开串行口中断
}
复制代码
作者:
jakcypater
时间:
2019-5-2 12:55
我前段时间也发现了这个问题,后来发现是GPS波特率跟单片机串口波特率不匹配。
作者:
sirius08
时间:
2019-5-2 16:35
依据GPS模块的波特率选择单片机的晶振,以匹配串口波特率。如果硬件没有问题就需要检查程序了。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1