嵌入式系統(tǒng)課程設計 --基于arm系統(tǒng)的公交多功能終端的設計_第1頁
已閱讀1頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  課程設計報告</b></p><p>  課程名稱: 嵌入式系統(tǒng)課程設計 </p><p><b>  專業(yè)班級: </b></p><p>  學生姓名: </p><p>  指導教師:

2、 </p><p>  完成時間: 2014年 6 月 2 日 </p><p>  報告成績: </p><p>  基于ARM系統(tǒng)的公交多功能終端的設計</p><p><b>  目錄</b></p><p&

3、gt;<b>  一、設計題目4</b></p><p><b>  二、設計要求4</b></p><p>  三、設計作用與目的4</p><p>  四、所用設備及軟件5</p><p><b>  4.1 軟件5</b></p><p>

4、;<b>  4.2 硬件5</b></p><p>  五、系統(tǒng)設計方案5</p><p>  5.1 系統(tǒng)總體設計5</p><p>  5.2 工作原理7</p><p>  5.2.1 LPC2124工作原理7</p><p>  5.2.2 GPS模塊7</p>

5、<p>  5.2.3 GPRS模塊8</p><p>  5.2.4 語音模塊8</p><p>  5.2.5 液晶顯示模塊8</p><p>  5.2.6 PS/2鍵盤模塊9</p><p>  六、系統(tǒng)硬件設計10</p><p>  6.1 系統(tǒng)整體設計10</p>&

6、lt;p>  6.2 各單元電路設計10</p><p>  6.2.1 LPC2124電路圖10</p><p>  6.2.2 PS2按鍵輸入部分電路11</p><p>  6.2.3 液晶顯示模塊電路12</p><p>  6.2.4、GPRS模塊電路12</p><p>  6.2.5、G

7、PS模塊電路13</p><p>  七、系統(tǒng)軟件設計14</p><p>  7.1 主程序流程圖14</p><p>  7.2 子程序流程圖14</p><p>  AT指令集使用15</p><p>  八、心得及體會16</p><p>  九、參考文獻及附錄17<

8、/p><p><b>  一、設計題目</b></p><p>  隨著國民經(jīng)濟的快速發(fā)展,我國城鎮(zhèn)化步伐不斷加快,來自農(nóng)村的大學生和其他務工人員大批涌入城市,造成城市人口大幅度增長,同時由于人民生活水平的不斷提高,城市的汽車保有量也在急劇上升,交通需求迅速擴大,而城市交通基礎設施的建設卻相對滯后,從而使城市“乘車難”、“行車難”的現(xiàn)象日益嚴重,交通擁擠、交通阻塞頻發(fā),噪

9、音污染、廢氣污染加劇,嚴重影響城市公交的可持續(xù)發(fā)展和居民的正常生活。解決城市交通擁擠和阻塞問題已成為我國城市交通面臨的一項迫切的任務。</p><p>  智能公交系統(tǒng)運用系統(tǒng)工程理論,將信息控制、GPS 衛(wèi)星定位、GIS、多媒體、網(wǎng)絡通信等技術集成,應用于整個公共交通領域,實現(xiàn)了公交車輛的智能調(diào)度,方便了公車車輛的運營管理,提高了公交服務水平。使乘坐公交車出行變的更加快捷、方便和舒適。從而使一部分人舍棄自駕車或

10、打出租車出行,改乘公交車,進一步減少交通堵塞現(xiàn)象。另外大力發(fā)展智能公交系統(tǒng),也可以通過提高交通效率而節(jié)省大量的燃料和時間,減少交通事故的發(fā)生,能夠創(chuàng)造巨大的經(jīng)濟和社會效益。</p><p><b>  二、設計要求</b></p><p>  本論文提出了基于ARM的智能公交車載終端的總體設計方案,重點介紹了車載終端的軟硬件設計及自動報站、短信報警、實時監(jiān)控等功能的實

