<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于單片機的GPS經(jīng)緯度數(shù)據(jù)接收系統(tǒng)

          基于單片機的GPS經(jīng)緯度數(shù)據(jù)接收系統(tǒng)

          作者: 時間:2012-01-14 來源:網(wǎng)絡 收藏
          0 引 言
          GPS(全球定位系統(tǒng))是為海上、陸地和空中各種運輸工具和移動設備的導航和定位而開發(fā)的,具有高精度、全天候、全球性和點間無需通視等優(yōu)點,使測量技術發(fā)生了質的飛躍。GPS技術引入我國后,特別是美國取消SA政策后的這幾年發(fā)展十分迅速。目前,GPS已被廣泛應用在工程測量、地理測繪、交通運輸和軍事等諸多領域,取得了明顯的社會和經(jīng)濟效益,發(fā)展前景十分廣闊。在GPS的行業(yè)應用中,是最基本的設備。目前的具有智能化和可擴展性不斷增強的發(fā)展趨勢,表現(xiàn)為內(nèi)嵌的MCU性能越來越強大,外圍接口越來越豐富,但軟硬件成本不斷上升,減緩了GPS接收系統(tǒng)平民化的趨勢。本文介紹一種基于AVR單片機ATmega16和Motorola M12 Oncore模塊的GPS


          1 系統(tǒng)的硬件設計
          系統(tǒng)由ATmega16、M12模塊、LCD顯示器和一些外圍電路組成,系統(tǒng)的硬件結構如圖1所示。ATmega16具有1個功能完整的異步串行通信接口(UART),在直流5V供電時,其I/O操作電壓范圍約為0~5V;M12模塊提供一個用于輸入控制信息和輸出定位與狀態(tài)信息串行通信接口,在直流3V供電時,其I/O電平符合TTL電平范圍,為0~3V。因此,可以將ATmega16串行接口經(jīng)電平轉換電路轉接后與M12模塊的串行口相連,進行異步串行數(shù)據(jù)交換。系統(tǒng)采用一塊16×2字符型LCD顯示經(jīng)緯度信息。系統(tǒng)中的ATmega16和LCD采用直流5V供電,5V電源經(jīng)過由三端穩(wěn)壓芯片LM317組成的穩(wěn)壓電路將電壓轉換成3V后給M12模塊供電。

          1.1 ATmega16與M12模塊的硬件接口
          由于ATmega16和M12模塊的I/O操作電壓范圍不相同,所以兩者的串行口之間需經(jīng)過電平轉換才能確保穩(wěn)定通信,其電平轉換電路如圖2所示。

          這里采用光電耦合器件TLP521進行5V和3V之間的電平轉換,以增強抗干擾能力。ATmega16的I/O驅動能力較強(最大輸出40mA電流),可以直接驅動TLP521。M12模塊的I/O驅動能力較弱,需加一級驅動緩沖器才能驅動TLP521,這里使用7406反相驅動緩沖器。
          1.2 ATmega16與LCD的硬件接口
          系統(tǒng)中采用基于HD44780液晶控制芯片的16×2字符型LCD,該器件內(nèi)置了字符產(chǎn)生器,能顯示192個常用字符(包括阿拉伯數(shù)字和大小寫英文字母)和16個用戶自定義字符,它與ATmega16的接口如圖3所示。

          HD44780的數(shù)據(jù)總線DB7~DB0與ATmega16的PA7~PA0相接,RS、R/W和EN分別與單片機的PD3、PD4和PD5相連。利用ATmega16的I/O口控制LCD進行指令和數(shù)據(jù)輸入,正確地顯示出經(jīng)緯度數(shù)據(jù)。


          上一頁 1 2 下一頁

          評論


          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();