找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3157|回復: 5
打印 上一主題 下一主題
收起左側

51單片機收不到gps傳送的數(shù)據(jù)求解

[復制鏈接]
跳轉到指定樓層
樓主
ID:398663 發(fā)表于 2019-4-9 20:19 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我把51單片機和gps模塊連接,兩個都是UART通信,RXD-TXD,TXD-RXD,GND-GND,但是51收不到gps的數(shù)據(jù),簡而言之是進不去串口中斷。經(jīng)試驗證明gps確實在源源不斷地發(fā)送數(shù)據(jù);通過電腦串口助手向51發(fā)送數(shù)據(jù)也能成功進入中斷。
可能是什么原因?謝謝各位
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:497670 發(fā)表于 2019-4-9 22:31 | 只看該作者
原因很多:
1、晶振選擇的對嗎?
2、單片機程序對嗎?
3、數(shù)據(jù)解析是不是正確?
回復

使用道具 舉報

板凳
ID:277550 發(fā)表于 2019-4-9 22:37 | 只看該作者
相關的代碼,是怎樣的。

GPS 的tx連接到MCU的rx,就可以。。。。。注意波特率要相同的。

~~~~~~~~~~~~~~~~~~~~
回復

使用道具 舉報

地板
ID:523982 發(fā)表于 2019-4-29 16:15 | 只看該作者
樓上說的對,單片機只需要接收GPS通過串口發(fā)過來的數(shù)據(jù)就行了,所以只需要接gps的供電,GPS的tx接單片機的RX,51串口1的RX是P3.0。
  1. void Uart_Init()        //串口初始化,11.0592MHz,9600bps                                                            
  2. {
  3.    

  4.         SCON = 0X50;  //UART方式1;8位UART
  5.         REN  = 1;     //允許串行口接收數(shù)據(jù)
  6.         PCON = 0x00;  //SMOD=0;波特率不加倍
  7.         TMOD = 0x20;  //T1方式2,用于產(chǎn)生波特率
  8.         TH1  = 0xFD;  //裝初值
  9.         TL1  = 0xFD;
  10.         TR1  = 1;     //啟動定時器1
  11.         EA   = 1;     //打開全局中斷控制
  12.         ES   = 1;     //打開串行口中斷       
  13. }
復制代碼
回復

使用道具 舉報

5#
ID:523982 發(fā)表于 2019-5-2 12:55 | 只看該作者
我前段時間也發(fā)現(xiàn)了這個問題,后來發(fā)現(xiàn)是GPS波特率跟單片機串口波特率不匹配。
回復

使用道具 舉報

6#
ID:351739 發(fā)表于 2019-5-2 16:35 | 只看該作者
依據(jù)GPS模塊的波特率選擇單片機的晶振,以匹配串口波特率。如果硬件沒有問題就需要檢查程序了。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表