11、現(xiàn)。</p><p><b>  三、設計作用與目的</b></p><p>  智能公交系統(tǒng)主要由3個部分構成,即無線通訊部分、監(jiān)控中心部分和車載終端部分。無線通訊系統(tǒng)主要是利用通信運營商提供的數(shù)據(jù)和短信息服務,這里的通訊方式就是指無線通訊系統(tǒng)的通訊手段;監(jiān)控中心由GPS服務器、數(shù)據(jù)庫服務器、CTI呼叫中心系統(tǒng)、監(jiān)控工作站、管理工作站路由器和防火墻組成;車載終端主要

12、由GPS接收模塊、GPRS通訊模塊、車輛控制模塊、屏幕等部分組成,主要有車輛定位、與監(jiān)控中心進行雙向通訊、車輛控制等功能。監(jiān)控中心在接收到車載終端傳回的GPS位置數(shù)據(jù)后可以確定監(jiān)控車輛的位置信息、歷史運行軌跡進而分析其運行是否正常,是否偏離預定路線,速度是否異常。在出現(xiàn)異常情況時,監(jiān)控中心可以通過發(fā)布導航指令來實現(xiàn)實時的調(diào)度。</p><p>  基于ARM系統(tǒng)的智能公交系統(tǒng),掌握嵌入式系統(tǒng)的設計與常見人機接口電

13、路的設計,懂得簡單電子電路的設計,掌握ARM內(nèi)部資源的使用,了解嵌入式系統(tǒng)機的外部結構與內(nèi)部結構之間的關系,并能編程實現(xiàn)各部分相關功能。</p><p><b>  四、所用設備及軟件</b></p><p><b>  4.1 軟件</b></p><p>  系統(tǒng)設計主要使用到的軟件有Keil C51、Protel 9

14、9SE等。</p><p>  Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學易用。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uVision)將這些部分組合在一起。 </p><p>  

15、Protel 99SE是ProklTechnology公司開發(fā)的基于Windows環(huán)境下的電路板設計軟件。該軟件功能強大,人機界面友好,易學易用,仍然是大中專院校電學專業(yè)必學課程,同時也是業(yè)界人士首選的電路板設計工具。</p><p>  Protel 99SE 由兩大部分組成:電路原理圖設計(Advanced Schematic)和多層印刷電路板設計(Advanced PCB)。其中Advanced Schem

16、atic由兩部分組成:電路圖編輯器(Schematic)和元件庫編輯器(Schematic Library)。</p><p><b>  4.2 硬件</b></p><p>  硬件主要用到的是個人計算機及相關arm芯片。</p><p><b>  五、系統(tǒng)設計方案</b></p><p> 

17、 5.1 系統(tǒng)總體設計</p><p>  智能車載終端是一款以ARM處理器為核心,利用GPS、GPRS等先進技術,集車輛實時監(jiān)控、正點考核、緊急事件報警等功能于一身的專為公交車輛設計的嵌入式智能終端產(chǎn)品。它是整個智能公交系統(tǒng)的數(shù)據(jù)來源,也是車載功能的執(zhí)行者,因此它是整個系統(tǒng)是的重要組成部分。車載終端主要實現(xiàn)的功能包括:到站自動播報到站提示音,出站自動播報出站提示音;定時向數(shù)據(jù)中心發(fā)送車輛位置信息,實現(xiàn)中心對車輛

18、的監(jiān)控;能夠任意設置站點為考核點,對車輛運行正點情況進行考核;液晶屏幕實時顯示時間、車輛運行速度、當前??空军c等信息;按鍵控制特殊語音播報、背景音樂播放;按鍵控制緊急情況報警短消息發(fā)送;驅動車載LED屏,實現(xiàn)站點名稱、廣告語的顯示。根據(jù)功能要求,我們在設計中將終端分解為如下幾個模塊:</p><p>  (1)ARM中央處理器模塊</p><p>  (2)GPS定位模塊</p&g

19、t;<p>  (3)GPRS無線通信模塊</p><p>  (4)語音及功放模塊</p><p>  (5)LCD液晶顯示模塊</p><p>  (6)鍵盤控制模塊</p><p><b>  (7)電源模塊</b></p><p>  (8)串口及其它外圍電路模塊.<

