• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 汽車電子 > 設計應用 > 基于ATmega16的GPS經緯度數據接收系統

    基于ATmega16的GPS經緯度數據接收系統

    作者: 時間:2009-12-03 來源:網絡 收藏

    2 與M12模塊的接口程序設計
    系統使用的串行口向M12模塊發出控制指令和接收定位信息。M12模塊支持。Motorola二進制格式和NMEA0183格式兩種數據輸出模式。在Motorola二進制模式下,M12以9600bps的速率輸出數據和接收指令;在NMEA0183,M12以4800bps的速率輸出數據和接收指令。默認狀態下,M12模塊工作在Motorola二進制模式下。為了獲取更高的數據傳輸速度,這里使用M12模塊默認的工作模式,即Motorola二進制模式。在該模式下,串行數據傳輸格式為:8位數據位,1位停止位,無奇偶校驗和硬件流控制。
    以通過向M12發送AT指令的方式對其進行控制。Motorola的AT I/O指令一共有69條,其中M12模塊所支持的指令有51條。利用這些指令可以很方便的對M12模塊進行日期時間設定、自定義坐標設定和定位信息讀取等操作。在本系統中,只需要讀取M12模塊的定位信息,因此程序中只用到51條指令中的1條指令:
    @@EqmCCR>LF>
    該指令用于控制M12模塊輸出定位信息。其中“@@”是I/O指令的前綴;“Eq”是指令的關鍵字;“m”是M12模塊輸出(響應)信息模式選擇,其數值可以是0~255之間的整數,當“m”為0時,響應信息只輸出一次,當“m”為1時,響應信息每秒鐘輸出一次,當“m”為2時,響應信息每2 s輸出一次,如此類推,當“m”為255時,響應信息每255 s輸出一次;“C”是指令的校驗和(Checksum)數據;“CR>”是回車符;“LF>”是換行符。為了便于采集定位數據,將“m”的數值設置為0,使M12模塊每接收一次指令就回復一次定位數據。
    M12模塊在默認狀態下只能接受以Motorola二進制形式輸入的指令。所謂的Motorola二進制形式是指將指令的前綴、關鍵字和后綴(回車和換行)變換成相應的ASCII碼后,加上模式“m”與校驗和“C”組合成的二進制指令代碼。系統中所用到的

    本文引用地址:http://www.czjhyjcfj.com/article/197785.htm

    ATmega16首先請求M12模塊輸出定位數據(向M12模塊發出指令“@@EqmC”),然后等待M12模塊回送數據。當M12模塊回送數據時,ATmega16首先做出判斷,確認其收到的是預期的定位信息,然后將定位信息(經緯度數據)截取下來,整理成可供顯示數據信息后在LCD上顯示經緯度數據,最后將串口的接收緩沖區清空,以免下次接收信息時出錯。由于M12模塊在1 s之內只能響應一條指令,所以接收機的數據信息最快1 s更新一次。


    3 定位精度測試
    為了測試M12模塊的定位精度,在華南農業大學工程學院土槽實驗室的基準點(坐標為:東經113°20.538541',北緯23°09.581834')進行試驗,用PC機連接M12開發板進行經緯度數據采集,持續運行約50 min,采集到3125組經緯度數據。通過對實測數據進行分析,M12模塊的單機靜態定位誤差≤7.81 m,符合其用戶手冊上所標的無SA政策下25 m的精度范圍。


    4 結束語
    從降低成本的角度出發,基于ATmega 16的經緯度數據系統采用單機靜態定位技術進行地理定位,這種定位技術精度不高,但易于推廣普及,可用于普通民用地理定位領域。該系統也通過更換精度更高的模塊或采用差分定位技術提高定位精度后用于專業定位導航領域。


    上一頁 1 2 下一頁

    關鍵詞: ATmega GPS 16 數據接收

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 富蕴县| 涟源市| 武定县| 绥棱县| 洪湖市| 泊头市| 屏南县| 营山县| 兴山县| 江达县| 津市市| 商洛市| 连平县| 图木舒克市| 郎溪县| 澳门| 双桥区| 枝江市| 宁夏| 车险| 滨州市| 长子县| 外汇| 东乡县| 中江县| 东城区| 榆林市| 新余市| 磴口县| 桐乡市| 康定县| 子洲县| 搜索| 阜宁县| 塘沽区| 绥宁县| 清水河县| 浦江县| 道孚县| 林口县| 永泰县|