【正文】
的處理,在地圖上用醒目的顏色顯示出來流程圖如下: 等待輸入STR710處理有效?LCD顯示有效?是是否否 圖 顯示流程圖 show the flow chart 南昌航空大學(xué)科技學(xué)院 2021 屆學(xué)士學(xué)位論文 24 6 系統(tǒng)的軟件設(shè)計(jì) 本系統(tǒng)的所有程序均采用 C++語言編寫,開發(fā)工具為 QT embed 。程序定義了許多類來分別管理各個(gè)模塊,通過對(duì)各個(gè)類的操作,來構(gòu)建整個(gè)程序框架。 程序整體結(jié)構(gòu)框圖 G P S 類+G P S D ri v e r * p G P S D ri v e rS t a S N R * p S t a S N RG P S I n f o* p G P S I n f oT im e rM a s t or+O p e ra t ion 1( )G P SD r iv e ri n t C O M f d 。i n t T im e rI d 。 / / 定時(shí)管理者+s e t C O M ( C O M _P A R A M amp。 C O M P a ra m )獲取 G P S 數(shù)據(jù)G P SP a r s e r+G e t D a t a ( amp。 G P S _D A T A G P S D a t a )+G e t D a t a ( amp。 G P S _S T A S N R G P S S t a S N R )解析 G P S 語句St a SN R+S e t D a t a ( c on s t G P S _S T A S N R amp。 G P S S t a S N R )顯示 G P S 衛(wèi)星信號(hào)強(qiáng)度G P SI n f o+S e t D a t a ( c on s t amp。 G P S _D A T A G P S D a t a )顯示 G P S 信息:時(shí)間,經(jīng)緯度,日期M A P _V I E W+S e t P os it ion ( amp。 G P S _D A T A G P S D a t a )C o n f igS e t M a p ( c on s t amp。 M A P _P A R A M M a p P a ra m )s e t C O M ( c on s t amp。 C O M _P A R A M C O M P a ra m )G e t O b j e c t ( G P S )G e t O b j e c t ( M a p )M A P+G e t C u rr M a p ( c on s t G P S _D A T A amp。 g p s d a t a , Q P ix m a p amp。 p ix m a p )+S e t M a p ( c on s t amp。 M A P _P A R A M M a p P a ra m )獲取定位點(diǎn)的背景地圖M a in T A BT im e rM a s t or / / 管理各個(gè)組件,像指令長(zhǎng)獲取坐標(biāo)后顯示 G I S+1+1 圖 maintab類流程圖 Diagram of the overall structure of program 南昌航空大學(xué)科技學(xué)院 2021 屆學(xué)士學(xué)位論文 25 Maintab 類 Maintab 類負(fù)責(zé)程序外框基本定義及 程序初始化 開始 設(shè)置好衛(wèi)星信號(hào)強(qiáng)度數(shù)據(jù) 設(shè)置窗口大小、顏色 顯示窗口 圖 maintab 類流程圖 maintab Class Flowchart mainwidgt 類 Mainwidgt類負(fù)責(zé)對(duì)各個(gè)按鈕部件、頁面部件的初始化 開始 定義 GPS時(shí)鐘 繪制主框 繪制上下左右四個(gè)按鍵 繪制三個(gè)頁面標(biāo)簽 連接點(diǎn)擊按鈕事件與處理按鍵程序 結(jié)束 圖 mainwidget 類流程圖 mainwidget class Flowchart 南昌航空大學(xué)科技學(xué)院 2021 屆學(xué)士學(xué)位論文 26 config 類流程圖 Config 類用以實(shí)現(xiàn)對(duì)地圖路徑、 GPS 模塊波特率的設(shè)置 開始 設(shè)置地圖路徑 設(shè)置 GPS 的波特率 結(jié)束 圖 config 類流程圖 config class Flowchart 南昌航空大學(xué)科技學(xué)院 2021 屆學(xué)士學(xué)位論文 27 map 類 Map類負(fù)責(zé)讀取mapinfo文件里的地圖 ,并顯示對(duì)應(yīng)地圖。 地圖顯示算法:首先把地圖分割成n*n小塊。然后系統(tǒng)通過得知整張地圖四角的坐標(biāo),計(jì)算出地圖每個(gè)像素點(diǎn)所對(duì)應(yīng)的坐標(biāo)。 最后根據(jù)讀取的 GPS信息,找到對(duì)應(yīng)的地圖,并顯示到lcd上。 開始 讀取地圖的基本信息 根據(jù)當(dāng)前 GPS 信息找到 對(duì)應(yīng)的地圖并顯示 N 地圖按鍵按下 Y 修改顯示的地圖 結(jié)束 圖 map 類 流程圖 map class Flowchart GPS_diver 類 GPS_diver類負(fù)責(zé)驅(qū)動(dòng) GPS模塊, GPS驅(qū)動(dòng)原理如下所述: GPS 衛(wèi)星發(fā)射兩種頻率的載波信號(hào),即頻率為 的 L1 載波和頻率為 的 L2 載波 。 L1 為民用頻率, L2為軍用。民用 GPS信號(hào)調(diào)試成 南昌航空大學(xué)科技學(xué)院 2021 屆學(xué)士學(xué)位論文 28 C/A 碼 發(fā)送, C/A 碼又被稱為粗捕獲碼 , 是 1MHz 的偽隨機(jī)噪聲碼( PRN 碼),其碼長(zhǎng)為 1023 位(周期為 1ms)。 用戶機(jī)接受到 C/A碼后,通過 GPS 接受器,解調(diào)為發(fā)送次 C/A 碼的衛(wèi)星時(shí)間。并通過多個(gè)衛(wèi)星發(fā)送的 C/A 碼時(shí)間差(至少 3個(gè)),來確定當(dāng)前位置。并以串口的形式把經(jīng)緯度數(shù)據(jù)發(fā)送給上位機(jī)。 開始 設(shè)置串口屬性,訪問 GPS模塊 設(shè)置 GPS時(shí)鐘 驅(qū)動(dòng) GPS模塊 計(jì)算經(jīng)緯度坐標(biāo)值 結(jié)束 圖 GPS_driver類流程圖 GPS_driver class Flowchart 南昌航空大學(xué)科技學(xué)院 2021 屆學(xué)士學(xué)位論文 29 staSNR 類 StaSnR類負(fù)責(zé)對(duì)檢測(cè)衛(wèi)星數(shù)量,并告知 GPS_driver類。 開始 檢測(cè)衛(wèi)星數(shù)量 N 衛(wèi)星數(shù)量 3? Y 結(jié)束 圖 strSNR 類流程圖 strSNR class Flowchart debugPDF 類 debugPDF 類負(fù)責(zé)提供調(diào)試信息,錯(cuò)誤編號(hào)等內(nèi)容。調(diào)試程序時(shí),配合 linux中 gdb 命令。 能實(shí)現(xiàn)斷點(diǎn)調(diào)試、逐步調(diào)試等功能并顯示對(duì)應(yīng)的錯(cuò)誤信息。 定義如下: include include ifndef DEBUG_PDF_H define DEBUG_PDF_H //===============debug level for info trace bug define debug 1 define POP3DEBUG 1 南昌航空大學(xué)科技學(xué)院 2021 屆學(xué)士學(xué)位論文 30 ifdef POP3DEBUG define PDF(level, fmt, args...) \ if (debug = level) printf([%s:%d] fmt, __PRETTY_FUNCTION__, __LINE__ , args) else define PDF(level, fmt, args...) do {} while(0) endif 0:沒有任何的顯示! 1:正常工作的,能顯示工作運(yùn)行主流程 error exit fatal show it 2:更進(jìn)一顯示信息 3:完全跟蹤! Makefile 文件 Makefile 文件為整個(gè)工程的管理文件 ,作用是連接各個(gè)頭文件、 c 文件,最終編譯成可執(zhí)行文件。由于使用 qt 開發(fā)環(huán)境,程序可以在 x86 平臺(tái)上與 arm平臺(tái)上分別運(yùn)行。只需要修改 Makefile 文件中的編譯期即可。 地圖文件( 文件) 地圖文件由一大張 南昌 市區(qū)地圖分割成許多小地圖。 文件里包含了整 張地圖信息。 地圖軟件獲取方法:采用專業(yè)地圖下載軟件 UMD( universal maps download),用戶只需在此軟件里輸入想要地圖的四角經(jīng)緯度坐標(biāo)。即可得到所需地圖。保證 里的地圖坐標(biāo)與實(shí)際坐標(biāo)一致。 南昌航空大學(xué)科技學(xué)院 2021 屆學(xué)士學(xué)位論文 31 7 調(diào)試與測(cè)試結(jié)果展示 操作系統(tǒng)燒寫測(cè)試 安裝操作系統(tǒng)測(cè)試的目的是搭建系統(tǒng)的軟件環(huán)境,便于后續(xù)工作 安裝linux有如下步驟 1. 格式化nand flash 2. 安裝bootloader 3. 安裝內(nèi)核文件 4. 安裝文件系統(tǒng) 如下圖所示 圖 燒寫操作系統(tǒng) vivi界面 Flow chart of program of cooling automatically 安裝好操作系統(tǒng)后,重啟系統(tǒng),將出現(xiàn)如下畫面。 南昌航空大學(xué)科技學(xué)院 2021 屆學(xué)士學(xué)位論文 32 圖 操作系統(tǒng)啟動(dòng)畫面 Fig. operating system to start