20、/p><p>  終端系統(tǒng)結構框圖如圖1所示</p><p>  圖1、系統(tǒng)總體設計圖</p><p><b>  5.2 工作原理</b></p><p>  5.2.1 LPC2124工作原理</p><p>  LPC2124是PHILIPS公司生產(chǎn)的單片32位ARM微控制器,是基于一個支持實時

21、仿真和跟蹤的16/32位ARM7TDMI.S CPU,并帶有256KB的嵌入的高速FLASH存儲器。LPC2124具有非常小的64腳封裝、極低的功耗、多個32位定時器、4路10位ADC、PWM輸出、46個GPIo以及多達9個外部中斷使它們特別適用于工業(yè)控制、醫(yī)療系統(tǒng)、訪問控制和電子收款機(PoS)。由于內(nèi)置了寬范圍的串行通信接口,它們也非常適合于通信網(wǎng)關、協(xié)議轉換器、嵌入式軟件調(diào)制解調(diào)器以及其它各種類型的應用。</p>&

22、lt;p>  LPC2124特性如下:</p><p>  (1)16/32位ARM7TDMI.S核,超小LQFP64封裝;</p><p>  (2)16 kB片內(nèi)SRAM;</p><p>  (3)256 kB片內(nèi)F1ash程序存儲器,128位寬度接口/加速器可實現(xiàn)高達60</p><p><b>  MHZ工作頻率:&

23、lt;/b></p><p>  可加密。全球首個實現(xiàn)可加密的ARM微控制器;</p><p>  (5)通過片內(nèi)boot裝載程序實現(xiàn)在系統(tǒng)編程(IsP)和在應用編程(IAP);</p><p>  (6)512字節(jié)行編程時間為1ms。單扇區(qū)或整片擦除時間為400ms;</p><p>  (7)Embedded ICE可實現(xiàn)斷點和觀察

24、點。當使用片內(nèi)Real Monitor軟件對</p><p>  前臺任務進行調(diào)試時,中斷服務程序可繼續(xù)運行;</p><p>  嵌入式跟蹤宏單元(ETM)支持對執(zhí)行代碼無干擾的高速實時跟蹤;</p><p>  LPC2124具有的1 6K靜態(tài)RAM,可以用作代碼和數(shù)據(jù)的存儲,支持8位、</p><p>  16位和32為訪問。LPC21

25、24集成的一個256K的FLASH存儲器,可以用作代碼和數(shù)據(jù)的存儲。對FLASH存儲器的編程可以通過幾種方法來實現(xiàn):(1)通過JTAG接口;(2)通過ISP和URATO;(3)通過在線應用編程(IAP)。</p><p>  5.2.2 GPS模塊</p><p>  系統(tǒng)GPS模塊采用HoLux的GR87模塊。HOLUX GR87 Sirf3代GPS模塊采用SiRF第三代高靈敏度、低耗電

26、量芯片StarIII,內(nèi)建ARM7TDMI CPU可符合模塊需求,具備快速定位及追蹤20顆衛(wèi)星的能力,內(nèi)置標準陶瓷GPS天線模塊,并預留外接口。體積超小,僅25×25×2mm。芯片內(nèi)建200000個衛(wèi)星追蹤運算器,大幅提高搜尋及運算衛(wèi)星訊號能力。內(nèi)建wASS/EGNoS解調(diào)器。低耗電量,具備有省電模式(Trickle.Power)功能,以及在設定的時間才啟動的定時定位(Push.to.Fix)功能。支持NMEAOl

27、83.22版本規(guī)格輸出。該模塊的應用范圍主要包括:車用導航、航海導航、艦隊管理、基地服務、自動駕駛、個人導航、旅游設備、軌跡設備、系統(tǒng)及繪圖應用程序。</p><p>  5.2.3 GPRS模塊</p><p>  SIM300C是小體積即插即用模組中完善的三頻/四頻GSM/GPRS解決方案。使用工業(yè)標準界面,使得具備GSM/GPRS900/1800/1900MHz功能的SIM300C以

