基于MAX3100和OLED的GPS定位系統設計
在MAX3100中定義一個8位移位的子程序,C語言代碼如下:本文引用地址:http://www.104case.com/article/157132.htm
這個子程序的任務就是通過對MAX3100的DIN和DOUT引腳進行8次移位操作,來完成兩個任務,首先是接收部分,通過初始化配置后,經過RX接收GPS模塊的NEMA語句,送入接收緩沖區。接下來是發送部分,接收SPI數據并進行發送緩沖,通過TX按異步串行發送出去。
接收NEMA語句時首先從行首標志“$”開始,在沒有進一步處理之前,NEMA語句是一長串字節流,這些信息在經過分類提取之前是無法加以利用的,因此,必須通過軟件程序將各個字段的信息從字節流中提取出來,將其轉化成緯度、經度、高度、速度、日期、時間、航向、衛星狀況等定位信息。其中接收NEMA語句的C語言代碼如下:
在OLED顯示屏上某一位置顯示某一定位信息,是通過軟件設置來完成的,其中Row代表所要顯示位置的開始行,Column代表所要顯示位置的開始列,a代表在已經建立的漢字庫和西文字庫中的序列號,C語言代碼如下:
![]() |
![]() |
5 結束語
本系統結合MAX3100高效的異步收發通信優點,吸取了其功耗低、體積小、傳輸快以及OLED顯示屏超輕薄、高亮度、廣視角、自發光、響應速度快、適應溫度范圍寬、抗震強、功耗低等優點。設計開發出由電池供電的便攜式GPS定位系統,已經成功應用到產品中,取得很好的效果。
評論