WINDOWS MOBILE中的GPS開發

來源:互聯網
上載者:User
轉自: http://navpad.blog.sohu.com/74759298.html
2007-12-27 | WINDOWS MOBILE中的GPS開發


WINDOWS
MOBILE
中開發簡單的
GPS
應用
 

  • Windows CE 4.0
    之前

    • 簡單的
      RS232
      操作,收發
      AT
      指令
  • Windows CE 5.0
    及以後

    • GPS Intermediate
      Driver (GPS
      中間驅動程式,簡稱
      GPSID
      ,或者
      GID)


 

GPS INTERMEDIATE
DRIVER (GPSID)
 

  • Windows Mobile
    5.0
    開始引入的新的
    GPS
    介面,對之前的串口操作進行了封裝
  • 對於系統層:一個普通的驅動
  • 一個中介軟體插在系統與應用程式之間
  • 使用其它OEM提供的驅動程式與具體硬體通訊


 

MICROSOFT
為什麼推出
GPSID
 

  • 對於
    GPS
    裝置生產商

    • 可以和任意使用
      GPSID
      的應用程式無縫耦合
  • 對於應用程式供應商
    • 可以和任意支援
      GPSID

      GPS
      裝置整合


 

GPSID
帶來的便利
 

  • 沒有
    GPSID

    • 每一個應用程式獨佔一個
      GPS
      裝置
    • 應用程式通過訪問串口擷取GPS資訊
    • 通過調用CreateFile()擷取GPS通訊口的控制代碼
    • 反覆調用ReadFile()擷取GPS位置資訊
    • 自行解析NMEA
      183資訊
  • 有了
    GPSID

    • 多個應用程式可以同時訪問同一個
      GPS
      裝置
    • GPSID解析 NMEA
      183資訊
    • 提供友好的GPS介面如:GPSGetPosition()
    • 相容早先的檔案流操作


 

GPSID
的主要
API
函數
 

  • gpsapi.dll

    • GPSOpenDevice
    • GPSCloseDevice
    • GPSGetPosition
    • GPSGetDeviceState
  • coredll.dll
    • CreateEvent
    • CloseHandle
    • WaitForSingleObject
    • WaitForMultipleObjects
    • EventModify


 

如何使用
GPSID
 

  • 建立一個或兩個
    Windows CE
    事件對象
  • 建立一個和GPS硬體裝置的串連
  • 使用WaitForSingleObject()或WaitForMultipleObjects()處理事件通知
  • 重複調用第三步並調用GPSGetPosition()擷取GPS資訊
  • 應用程式的相應處理
  • 調用GPSCloseDevice()關閉裝置


 

WINDOWS
MOBILE 6 SDK
 

    • http://www.microsoft.com/downloads/details.aspx?familyid=06111a3a-a651-4745-88ef-3d48091a390b&displaylang=en


  • 安裝需求


 

WINDOWS
MOBILE 6 SDK
中的
DEVICE EMULATOR
2.0
 

  • 安裝
    Visual
    Studio 2005
    時會自動安裝
    Device Emulator 1.0
  • Windows Mobile
    6 SDK 的安裝程式會自動將隨 Visual Studio 2005 安裝的 Device
    Emulator 1.0 升級到 Device Emulator 2.0,即在“C[D]:/Program
    Files/Microsoft Device Emulator/1.0”目錄下的 1.0 版程式檔案將被
    2.0 版程式檔案所覆蓋


 

WINDOWS
MOBILE 6 SDK
中的
DEVICE EMULATOR
2.0


 

WINDOWS
MOBILE 6 SDK
中的
DEVICE EMULATOR
2.0


 

WINDOWS
MOBILE 6 SDK
中的
DEVICE EMULATOR
2.0


 

WINDOWS
MOBILE 6 SDK
中的
FAKE GPS
 

  • 如果你想開發一個運行在
    Windows Mobile
    系統的
    GPS
    應用程式,但是找不到
    GPS
    裝置用來調試,或者你在室內偵錯工具,
    GPS
    裝置接收不到衛星訊號,那
    Fake GPS
    正是你急需的工具了


 

  • GPSID 的所有設定資訊都儲存在註冊表中,可以通過修改註冊表來更改
    GPSID 的設定。其中有個一個設定,可以讓 GPSID 從一個包含
    NMEA 命令的 .txt 檔案讀取 GPS 資料,而不需要從 GPS 裝置讀取資料。Fake
    GPS 的工作原理就是修改註冊表的 GPSID 裝置,讓 
    GPSID 從一個文字檔讀取 GPS 資料。而對於我們開發的應用程式來說,跟訪問真實的裝置並沒有兩樣。


 

  • 在使用 Fake
    GPS 之前需要將它安裝到你 Windows Mobile 裝置上或者模擬器上,安裝檔案是
    FakeGPS.CAB。這裡我把 Fake GPS 安裝到 Windows Mobile 6 Standard
    的模擬器裡。安裝成功後在開始菜單中找到它並運行


 

安裝
FAKE GPS
 

  • 首先為
    Device
    Simulator
    設定一個共用目錄


 

安裝
FAKE GPS


 

安裝
FAKE GPS
 

  • 然後將
    Fake
    GPS
    的安裝檔案拷到共用目錄裡

    • 安裝檔案是位於
      D:/Program Files/Windows Mobile
      6 SDK/Tools/GPS

      FakeGPS.CAB


 

安裝
FAKE GPS


 

安裝
FAKE GPS


 

安裝
FAKE GPS


 

WINDOWS
MOBILE 6 SDK
中的
GPS
應用例執行個體
 

  • 位於
    D:/Program
    Files/Windows Mobile 6 SDK/Samples/PocketPC/CS/GPS
  • 用Visual Studio
    2005開啟
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.