28、小尺寸和低功耗實現(xiàn)語音、SMS、數(shù)據(jù)和傳真信息的高速傳輸。SIM300C的優(yōu)良性能讓它應用于許多方面,例如WLL、M2M、手持設備等。SIM300C外形尺寸為40×33×2.85mm,支持用戶定制的MMI和鍵盤/LCD,內(nèi)嵌強大的TCP/IP協(xié)議棧,具有標準的AT命令接口,能夠以小尺寸和低功耗實現(xiàn)語音、短信和GPRS數(shù)據(jù)傳輸?shù)葮I(yè)務。模塊通過串口進行數(shù)據(jù)的通信,通信速率最快可以達到115200b/s,模塊與控制器間通信

29、協(xié)議是AT命令集,其中大部分是符合協(xié)議“AT command set for GSM Mobile Equipment(ME)(GSM 07.07 version 6.4.0 Release 1997)’’的,也有一些是SIMCOM自己定義的AT命令。</p><p>  5.2.4 語音模塊</p><p>  WTM.SD模塊是一款可重復擦寫語音內(nèi)容的大容量存儲類型的語音模塊,外掛體積

30、小巧的最大容量為1GB的Micro SD卡存儲器,支持加載wAv格式語音文件和MP3格式語音文件。WTM.SD模塊采用DIPl6直插形式封裝,有MP3控制模式,按鍵一對一控制模式,按鍵組合控制模式,并口控制模式以及二線串口控制模式等控制模式。</p><p>  WTM—SD模塊的主要應用領域包括汽車電子(防盜報警器、倒車雷達、GPS</p><p>  導航儀、電子狗、中控鎖)、智能家居

31、系統(tǒng)、家庭防盜報警器、醫(yī)療器械人聲提示、音樂播放、家電(電磁爐、電飯煲、微波爐)、娛樂設備(游戲機、游樂機)、學習模型(早教機、兒童有聲讀物)、智能交通設備(收費站、停車場)、通信設備</p><p>  (電話交換機、電話機)、工業(yè)控制領域(電梯、工業(yè)設備)、玩具等</p><p>  5.2.5 液晶顯示模塊</p><p>  金鵬電子C系列液晶模塊OCMJ2

32、木8C。該C系列中文模塊可以顯示字母、數(shù)字符號、中文字型及圖形,具有繪圖及文字畫面混合顯示功能。提供三種控制接口,分別是8位微處理器接口,4位微處理器接口及串行接口。所有的功能包括顯示RAM、字型產(chǎn)生器,都包含在一個芯片里面,只要一個最小的微處理系統(tǒng),就可以方便操作模塊。內(nèi)置2M位中文字型ROM(CGROM)總共提供8192個中文字型(16×16點陣),16K位半寬字型ROM(HCGROM)總共提供</p>&l

33、t;p>  126個符號字型(1 6×8點陣),64×16位字型產(chǎn)生RAM(CGRAM),另外繪圖顯</p><p>  示畫面提供一個64×256點的繪圖區(qū)域(GDRAM),可以和文字畫面混和顯示。提供多功能指令:畫面清除(Display clear)、光標歸位(Return home)、顯示打開/關閉(Display on/off)、光標顯示/隱藏(Cursor on/of

34、f)、顯示字符閃爍(Display</p><p>  character blink)、光標移位(Cursor shift)、顯示移位(Display shift)、垂直畫面卷動(Verticalline scroll)、反白顯示(By-line reverse display)、待命模式(standby mode)。</p><p>  5.2.6 PS/2鍵盤模塊</p>

35、<p>  PS/2鍵盤履行一種雙向同步串行協(xié)議。換句話說,每次數(shù)據(jù)線上發(fā)送一位數(shù)據(jù)并且每在時鐘線上發(fā)一個脈沖就被讀入。鍵盤可以發(fā)送數(shù)據(jù)到主機,而主機也可以發(fā)送數(shù)據(jù)到設備,但主機總是在總線上有優(yōu)先權,它可以在任何時候抑制來自于鍵盤的通訊,只要把時鐘拉低即可。從鍵盤發(fā)送到主機的數(shù)據(jù)在時鐘信號的下降沿(當時鐘從高變到低)的時候被讀取。從主機發(fā)送到鍵盤的數(shù)據(jù)在上升沿(當時鐘從低變到高)的時候被讀取。不管通訊的方向怎樣鍵盤總是產(chǎn)生

36、時鐘信號。鍵盤發(fā)送的每一數(shù)據(jù)幀包含11~12個位。如果數(shù)據(jù)位中包含偶數(shù)個1,校驗位就會置1,如果數(shù)據(jù)位中包含奇數(shù)個1,校驗位就會置0,數(shù)據(jù)位中1的個數(shù)加上校驗位總為奇數(shù),這就是奇校驗。奇校驗用來錯誤檢測。</p><p>  數(shù)據(jù)和時鐘線都是集電極開路結構,正常保持高電平。當鍵盤等待發(fā)送數(shù)據(jù)時它首先檢查時鐘以確認它是否是高電平,如果不是,那么是主機抑制了通訊。設備必須緩沖任何要發(fā)送的數(shù)據(jù)直到重新獲得總線的控制權。

37、鍵盤有16 字節(jié)的緩沖區(qū),如果時鐘線是高電平設備就可以開始傳送數(shù)據(jù)。鍵盤與主機通訊的時序如圖2所示,每位數(shù)據(jù)都在時鐘的下降沿被主機讀入。</p><p><b>  六、系統(tǒng)硬件設計</b></p><p>  6.1 系統(tǒng)整體設計</p><p>  LPC2124是整個電路系統(tǒng)的核心,以LPC2124為核心的中央處理器模塊設計則是決定整個硬

38、件電路成敗的關鍵,ARM微控制器模塊設計主要包括電源、時鐘及復位電路、調(diào)試與測試接口及ARM芯片接口電路四大部分。</p><p>  6.2 各單元電路設計</p><p>  6.2.1 LPC2124電路圖</p><p>  選擇一款MCU時,我們需要考慮的因素有以下幾個方面:</p><p>  第一,MCU的電源范圍、工作頻率。M

39、CU對電源的要求需要與系統(tǒng)中其它大部分部件對電源的要求一致;第二,MCU的I/O口、定時器、中斷等資源數(shù)目。需要滿足系統(tǒng)的要求,避免資源的浪費;</p><p>  第三,MCU的吞吐量。符合MCU對系統(tǒng)執(zhí)行控制時的處理能力;</p><p>  第四,MCU的極限性能。能夠在系統(tǒng)可能處于的極限工作環(huán)境中正常運行,如低溫或高溫環(huán)境;</p><p>  第五,MCU

40、的抗干擾性能、加密性能、程序寫入方式等;</p><p>  第六,MCU的市場價格。在產(chǎn)品的設計中需要嚴格的控制產(chǎn)品成本,固價格也是MCU選取中的重要一點,需要選取具有高性價比的MCU芯片。綜合考慮以上因素及本系統(tǒng)對控制器的要求,我們選用了NXP的ARM7微處理器LPC2124作為系統(tǒng)的微控制器。</p><p>  圖3、Lpc2124芯片圖</p><p> 

41、 6.2.2 PS2按鍵輸入部分電路</p><p>  一般情況下鍵盤輸入具有隨機性,且實時</p><p>  性較強,為提高實時性,考慮到時鐘脈沖</p><p>  總由鍵盤產(chǎn)生,因此,主機系統(tǒng)可以中斷</p><p>  方式支持鍵碼的隨機輸入。當主機接收</p><p>  到從鍵盤發(fā)來的時鐘信號時,即向

42、中斷</p><p>  系統(tǒng)發(fā)出鍵盤中斷, CPU響應中斷并</p><p>  接收鍵碼。設計中采用I/O口模擬PS2</p><p><b>  時序輸入。</b></p><p>  6.2.3 液晶顯示模塊電路</p><p>  為了方便使用人員對設備的操作,本終端設計了16個可供用戶

43、操作的按鍵,</p><p>  用于特定功能的實現(xiàn),另外在終端正面設計了一個128*64的LCD顯示屏,用于</p><p>  顯示當前時間、速度、站點位置等信息。</p><p>  圖5、液晶顯示模塊電路</p><p>  6.2.4、GPRS模塊電路</p><p>  GPRS模塊支持外部SIM卡,可以直

44、接與3.0V SIM卡或者1.8V SIM</p><p>  卡連接。模塊自動監(jiān)測和適應SIM卡類型。對用戶來說,GPRS模塊實現(xiàn)的就是</p><p>  一個移動電話的基本功能,該模塊正常的工作是需要電信網(wǎng)絡支持的,需要配備</p><p>  一個可用的SIM卡。</p><p>  工作中,LPC2124將GPS定位的站點信息及到站

45、時間等信息,利用AT命令,通過串口發(fā)送到GPRS模塊,由模塊通過GPRS網(wǎng)絡將數(shù)據(jù)發(fā)送回公交調(diào)度控制中心,實現(xiàn)控制中心對公交車輛運營情況的實時監(jiān)控和考核。SIM卡部分電路設計如圖6所示</p><p>  圖6、GPRS模塊電路</p><p>  6.2.5、GPS模塊電路</p><p>  本設計的GPS模塊采用的是HOLUX的GR-87模塊。該模塊支持NME

46、A 0183</p><p>  V3.01標準輸出,TTL接口電平,波特率可置。在本系統(tǒng)中,GR-87模塊通過6PIN</p><p>  排線與主板相連,1腳為電源輸入腳,接5V電源,2、3腳為GPS模塊的數(shù)據(jù)接</p><p>  收和發(fā)送,接GM8123子串口2,5腳接地,6腳接LED指示燈。工作時,GPS</p><p>  模塊由

47、GM8123子串口2與主控制器LPC2124進行通信,通過設置模塊定時輸出。GPS定位數(shù)據(jù),由主控制器對GPS數(shù)據(jù)進行處理,提取出經(jīng)緯度,時間等有用信息,為自動報站及正點考核提供可靠數(shù)據(jù),保證報站及正點考核功能的實現(xiàn)。這部分電路設計比較簡單,原理圖如圖7所示</p><p>  圖7、GPS模塊電路</p><p><b>  七、系統(tǒng)軟件設計</b></p&g

48、t;<p>  7.1 主程序流程圖</p><p>  系統(tǒng)采用模塊化編程,各部分相互獨立又緊密聯(lián)系。許多程序太長或太復雜,很難寫在單一單元中。如果把代碼分為較小的功能單元,將大大簡化編程過程。模塊化程序一般比單塊程序容易編寫、調(diào)試和修改。只要把各個單元之間的接口定義好,各個單元的詳細設計就可以獨立進行了。使用模塊化方法可以更快地開發(fā)程序,因為較小的子程序比大程序更容易理解、設計和測試。子程序可以

49、重用,為一個程序編寫的代碼經(jīng)??梢杂糜谄渌?lt;/p><p>  7.2 子程序流程圖</p><p>  GPRS模塊實現(xiàn)數(shù)據(jù)的無線傳輸,設計中用芯片實現(xiàn)數(shù)據(jù)的傳輸。通過無線網(wǎng)絡傳送給中據(jù)中心子系統(tǒng)的環(huán)境參數(shù),該環(huán)境參數(shù)可能采用短信息的形式通過GSM網(wǎng)絡傳輸,也可能以數(shù)據(jù)包的形式通過GPRS網(wǎng)絡傳輸,由GPRS模塊接收,串口傳遞,傳遞數(shù)據(jù)分析模塊處理。</p><p&

50、gt;<b>  GPS模塊</b></p><p><b>  AT指令集使用</b></p><p><b>  八、心得及體會</b></p><p>  隨著無線通信技術的不斷提高,通信費用的不斷降低,利用移動運營商提供的無線網(wǎng)絡實現(xiàn)遠程監(jiān)控和數(shù)據(jù)傳輸已被廣泛應用于各個領域。特別是基于單片機的

51、GSM數(shù)據(jù)傳輸方案在GSM車載終端、自動抄表系統(tǒng)等遠程遙測遙控系統(tǒng)中的應用更是倍受關注,而且已經(jīng)非常成熟;為了實現(xiàn)更快,信息量更加大的信息交換,3G網(wǎng)絡將會帶來更加優(yōu)質的通信服務,同時為實現(xiàn)智能交通系統(tǒng)提供了一種更加優(yōu)秀的解決方案,讓我們共同期待高速信息公路的到來吧,那是是信息技術高速發(fā)展的時代,我們的最求也更加完美。最后讓我們回顧一下這篇淺顯的設計方案,本設計主要完成了:(1)車載終端的硬件電路的設計與制作。(2)車載終端軟件的設計與

52、調(diào)試。(3)設備性能的測試。由于時間的原因, 此系統(tǒng)設計還存</p><p>  在很多不足之處,今后將近一步拓展系統(tǒng)功能。</p><p><b>  九、附錄及參考文獻</b></p><p>  [1]周麗娜.Protel99SE電路設計技術(基礎、案例篇)[M].北京:中國鐵道出版社.2009.</p><p>

53、  [2]焦寶文.課程設計指南[M].北京:清華大學出版社.1983.</p><p>  [3坂本正文.步進電機應用技術[M].北京:科學出版社,2010.</p><p>  [4]GPRS的路由管理[EB/OL]. </p><p>  [5]GPRS[EB/OL]. </p><p>  [6]全球GPRS發(fā)展現(xiàn)狀[EB/OL]. &

54、lt;/p><p>  [7] Embedded microcontrollers and processor  Abhik Roychoudhury 北京:清華大學出版社 2010</p><p>  [8] Embedded systems Tammy Noergaard 北京:人民郵電出版社 2008</p><p>  

55、[9]童永清 Linux C 編程實踐 北京:人民郵電出版社 2008</p><p>  [10]劉嵐,尹勇 基于ARM的嵌入式系統(tǒng)開發(fā) 北京:電子工業(yè)出版社 2008</p><p>  [11]三恒星科技 ARM9應用實例 北京:電子工業(yè)出版社 2007</p><p>  [12]龐麗萍 操作系統(tǒng)原理 武漢:華中科技大學出版社 2008</p&

56、gt;<p>  附錄一、部分程序源代碼</p><p>  /*******************************************</p><p>  函數(shù)名稱:parse_gprmc</p><p>  功能:解析GPS導航電文GPRMC字段</p><p>  **********************

57、**********************/</p><p>  void phase_gprmc(void)</p><p><b>  {</b></p><p>  uint8 i,g;</p><p>  uint8 temp;</p><p><b>  g=0;</b

58、></p><p>  clear_gprmc();//清空gprmc顯示緩沖區(qū)</p><p>  Read_byte();//讀取gprmc字段</p><p>  temp=Read_byte();</p><p>  if(','!=temp)</p><p><b>  {&l

59、t;/b></p><p>  Time[0]=temp;</p><p>  for(i=0;i<5;i++)</p><p><b>  {</b></p><p>  Time[i+1]=Read_byte();</p><p><b>  }</b><

60、;/p><p>  Read_byte();</p><p>  Read_byte();</p><p>  Read_byte();</p><p>  Read_byte();</p><p>  Read_byte();</p><p><b>  }</b></

61、p><p>  coord.Status=Read_byte();//數(shù)據(jù)有效標志</p><p>  Read_byte();</p><p>  temp=Read_byte();</p><p>  if(','!=temp)//緯度數(shù)據(jù)解析</p><p><b>  {</b>

62、;</p><p>  coord.Latitude[0]=temp;</p><p>  for(i=0;i<8;i++)</p><p><b>  {</b></p><p>  coord.Latitude[i+1]=Read_byte();</p><p><b>  }

63、</b></p><p>  Read_byte();</p><p><b>  }</b></p><p>  temp=Read_byte();</p><p>  if(','!=temp)//南北半球</p><p><b>  {</b>

64、;</p><p>  coord.NSIndicator=temp;</p><p>  Read_byte();</p><p><b>  }</b></p><p>  temp=Read_byte();</p><p>  if(','!=temp)//經(jīng)度數(shù)據(jù)解析<

65、;/p><p><b>  69{</b></p><p>  coord.Longitude[0]=temp;</p><p>  for(i=0;i<9;i++)</p><p><b>  {</b></p><p>  coord.Longitude[i+1]=Re

66、ad_byte();</p><p><b>  }</b></p><p>  Read_byte();</p><p><b>  }</b></p><p>  temp=Read_byte();</p><p>  if(','!=temp)//東西半

67、球</p><p><b>  {</b></p><p>  coord.EWIndicator=temp;</p><p>  Read_byte();</p><p><b>  }</b></p><p>  temp=Read_byte();</p>

68、<p>  if(','!=temp)//速度數(shù)據(jù)</p><p><b>  {</b></p><p>  Speed[0]=temp;</p><p>  for(i=0;i<3;i++)</p><p><b>  {</b></p><p

69、>  Speed[1+i]=Read_byte();</p><p><b>  }</b></p><p><b>  do</b></p><p><b>  {</b></p><p>  temp=Read_byte();</p><p>

70、  }while(temp!=',');</p><p><b>  }</b></p><p><b>  do</b></p><p><b>  {</b></p><p>  temp=Read_byte();</p><p> 

71、 }while(temp!=',');</p><p>  temp=Read_byte();</p><p>  if(','!=temp)//日期數(shù)據(jù)</p><p><b>  {</b></p><p>  Date[0]=temp;</p><p>  f

72、or(i=0;i<5;i++)</p><p><b>  {</b></p><p>  Date[i+1]=Read_byte();</p><p><b>  }</b></p><p><b>  }</b></p><p><b&g

73、t;  }</b></p><p>  /*******************************************</p><p>  函數(shù)名稱:Read_gprmc</p><p>  功能:GPRMC字段識別</p><p>  ******************************************

74、**/</p><p>  void Read_gprmc(void)</p><p><b>  {</b></p><p>  uint8 temp=0;</p><p>  flag_phase=0;</p><p>  70temp=Read_byte();</p><

75、p>  if(temp=='$')</p><p><b>  {</b></p><p>  temp=Read_byte();</p><p>  if(temp=='G')</p><p><b>  {</b></p><p> 

76、 temp=Read_byte();</p><p>  if(temp=='P')</p><p><b>  {</b></p><p>  temp=Read_byte();</p><p>  if(temp=='R')</p><p><b> 

77、 {</b></p><p>  temp=Read_byte();</p><p>  if(temp=='M')</p><p><b>  {</b></p><p>  temp=Read_byte();</p><p>  if(temp=='C

78、9;)</p><p><b>  {</b></p><p>  phase_gprmc();</p><p>  flag_phase=1;</p><p><b>  }</b></p><p><b>  }</b></p><

79、;p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>

80、;  /*******************************************</p><p>  函數(shù)名稱:Read_byte</p><p>  功能:從接受緩沖區(qū)中讀取一個字節(jié)</p><p>  返回值:temp--讀取到的數(shù)據(jù)</p><p>  ***********************************

81、*********/</p><p>  uint8 Read_byte(void)</p><p><b>  {</b></p><p>  uint8 temp;</p><p>  while(readCount==writeCount)</p><p><b>  {</

82、b></p><p>  DelayNS(10);</p><p><b>  }</b></p><p>  temp=gpsbuf[readCount];</p><p>  ++readCount;</p><p>  if(readCount>499)</p>&

83、lt;p>  readCount=0;</p><p>  return temp;</p><p><b>  }</b></p><p>  71/*******************************************</p><p>  函數(shù)名稱:clear_gprmc</p>

84、<p>  功能:清空gprmc顯示緩沖區(qū)</p><p>  ********************************************/</p><p>  void clear_gprmc(void)</p><p><b>  {</b></p><p><b>  uint8

85、i;</b></p><p>  for(i=0;i<6;i++)</p><p><b>  {</b></p><p>  Time[i]='0';</p><p>  Date[i]='0';</p><p><b>  }<

86、/b></p><p>  for(i=0;i<9;i++)</p><p><b>  {</b></p><p>  coord.Latitude[i]='0';</p><p><b>  }</b></p><p>  for(i=0;i&

87、lt;10;i++)</p><p><b>  {</b></p><p>  coord.Longitude[i]='0';</p><p><b>  }</b></p><p>  for(i=0;i<4;i++)</p><p><b&g

88、t;  {</b></p><p>  Speed[i]='0';</p><p><b>  }</b></p><p>  coord.Status='0';</p><p>  coord.NSIndicator='0';</p><p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論