版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 嵌入式Linux移動(dòng)數(shù)據(jù)采集系統(tǒng)硬件設(shè)計(jì)</p><p> 作 者 姓 名 xx </p><p> 專(zhuān) 業(yè) xx </p><p> 指導(dǎo)教師姓名 xx </p><p> 專(zhuān)業(yè)技術(shù)職務(wù) 講 師 &l
2、t;/p><p><b> 目 錄</b></p><p><b> 摘 要1</b></p><p> 第一章 嵌入式操作系統(tǒng)3</p><p> 1.1嵌入式操作系統(tǒng)的概述3</p><p> 1.2嵌入式系統(tǒng)的概念3</p><
3、;p> 1.3常見(jiàn)的嵌入式操作系統(tǒng)3</p><p> 1.4嵌入式系統(tǒng)的未來(lái)5</p><p> 第二章 嵌入式Linux操作系統(tǒng)6</p><p> 2.1嵌入式Linux及其特點(diǎn)6</p><p> 2.1.1 Linux的優(yōu)勢(shì)6</p><p> 2.1.2嵌入式Linux及技術(shù)特
4、點(diǎn)6</p><p> 2.2 Linux文件系統(tǒng)的層次結(jié)構(gòu)8</p><p> 2.3 Linux基本命令8</p><p> 2.4 Linux嵌入式系統(tǒng)開(kāi)發(fā)平臺(tái)10</p><p> 2.4.1系統(tǒng)軟件操作平臺(tái)10</p><p> 2.4.2系統(tǒng)硬件平臺(tái)10</p><
5、p> 2.4.3嵌入式Linux系統(tǒng)開(kāi)發(fā)模式11</p><p> 第三章 GPRS 簡(jiǎn)介13</p><p> 3.1 GPRS基礎(chǔ)知識(shí)13</p><p> 3.2 GPRS的主要特點(diǎn)13</p><p> 3.3 GPRS的技術(shù)優(yōu)勢(shì)14</p><p> 3.4 GPRS(M23)模
6、塊15</p><p> 3.4.1模塊(M23)特征15</p><p> 3.4.2 GPRS模塊無(wú)線上網(wǎng)AT指令簡(jiǎn)介15</p><p> 第四章 系統(tǒng)硬件設(shè)計(jì)18</p><p> 4.1系統(tǒng)概述18</p><p> 4.2系統(tǒng)硬件設(shè)計(jì)18</p><p>
7、4.2.1 GPRS模塊18</p><p> 4.2.2 UART-IRDA-485-SD模塊19</p><p> 4.2.3 POWER-AD-DA-LED-BEEP模塊20</p><p> 4.2.4 BUS-Drive模塊21</p><p> 4.2.5 以太網(wǎng)接口電路22</p><p&g
8、t; 4.2.6 PCMCIA接口電路23</p><p> 4.2.7 LED數(shù)碼顯示電路和直流電機(jī)控制電路24</p><p> 4.2.8 彩色液晶屏及觸摸屏驅(qū)動(dòng)電路25</p><p> 4.2.9 IIS數(shù)字音頻輸入輸出電路26</p><p> 4.2.10 USB HOST/Device 接口電路26<
9、/p><p> 第五章 總結(jié)與展望27</p><p> 5.1設(shè)計(jì)總結(jié)27</p><p> 5.2設(shè)計(jì)展望28</p><p><b> 參考文獻(xiàn)29</b></p><p><b> 附 錄30</b></p><p><
10、;b> 致 謝32</b></p><p><b> 摘 要</b></p><p> 隨著微處理器技術(shù)的飛速發(fā)展,價(jià)格低廉、結(jié)構(gòu)小巧的CPU 和外設(shè)的結(jié)合為嵌入式系統(tǒng)提供了穩(wěn)定可靠的硬件架構(gòu)。LINUX 則是以核心為基礎(chǔ)的、完全內(nèi)存保護(hù)、支持多任務(wù)多進(jìn)程, 支持廣泛的硬件; 而且價(jià)格低廉、易開(kāi)發(fā)、資料豐富, 可定制內(nèi)核。這些都從根本上消
11、除了限制嵌入式系統(tǒng)發(fā)展的瓶頸, 加上當(dāng)前國(guó)家對(duì)自主操作系統(tǒng)的大力支持, 也為源碼開(kāi)放的LINUX 的推廣提供了廣闊的發(fā)展前景。從安全的角度來(lái)看, LINUX 程序源碼全部公開(kāi), 包括系統(tǒng)內(nèi)核,開(kāi)發(fā)人員可以對(duì)操作系統(tǒng)進(jìn)行定制和修改, 從而也不必?fù)?dān)心像MS window 操作系統(tǒng)中“后門(mén)”的威脅。</p><p> GPRS 是一個(gè)用于通過(guò) GSM 傳輸數(shù)據(jù)的數(shù)據(jù)分組服務(wù),是一種卓越的數(shù)字蜂窩標(biāo)準(zhǔn)。盡管 GSM 上
12、的數(shù)據(jù)是線路交換的并且不管怎樣都占用一個(gè)通道,但是 GPRS 上的數(shù)據(jù)是一直連接的(always-on)、分組交換(packet-switched)的數(shù)據(jù)流。GSM 的傳輸速度一般是 9.6 kbps,而 GPRS 能夠運(yùn)行的速度為 56 kbps 到 170 kbps。GPRS 是在基本的蜂窩移動(dòng)通信系統(tǒng)改造而來(lái)的, 主要是由交換網(wǎng)路子系統(tǒng)(NSS) 、無(wú)線基站子系統(tǒng)(BSS) 和移動(dòng)臺(tái)(MS) 三大部分組成。</p>
13、<p> 關(guān)鍵詞:Linux GPRS 數(shù)據(jù)采集</p><p><b> ABSTRACT</b></p><p> With the rapid development of microprocessor technology, low-cost, cabinet structure of CPU and link of peripherals
14、 for embedded systems to provide stable and reliable hardware architecture. LINUX is a core-based, full memory protection, support for multi-task and Multi-process, supports a wide range of hardware, but also inexpensive
15、 and easy to develop, informative, customizable core. These are fundamentally eliminating the restrictions on embedded systems development bottleneck, coupled with t</p><p> GPRS is one of GSM packet data s
16、ervices for the transmission of data through GSM, is a superior digital cellular standards. While the data of GSM is circuitry exchange and it has occupied a passage in any case, but the data of GPRS has been always-on,
17、packet-switched the flow of data. The transmission speed of GSM is generally 9.6 kbps, and the speed of GPRS can run for 56 kbps to 170 kbps. . GPRS is the fundamental transformation of cellular mobile communications sys
18、tems and mainly made up of t</p><p> keywords:Linux ; GPRS ; data collection</p><p> 第一章 嵌入式操作系統(tǒng)</p><p> 1.1嵌入式操作系統(tǒng)的概述</p><p> 經(jīng)過(guò)幾十年的發(fā)展,嵌入式系統(tǒng)已經(jīng)在很大程度改變了人們的生活、工作和娛
19、樂(lè)方式,而且這些改變還在加速。嵌入式系統(tǒng)具有無(wú)數(shù)的種類(lèi),每類(lèi)都具有自己獨(dú)特的個(gè)性。例如,MP3、數(shù)碼相機(jī)與打印機(jī)就有很大的不同。汽車(chē)中更是具有多個(gè)嵌入式系統(tǒng),使汽車(chē)更輕快、更干凈、更容易駕駛。</p><p> 即使不可見(jiàn),嵌入式系統(tǒng)也無(wú)處不在。嵌入式系統(tǒng)在很多產(chǎn)業(yè)中得到了廣泛的應(yīng)用并逐步改變著這些產(chǎn)業(yè),包括工業(yè)自動(dòng)化、國(guó)防、運(yùn)輸和航天領(lǐng)域。例如神州飛船和長(zhǎng)征火箭中肯定有很多嵌入式系統(tǒng),導(dǎo)彈的制導(dǎo)系統(tǒng)也是嵌入式
20、系統(tǒng),高檔汽車(chē)中也有多達(dá)幾十個(gè)嵌入式系統(tǒng)[1]。</p><p> 在日常生活中,人們使用各種嵌入式系統(tǒng),但未必知道它們。事實(shí)上,幾乎所有帶有一點(diǎn)“智能”的家電(全自動(dòng)洗衣機(jī)、電腦電飯煲…)都是嵌入式系統(tǒng)。嵌入式系統(tǒng)廣泛的適應(yīng)能力和多樣性,使得視聽(tīng)、工作場(chǎng)所甚至健身設(shè)備中到處都有嵌入式系統(tǒng)。</p><p> 1.2嵌入式系統(tǒng)的概念</p><p> 目前,對(duì)
21、嵌入式系統(tǒng)的定義多種多樣,但沒(méi)有一種定義是全面的。下面給出兩種比較合理定義: </p><p> 1)從技術(shù)的角度定義:以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專(zhuān)用計(jì)算機(jī)系統(tǒng)。</p><p> 2)從系統(tǒng)的角度定義:嵌入式系統(tǒng)是設(shè)計(jì)完成復(fù)雜功能的硬件和軟件,并使其緊密耦合在一起的計(jì)算機(jī)系統(tǒng)。術(shù)語(yǔ)嵌入式反映了這些系統(tǒng)通常是
22、更大系統(tǒng)中的一個(gè)完整的部分,稱(chēng)為嵌入的系統(tǒng)。嵌入的系統(tǒng)中可以共存多個(gè)嵌入式系統(tǒng)。</p><p> 1.3常見(jiàn)的嵌入式操作系統(tǒng)</p><p> 1. 嵌入式Linux</p><p> uClinux是一個(gè)完全符合GNU/GPL公約的操作系統(tǒng),完全開(kāi)放代碼。uClinux從Linux 2.0/2.4內(nèi)核派生而來(lái),沿襲了主流Linux的絕大部分特性。
23、它是專(zhuān)門(mén)針對(duì)沒(méi)有MMU的CPU,并且為嵌入式系統(tǒng)做了許多小型化的工作。適用于沒(méi)有虛擬內(nèi)存或內(nèi)存管理單元(MMU)的處理器,例如ARM7TDMI。它通常用于具有很少內(nèi)存或Flash的嵌入式系統(tǒng)。它保留了Linux的大部分優(yōu)點(diǎn):穩(wěn)定、良好的移植性、優(yōu)秀的網(wǎng)絡(luò)功能、完備的對(duì)各種文件系統(tǒng)的支持、以及標(biāo)準(zhǔn)豐富的API等。</p><p><b> 2. Win CE</b></p>&
24、lt;p> Windows CE是微軟開(kāi)發(fā)的一個(gè)開(kāi)放的、可升級(jí)的32位嵌入式操作系統(tǒng),是基于掌上型電腦類(lèi)的電子設(shè)備操作,它是精簡(jiǎn)的Windows 95。Windows CE的圖形用戶(hù)界面相當(dāng)出色。Win CE具有模塊化、結(jié)構(gòu)化和基于Win32應(yīng)用程序接口以及與處理器無(wú)關(guān)等特點(diǎn)。Win CE不僅繼承了傳統(tǒng)的Windows圖形界面,并且在Win CE平臺(tái)上可以使用Windows 95/98上的編程工具(如Visual Basic、V
25、isual C++等)、使絕大多數(shù)的應(yīng)用軟件只需簡(jiǎn)單的修改和移植就可以在Windows CE平臺(tái)上繼續(xù)使用。</p><p><b> 3.VxWorks</b></p><p> VxWorks操作系統(tǒng)是美國(guó) WIND RIVER 公司于1983年設(shè)計(jì)開(kāi)發(fā)的一種嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS),是嵌入式開(kāi)發(fā)環(huán)境的關(guān)鍵組成部分。良好的持續(xù)發(fā)展能力、高性能的內(nèi)核以及友
26、好的用戶(hù)開(kāi)發(fā)環(huán)境,在嵌入式實(shí)時(shí)操作系統(tǒng)領(lǐng)域占據(jù)一席之地。它以其良好的可靠性和卓越的實(shí)時(shí)性被廣泛地應(yīng)用在通信、軍事、航空、航天等高精尖技術(shù)及實(shí)時(shí)性要求極高的領(lǐng)域中,如衛(wèi)星通訊、軍事演習(xí)、彈道制導(dǎo)、飛機(jī)導(dǎo)航等,甚至在1997年4月登陸火星表面的火星探測(cè)器上也使用到了VxWorks。</p><p><b> OSE</b></p><p> OSE主要是由ENEA D
27、ata AB 下屬的ENEA OSE Systems AB負(fù)責(zé)開(kāi)發(fā)和技術(shù)服務(wù)的,一直以來(lái)都充當(dāng)著實(shí)時(shí)操作系統(tǒng)以及分布式和容錯(cuò)性應(yīng)用的先鋒,并保持良好的發(fā)展態(tài)勢(shì)。 </p><p> OSE的客戶(hù)深入到電信,數(shù)據(jù),工控,航空等領(lǐng)域,尤其在電信方面,該公司已經(jīng)有了十余年的開(kāi)發(fā)經(jīng)驗(yàn),同諸如愛(ài)立信,諾基亞,西門(mén)子等知名公司確定了良好的關(guān)系。</p><p> 5. Nucleus</p&
28、gt;<p> Nucleus PLUS是為實(shí)時(shí)嵌入式應(yīng)用而設(shè)計(jì)的一個(gè)搶先式多任務(wù)操作系統(tǒng)內(nèi)核,其95%的代碼是用ANSIC寫(xiě)成的,因此非常便于移植并能夠支持大多數(shù)類(lèi)型的處理器。</p><p> Nucleus PLUS采用了軟件組件的方法。每個(gè)組件具有單一而明確的目的,通常由幾個(gè)C及匯編語(yǔ)言模塊構(gòu)成,提供清晰的外部接口,對(duì)組件的引用就是通過(guò)這些接口完成的。由于采用了軟件組件的方法,使Nucl
29、eus PLUS 的各個(gè)組件非常易于替換和復(fù)用。</p><p><b> ECos</b></p><p> eCos是RedHat公司開(kāi)發(fā)的源代碼開(kāi)放的嵌入式RTOS產(chǎn)品,是一個(gè)可配置、可移植的嵌入式實(shí)時(shí)操作系統(tǒng),設(shè)計(jì)的運(yùn)行環(huán)境為RedHat的GNUPro和GNU開(kāi)發(fā)環(huán)境。eCOS的所有部分都開(kāi)放源代碼,可以按照需要自由修改和添加。eCOS的關(guān)鍵技術(shù)是操作系統(tǒng)
30、可配置性,允許用戶(hù)組和自己的實(shí)時(shí)組件和函數(shù)以及實(shí)現(xiàn)方式,特別允許eCOS的開(kāi)發(fā)則定制自己的面向應(yīng)用的操作系統(tǒng),使eCos能有更廣泛的應(yīng)用范圍。</p><p><b> μC/OS-II</b></p><p> μC/OS-II是一個(gè)源碼公開(kāi)、可移植、可固化、可裁剪、占先式的實(shí)時(shí)多任務(wù)操作系統(tǒng)。其絕大部分源碼是用ANSI C寫(xiě)的,使其可以方便的移植并支持大多數(shù)類(lèi)
31、型的處理器。μC/OS-II通過(guò)了聯(lián)邦航空局(FAA)商用航行器認(rèn)證。自1992年問(wèn)世以來(lái),μC/OS-II已經(jīng)被應(yīng)用到數(shù)以百計(jì)的產(chǎn)品中。μC/OS-II占用很少的系統(tǒng)資源,并且在高校教學(xué)使用是不需要申請(qǐng)?jiān)S可證。</p><p><b> Uitron</b></p><p> TRON是指“實(shí)時(shí)操作系統(tǒng)內(nèi)核(The Real-time Operating sys
32、tem Nucleux)”,它是在1984年由東京大學(xué)的Sakamura博士提出的,目的是為了建立一個(gè)理想的計(jì)算機(jī)體系結(jié)構(gòu)。通過(guò)工業(yè)界和大學(xué)院校的合作,TRON方案正被逐步用到全新概念的計(jì)算機(jī)體系結(jié)構(gòu)中。</p><p> uITRON是TRON的一個(gè)子方案,它具有標(biāo)準(zhǔn)的實(shí)時(shí)內(nèi)核,適用于任何小規(guī)模的嵌入式系統(tǒng),日本國(guó)內(nèi)現(xiàn)有很多基于該內(nèi)核的產(chǎn)品,其中消費(fèi)電器較多。目前已成為日本事實(shí)上的工業(yè)標(biāo)準(zhǔn)[2]。</p
33、><p><b> uITRON</b></p><p> TRON明確的設(shè)計(jì)目標(biāo)使其甚至比Linux更適合于做嵌入式應(yīng)用,內(nèi)核小,啟動(dòng)速度快,即時(shí)性能好,也很適合漢字系統(tǒng)的開(kāi)發(fā)。另外,TRON的成功還來(lái)源于如下兩個(gè)重要的條件:</p><p><b> 1)它是免費(fèi)的;</b></p><p>
34、 2)它已經(jīng)建立了開(kāi)放的標(biāo)準(zhǔn),形成了較完善的軟硬件配套開(kāi)發(fā)環(huán)境,較好地形成了產(chǎn)業(yè)化。</p><p> 1.4嵌入式系統(tǒng)的未來(lái)</p><p> 早在1990年之前,嵌入式系統(tǒng)通常是很簡(jiǎn)單的且具有很長(zhǎng)的產(chǎn)品生命周期的自主設(shè)備。近些年來(lái),嵌入式工業(yè)經(jīng)歷了巨大的變革。</p><p> 1)產(chǎn)品市場(chǎng)窗口現(xiàn)在預(yù)計(jì)翻番的周期狂熱到6~9個(gè)月。</p>
35、<p> 2)全球重新定義市場(chǎng)的機(jī)會(huì)和膨脹的應(yīng)用空間。</p><p> 3)互聯(lián)現(xiàn)在是一個(gè)需求而不是輔助性的,包括用有線和剛剛顯露頭角的無(wú)線技術(shù)。</p><p> 4)基于電子的產(chǎn)品更復(fù)雜化。</p><p> 5)互聯(lián)嵌入式系統(tǒng)產(chǎn)生新的依賴(lài)網(wǎng)絡(luò)基礎(chǔ)設(shè)施的應(yīng)用。</p><p> 6)微處理器的處理能力按莫爾定律(Mo
36、ore’s L aw)預(yù)計(jì)的速度在增加。該定律認(rèn)為集成電路和晶體管個(gè)數(shù)每18個(gè)月翻一番。</p><p> 第二章 嵌入式Linux操作系統(tǒng)</p><p> 2.1嵌入式Linux及其特點(diǎn)</p><p> 2.1.1 Linux的優(yōu)勢(shì)</p><p> 對(duì)上層應(yīng)用開(kāi)發(fā)者而言,嵌入式系統(tǒng)需要的是一套高度簡(jiǎn)練、界面友善、質(zhì)量可靠、應(yīng)
37、用廣泛、易開(kāi)發(fā)、多任務(wù),并且價(jià)格低廉的操作系統(tǒng)。因?yàn)長(zhǎng)inux 的開(kāi)放性,同時(shí)支持不同的設(shè)備,支持不同的配置。Linux 對(duì)廠商不偏不倚而且成本極低,能夠很快成為用于各種設(shè)備的操作系統(tǒng)。如今,業(yè)界已經(jīng)達(dá)成共識(shí):即嵌入式linux 是大勢(shì)所趨,其巨大的市場(chǎng)潛力與醞釀的無(wú)限商機(jī)必然會(huì)吸引眾多的廠商進(jìn)入這一領(lǐng)域。</p><p> 2.1.2嵌入式Linux及技術(shù)特點(diǎn)</p><p> 嵌入
38、式Linux 操作系統(tǒng)開(kāi)發(fā)已經(jīng)開(kāi)辟了很大的市場(chǎng),出現(xiàn)了一批新型的公司參加這方面的競(jìng)爭(zhēng),他們利用自己掌握的用Linux 達(dá)到嵌入式的方法,吸引投資,開(kāi)發(fā)出成型的產(chǎn)品,如Lineo, TimeSys, FsmLabs 等;也有一些傳統(tǒng)的Linux 公司開(kāi)辟了這方面的研究,如RedHat, VA Linux 等:更值得重視的是,一些傳統(tǒng)的大公司如IBM, SGI, Motorola, Intel 等也進(jìn)行了Linux的嵌入式方面的研究和開(kāi)發(fā);
39、另外還有一些開(kāi)發(fā)專(zhuān)用嵌入式操作系統(tǒng)的公司,如Lynx公司從專(zhuān)用操作系統(tǒng)方向轉(zhuǎn)型到嵌入式Linux 系統(tǒng),并且更名為L(zhǎng)ynuxWorks 。</p><p> 1. RT-Linux 內(nèi)核互換</p><p> RT-Linux (Real TimeLinux)是由Fsmlabs 公司開(kāi)發(fā)的。RT-Linux 是利用Linux進(jìn)行實(shí)時(shí)系統(tǒng)開(kāi)發(fā)比較早的嘗試,新墨西哥州大學(xué)計(jì)算機(jī)系的Vict
40、oror Yodaiken 和Michael Baranov在1996年就開(kāi)始了對(duì)RT-Linux 的開(kāi)發(fā)。根據(jù)Linuxdevices.com的調(diào)查情況,有5% 的用戶(hù)已經(jīng)將RT-Linux 使用到了他們的嵌入式應(yīng)用中。</p><p> RT-Linux 的原理是將Linux 的內(nèi)核代碼做一些修改,將L1nuX本身的任務(wù)以及Linux內(nèi)核本身作為一個(gè)優(yōu)先級(jí)最低的任務(wù),而實(shí)時(shí)任務(wù)作為優(yōu)先級(jí)最高的任務(wù),即在實(shí)時(shí)
41、任務(wù)存在的情況下運(yùn)行實(shí)時(shí)任務(wù),否則才運(yùn)行Linux 本身的任務(wù),實(shí)時(shí)任務(wù)不同于Linux 普通進(jìn)程,它是以Linux 的內(nèi)核模塊的形式存在的。通用的RT-Linux 原理如圖 2-1所示。</p><p><b> 圖 2-1</b></p><p> 從圖中可以看到,RT-Linux 實(shí)際上工作在Linux 內(nèi)核和硬件中間,它最先知道硬件的信息,可以得到最快的響
42、應(yīng)速度;實(shí)時(shí)任務(wù)直接和RT-Linux內(nèi)核進(jìn)行交互,縮短了到硬件的時(shí)間,也提高了實(shí)時(shí)性。并且,實(shí)時(shí)任務(wù)和Linux普通進(jìn)程之間也有通訊方式,對(duì)實(shí)時(shí)任務(wù)的監(jiān)控可以在Linux 進(jìn)程這一端執(zhí)行。這種實(shí)現(xiàn)方法可以充分利用Linux 的強(qiáng)大功能和RT-Linux 的實(shí)時(shí)性能[3]。</p><p> 2. Embedix —個(gè)性化內(nèi)核</p><p> Embedix 和基于Embedix 的
43、一整套嵌入式Linux 開(kāi)發(fā)環(huán)境是由Lineo 公司開(kāi)發(fā)的。Embedix 是基于PowerPC 和x86 平臺(tái)開(kāi)發(fā)的,它提供了Linux 的強(qiáng)大功能還可以對(duì)需要功能進(jìn)行剪裁,對(duì)嵌入式設(shè)備進(jìn)行支持。通過(guò)使用Embedix 可以為自己的嵌入式應(yīng)用創(chuàng)建一個(gè)個(gè)性化的內(nèi)核。Embedix 的設(shè)計(jì)使用了模塊化的設(shè)計(jì)方案,方便剪裁系統(tǒng),從而可以生成最適應(yīng)需求的Embedix 內(nèi)核,達(dá)到體積和功能的最優(yōu)化。同時(shí)Line。還提供了基于Embedix 的
44、集成開(kāi)發(fā)環(huán)境、實(shí)時(shí)擴(kuò)展方案、GUI 接口等等。其中,集成開(kāi)發(fā)環(huán)境包括了內(nèi)核遠(yuǎn)程調(diào)試器、實(shí)時(shí)任務(wù)調(diào)試器和跟蹤器等等。</p><p> 3. Blue Cat Linux —開(kāi)放源碼</p><p> B1ueCat Linux 是由LynuxWorks 公司提供的。BlueCat是基于開(kāi)放源碼的模式進(jìn)行開(kāi)發(fā)的。它基于Red Hat 的內(nèi)核,允許使用運(yùn)行Red Hat Linux 的交叉
45、平臺(tái)機(jī)器開(kāi)發(fā)嵌入式應(yīng)用系統(tǒng)。目前B1ueCat 也支持32 位的PowerPC 和Pentium 兩種微處理芯片。同時(shí)Lynuxl9orks 公司提供了B1ueCat 開(kāi)發(fā)工具,包括C 和C + + 編譯器和針對(duì)目標(biāo)芯片的匯編器。并且現(xiàn)在的開(kāi)發(fā)工具正在準(zhǔn)備向Microsoft Visual Studio上移植。</p><p> 4. Hard Hat Linux 高性能小體積</p><p
46、> MontaVista 公司的Hard Hat Linux 是專(zhuān)門(mén)為將Linux 做成嵌入的系統(tǒng)而推出的??梢愿鶕?jù)Hard Hat Linux 為系統(tǒng)啟動(dòng)和運(yùn)行環(huán)境做出合適于嵌入式硬件系統(tǒng)環(huán)境的配置,以獲得最好的性能和最小的體積。針對(duì)Hard Hat Linux,MontaVista公司提供了CDK CCross Development Kit,用作Hard Hat 的交叉開(kāi)發(fā)環(huán)境,提供了C/C++ 的編譯器、調(diào)試器、性能監(jiān)控
47、工具和網(wǎng)絡(luò)工具,支持在x86/Pentium 處理器芯片上的Red HatLinux 上運(yùn)行CDK 的PowerPC 版本,通過(guò)以太網(wǎng)或者串口線對(duì)目標(biāo)系統(tǒng)進(jìn)行開(kāi)發(fā),目標(biāo)系統(tǒng)是PowerPC 體系結(jié)構(gòu)上的HardHat Linux 系統(tǒng)和針對(duì)Hard Hat Linux 開(kāi)發(fā)的嵌入式應(yīng)用。這種環(huán)境就是MontaYista的最大的特性—交叉開(kāi)發(fā)調(diào)試環(huán)境。</p><p> 2.2 Linux文件系統(tǒng)的層次結(jié)構(gòu)<
48、;/p><p> Linux文件系統(tǒng)包含3類(lèi)文件:</p><p> 1)普通文件:這些文件只是字節(jié)的集合。系統(tǒng)沒(méi)有在文件中加入特定的結(jié)構(gòu)。它們用作文本文件(包括源程序文件),程序使用的數(shù)據(jù)文件,以及程序本身的可執(zhí)行二進(jìn)制文件。</p><p> 2)目錄文件:目錄是一種結(jié)構(gòu)。它容許將一組文件放在一起。從概念上講,目錄好比是—個(gè)容器,可以用來(lái)存放其他文件和目錄。事
49、實(shí)上,目錄本身只包含其他文件的名稱(chēng)和一些類(lèi)似如何從磁盤(pán)上找到這此文件的簡(jiǎn)單信息。由于一個(gè)目錄可以包含了目錄名稱(chēng),文件系統(tǒng)形成一個(gè)層次結(jié)構(gòu)。</p><p> 3)特殊文件:許多不同的文件類(lèi)型屬于這一范圍。當(dāng)你深入學(xué)習(xí)時(shí)將看到達(dá)一切。簡(jiǎn)單講,特殊文件與進(jìn)程之間的通信以及進(jìn)程和連接到機(jī)器的各種各樣的外部設(shè)備之間的通信有關(guān)。</p><p> 所有這些類(lèi)型的文件均放在一個(gè)大的樹(shù)形層次結(jié)構(gòu)中。
50、樹(shù)的頂部是一個(gè)單獨(dú)的目錄,稱(chēng)為根(root)目錄(請(qǐng)勿與root登錄名相混淆)。并且用斜杠符號(hào)/表示根目錄。在根目錄下,有一些用于不同目的的標(biāo)準(zhǔn)子目錄和文件。這些高層的目錄和文件結(jié)構(gòu)從傳統(tǒng)的意義講是標(biāo)準(zhǔn)的,但并非—定要那樣去做。</p><p> Linux目錄層次結(jié)構(gòu)中最重要的分支表示,應(yīng)該用pwd,cd和ls命令去考察你自己機(jī)器上的目錄層次結(jié)構(gòu)。如果想從目錄樹(shù)中任何一點(diǎn)問(wèn)到起始目錄,可以用cd命令。并用相應(yīng)
51、的路徑名作為參數(shù)。但是,也可以只送入cd命令而不給參數(shù)。這是使直接回到起始目錄的一條捷徑[4]。</p><p> 2.3 Linux基本命令</p><p><b> 1.su </b></p><p> su命令是最基本的命令之一,常用于不同用戶(hù)間切換。例如,如果登錄為 user1,要切換為user2,只要用如下命令: $su use
52、r2 ,然后系統(tǒng)提示輸入user2口令,輸入正確的口令之后就可以切換到user2,完成之后就可以用exit命令返回到user1。 su命令的常見(jiàn)用法是變成根用戶(hù)或超級(jí)用戶(hù)。如果發(fā)出不帶用戶(hù)名的su命令 ,則系統(tǒng)提示輸入根口令,輸入之后則可切換為根用戶(hù)。 如果登錄為根用戶(hù),則可以用su命令成為系統(tǒng)上任何用戶(hù)而不需要口令。 </p><p><b> 2.pwd </b></p>
53、<p> pwd命令也是最常用最基本的命令之一,用于顯示用戶(hù)當(dāng)前所在的目錄。 </p><p><b> 3.cd </b></p><p> cd命令不僅顯示當(dāng)前狀態(tài),還改變當(dāng)前狀態(tài),它的用發(fā)跟dos下的cd命令基本一致。 </p><p> cd ..可進(jìn)入上一層目錄 </p><p> cd
54、-可進(jìn)入上一個(gè)進(jìn)入的目錄 </p><p> cd ~可進(jìn)入用戶(hù)的home目錄 </p><p><b> 4.ls </b></p><p> ls命令跟dos下的dir命令一樣,用于顯示當(dāng)前目錄的內(nèi)容。如果想取得詳細(xì)的信息,可用ls -l命令, 這樣就可以顯示目錄內(nèi)容的詳細(xì)信息。 如果目錄下的文件太多,用一屏顯示不了,可以用ls -l
55、 |more分屏顯示 。 </p><p><b> 5.tar</b></p><p> 最初用于建立磁帶備份系統(tǒng),目前廣泛用于建立文件發(fā)布檔案。可用如下方法建立tar檔案: $tar cvf 。例如,如果要將當(dāng)前目錄中所有文件存檔到y(tǒng)e。tar中,可用如下命令: $tar cvf ye.tar *.* 。要瀏覽檔案內(nèi)容,將c選項(xiàng)變成t;如果要瀏覽ye.tar檔
56、案中的內(nèi)容,可用如下命令: $tar tvf ye.tar ;要取出檔案內(nèi)的內(nèi)容,將c選項(xiàng)變成x;如果要將ye,tar檔案中的內(nèi)容取到當(dāng)前目錄中,可用如下命令: $tar xvf ye tar 。</p><p><b> 6. mkdir </b></p><p> 這個(gè)命令很簡(jiǎn)單,跟dos的md命令用法幾乎一樣,用于建立目錄。 </p><
57、p><b> 7.cp命令</b></p><p> 用于復(fù)制文件或目錄。cp命令可以一次復(fù)制多個(gè)文件,例如: $cp *.txt *.doc *.bak /home,將當(dāng)前目錄中擴(kuò)展名為txt、doc和bak的文件全部復(fù)制到/home目錄中。 如果要復(fù)制整個(gè)目錄及其所有子目錄,可以用cp -R命令。 </p><p><b> 8.rm <
58、;/b></p><p> rm命令用于刪除文件或目錄。 rm命令會(huì)強(qiáng)制刪除文件,如果想要在刪除時(shí)提示確認(rèn),可用rm -i命令。 如果要?jiǎng)h除目錄,可用rm -r命令。rm -r命令在刪除目錄時(shí),每刪除一個(gè)文件或目錄都會(huì)顯示提示,如果目錄太大,響應(yīng)每個(gè)提示是不現(xiàn)實(shí)的。這時(shí)可以用 rm -rf命令來(lái)強(qiáng)制刪除目錄,這樣即使用了-i標(biāo)志也當(dāng)無(wú)效處理。 </p><p><b>
59、 9.mv </b></p><p> mv命令用于移動(dòng)文件和更名文件。例如: $mv ye.txt /home 將當(dāng)前目錄下的ye.txt文件移動(dòng)到/home目錄下;$mv ye.txt ye1.txt ,將ye.txt文件改名為ye1.txt。類(lèi)似于跟cp命令,mv命令也可以一次移動(dòng)多個(gè)文件,在此不再贅敘。 </p><p> 10.reboot —— 重啟命令 <
60、;/p><p> 11.halt —— 關(guān)機(jī)命令[5]</p><p> 2.4 Linux嵌入式系統(tǒng)開(kāi)發(fā)平臺(tái)</p><p> 2.4.1系統(tǒng)軟件操作平臺(tái)</p><p> 操作系統(tǒng)是一種在計(jì)算機(jī)上運(yùn)行的軟件。它的主要任務(wù)是管理計(jì)算機(jī)上的系統(tǒng)資源,為用戶(hù)提供使用計(jì)算機(jī)及其外部設(shè)備的接口。它存在的目的是為了管理所有硬件資源,并且提供應(yīng)用軟
61、件一個(gè)合適的操作環(huán)境。嵌入式系統(tǒng)由于硬件的限制,通常只具有極稀少的硬件資源,如主頻較低的CPU、較小的內(nèi)存、小容量的固態(tài)電子盤(pán)芯片DoC(DiskonChip)或DoM(DiskonModule)替代磁盤(pán)等。在使用電池的系統(tǒng)中,它還要實(shí)現(xiàn)低功耗,延長(zhǎng)電池使用時(shí)間的功能。</p><p> Linux作為嵌入式操作系統(tǒng)是完全可行的。因?yàn)長(zhǎng)inux提供了完成嵌入功能的基本內(nèi)核和所需要的所有用戶(hù)界面,能處理嵌入式任務(wù)
62、和用戶(hù)界面。將Linux看作是連續(xù)的統(tǒng)一體,從一個(gè)具有內(nèi)存管理、任務(wù)切換和時(shí)間服務(wù)及其它分拆的微內(nèi)核到完整的服務(wù)器,支持所有的文件系統(tǒng)和網(wǎng)絡(luò)服務(wù)。Linux作為嵌入式系統(tǒng),是一個(gè)帶有很多優(yōu)勢(shì)的新成員。它對(duì)許多CPU和硬件平臺(tái)都是易移植、穩(wěn)定、功能強(qiáng)大、易于開(kāi)發(fā)的。</p><p> 嵌入式Linux系統(tǒng)需要下面三個(gè)基本元素:系統(tǒng)引導(dǎo)工具(用于機(jī)器加電后的系統(tǒng)定位引導(dǎo))、Linux微內(nèi)核(內(nèi)存管理、程序管理)、初
63、始化進(jìn)程。但如果要它成為完整的操作系統(tǒng)并且繼續(xù)保持小型化,還必須加上硬件驅(qū)動(dòng)程序、硬件接口程序和應(yīng)用程序組。</p><p> Linux是基于GNU的C編譯器,作為GNU工具鏈的一部分,與gdb源調(diào)試器一起工作的。它提供了開(kāi)發(fā)嵌入式Linux系統(tǒng)的所有軟件工具。</p><p> 2.4.2系統(tǒng)硬件平臺(tái)</p><p> 在選擇硬件時(shí),常由于缺乏完整或精確的
64、信息而使硬件選擇成為復(fù)雜且困難的工作。硬件開(kāi)發(fā)成本常是我們很關(guān)心的。當(dāng)考慮硬件成本時(shí),須要考慮產(chǎn)品的整個(gè)成本而不僅是CPU的成本。因?yàn)楹线m的CPU,一旦加上總線邏輯和延時(shí)電路使之與外設(shè)一起工作,硬件系統(tǒng)就可能變得非常昂貴。如果要尋找嵌入式軟件系統(tǒng),那么,應(yīng)首先確定硬件平臺(tái),即確定微處理器CPU的型號(hào)。</p><p> 現(xiàn)在比較流行的硬件平臺(tái)有Intel公司的StrongARM系列,Motorola公司的Dra
65、gonBall系列,NEC公司的VR系列,Hitachi公司的SH3、SH4系列等等。選定硬件平臺(tái)前,首先要確定系統(tǒng)的應(yīng)用功能和所需要的速度,并制定好外接設(shè)備和接口標(biāo)準(zhǔn)。這樣才能準(zhǔn)確地定位所需要的硬件方案,得到性?xún)r(jià)比最高的系統(tǒng)。</p><p> 2.4.3嵌入式Linux系統(tǒng)開(kāi)發(fā)模式</p><p> 嵌入式系統(tǒng)通常為一個(gè)資源受限的系統(tǒng)。直接在嵌入式系統(tǒng)的硬件平臺(tái)上編寫(xiě)軟件比較困難,
66、有時(shí)甚至是不可能的。一般流程見(jiàn)圖2。目前,一般采用的辦法是,先在通用計(jì)算機(jī)上編寫(xiě)程序,然后,通過(guò)交叉編譯,生成目標(biāo)平臺(tái)上可運(yùn)行的二進(jìn)制代碼格式,最后下載到目標(biāo)平臺(tái)上的特定位置上運(yùn)行,具體步驟如下:</p><p> 第一步,建立嵌入式Linux交叉開(kāi)發(fā)環(huán)境。目前,常用的交叉開(kāi)發(fā)環(huán)境主要有開(kāi)放和商業(yè)兩種類(lèi)型。開(kāi)放的交叉開(kāi)發(fā)環(huán)境的典型代表是GNU工具鏈,目前已經(jīng)能夠支持x86、ARM、MIPS、PowerPC等多種
67、處理器。商業(yè)的交叉開(kāi)發(fā)環(huán)境主要有MetrowerksCodeWarr、ARMSoftwareDevelopmentToolkit、SDSCrosscompiler、WindRiverTornado、MicrosoftEmbeddedVisualC++等。交叉開(kāi)發(fā)環(huán)境是指編譯、鏈接和調(diào)試嵌入式應(yīng)用軟件的環(huán)境。它與運(yùn)行嵌入式應(yīng)用軟件的環(huán)境有所不同,通常采用宿主機(jī)/目標(biāo)機(jī)模式。</p><p> 第二步,交叉編譯和鏈
68、接。在完成嵌入式軟件的編碼之后,就是進(jìn)行編譯和鏈接,以生成可執(zhí)行代碼。由于開(kāi)發(fā)過(guò)程大多是在Intel公司x86系列CPU的通用計(jì)算機(jī)上進(jìn)行的,而目標(biāo)環(huán)境的處理器芯片卻大多為ARM、MIPS、PowerPC、DragonBall等系列的微處理器,這就要求在建立好的交叉開(kāi)發(fā)環(huán)境中進(jìn)行交叉編譯和鏈接。</p><p> 例如,在基于ARM體系結(jié)構(gòu)的gcc交叉開(kāi)發(fā)環(huán)境中,arm-linux-gcc是交叉編譯器,arm-
69、linux-ld是交叉鏈接器。通常情況下,并不是每一種體系結(jié)構(gòu)的嵌入式微處理器都只對(duì)應(yīng)于一種交叉編譯器和交叉鏈接器。如對(duì)于M68K體系結(jié)構(gòu)的gcc交叉開(kāi)發(fā)環(huán)境而言,就對(duì)應(yīng)于多種不同的編譯器和鏈接器。如果使用的是COFF格式的可執(zhí)行文件,那么在編譯Linux內(nèi)核時(shí),需要使用m68k-coff-gcc和m68k-coff-ld,而在編譯應(yīng)用程序時(shí)則需要使用m68k-coff-pic-gcc和m68k-coff-pic-ld。編寫(xiě)好的嵌入式軟
70、件經(jīng)過(guò)交叉編譯和交叉鏈接后,通常會(huì)生成兩種類(lèi)型的可執(zhí)行文件:用于調(diào)試的可執(zhí)行文件和用于固化的可執(zhí)行文件。</p><p><b> 第三步,交叉調(diào)試。</b></p><p> ?、儆布{(diào)試。如果不采用在線仿真器,可以讓CPU直接在其內(nèi)部實(shí)現(xiàn)調(diào)試功能,并通過(guò)在開(kāi)發(fā)板上引出的調(diào)試端口,發(fā)送調(diào)試命令和接收調(diào)試信息,完成調(diào)試過(guò)程。目前,Motorola公司提供的開(kāi)發(fā)板上使
71、用的是DBM調(diào)試端口,而ARM公司提供的開(kāi)發(fā)板上使用的則是JTAG調(diào)試端口。使用合適的軟件工具與這些調(diào)試端口進(jìn)行連接,可以獲得與ICE類(lèi)似的調(diào)試效果。</p><p> ?、谲浖{(diào)試。在嵌入式Linux系統(tǒng)中,Linux系統(tǒng)內(nèi)核調(diào)試,可以先在Linux內(nèi)核中設(shè)置一個(gè)調(diào)試樁(debugstub),用作調(diào)試過(guò)程中和宿主機(jī)之間的通信服務(wù)器。然后,可以在宿主機(jī)中通過(guò)調(diào)試器的串口與調(diào)試樁進(jìn)行通信,并通過(guò)調(diào)試器控制目標(biāo)機(jī)上L
72、inux內(nèi)核的運(yùn)行。</p><p> 嵌入式上層應(yīng)用軟件的調(diào)試可以使用本地調(diào)試和遠(yuǎn)程調(diào)試兩種方法。如果采用的是本地調(diào)試,首先要將所需的調(diào)試器移植到目標(biāo)系統(tǒng)中,然后就可以直接在目標(biāo)機(jī)上運(yùn)行調(diào)試器來(lái)調(diào)試應(yīng)用程序了;如果采用的是遠(yuǎn)程調(diào)試,則需要移植一個(gè)調(diào)試服務(wù)器到目標(biāo)系統(tǒng)中,并通過(guò)它與宿主機(jī)上的調(diào)試器共同完成應(yīng)用程序的調(diào)試。在嵌入式Linux系統(tǒng)的開(kāi)發(fā)中,遠(yuǎn)程調(diào)試時(shí)目標(biāo)機(jī)上使用的調(diào)試服務(wù)器通常是gdbserver,
73、而宿主機(jī)上使用的調(diào)試器則是gdb。兩者相互配合共同完成調(diào)試過(guò)程。</p><p> 第四步,系統(tǒng)測(cè)試。整個(gè)軟件系統(tǒng)編譯過(guò)程,嵌入式系統(tǒng)的硬件一般采用專(zhuān)門(mén)的測(cè)試儀器進(jìn)行測(cè)試,而軟件則需要有相關(guān)的測(cè)試技術(shù)和測(cè)試工具的支持,并要采用特定的測(cè)試策略。測(cè)試技術(shù)指的是軟件測(cè)試的專(zhuān)門(mén)途徑,以及能夠更加有效地運(yùn)用這些途徑的特定方法。在嵌入式軟件測(cè)試中,常常要在基于目標(biāo)機(jī)的測(cè)試和基于宿主機(jī)的測(cè)試之間做出折衷?;谀繕?biāo)機(jī)的測(cè)試需要
74、消耗較多的時(shí)間和經(jīng)費(fèi),而基于宿主機(jī)的測(cè)試雖然代價(jià)較小,但畢竟是在仿真環(huán)境中進(jìn)行的,因此難以完全反映軟件運(yùn)行時(shí)的實(shí)際情況。這兩種環(huán)境下的測(cè)試可以發(fā)現(xiàn)不同的軟件缺陷,關(guān)鍵是要對(duì)目標(biāo)機(jī)環(huán)境和宿主機(jī)環(huán)境下的測(cè)試內(nèi)容進(jìn)行合理取舍。嵌入式軟件測(cè)試中經(jīng)常用到的測(cè)試工具主要有:內(nèi)存分析工具、性能分析工具、覆蓋分析工具、缺陷跟蹤工具等,在這里不加詳述。</p><p> 以下即為一個(gè)典型開(kāi)發(fā)工具的使用流程:</p>
75、<p> ①寫(xiě)入或植入引導(dǎo)碼;</p><p> ②向串口打印字符串的編碼;</p><p> ?、蹖db目標(biāo)碼移植工作串口,可與另一臺(tái)運(yùn)行g(shù)db程序的Linux主機(jī)系統(tǒng)對(duì)話(huà);</p><p> ?、芾胓db讓硬件和軟件初始化碼在Linux內(nèi)核啟動(dòng)時(shí)工作;</p><p> ?、軱inux內(nèi)核啟動(dòng),串口成為L(zhǎng)inux控制口
76、并可用于后續(xù)開(kāi)發(fā);</p><p> ⑥如果在目標(biāo)硬件上已運(yùn)行了完整的Linux內(nèi)核,即可調(diào)試用戶(hù)的應(yīng)用進(jìn)程[6]。</p><p> 第三章 GPRS 簡(jiǎn)介</p><p> 3.1 GPRS基礎(chǔ)知識(shí)</p><p> GPRS———GeneralPacketRadioService,通用無(wú)線分組業(yè)務(wù),是一種基于GSM系統(tǒng)的無(wú)線分
77、組交換技術(shù),提供端到端的、廣域的無(wú)線IP連接。通俗的講,GPRS是一項(xiàng)高速數(shù)據(jù)處理的科技,方法是以“分組”的形式傳送資料到用戶(hù)手上。GPRS是GSM Phase2.1規(guī)范實(shí)現(xiàn)的內(nèi)容之一,能提供比現(xiàn)有GSM網(wǎng)9.6kbit/s更高的數(shù)據(jù)率。GPRS采用與GSM相同的頻段、頻帶寬度、突發(fā)結(jié)構(gòu)、無(wú)線調(diào)制標(biāo)準(zhǔn)、跳頻規(guī)則以及相同的TDMA幀結(jié)構(gòu)。因此,在GSM系統(tǒng)的基礎(chǔ)上構(gòu)建GPRS系統(tǒng)時(shí),GSM系統(tǒng)中的絕大部分部件都不需要作硬件改動(dòng),只需作軟件
78、升級(jí)。雖然GPRS是作為現(xiàn)有GSM網(wǎng)絡(luò)向第三代移動(dòng)通信演變的過(guò)渡技術(shù),但是它在許多方面都具有顯著的優(yōu)勢(shì)。目前,香港作為第一個(gè)進(jìn)行GPRS實(shí)地測(cè)試的地區(qū),已經(jīng)取得了良好的收效。 在GSM系統(tǒng)中引入3個(gè)主要組件:GPRS服務(wù)支持結(jié)點(diǎn)(SGSN, Serving GPRS Supporting Node)、GPRS網(wǎng)關(guān)支持結(jié)點(diǎn)(GGSN, Gateway GPRS Support Node)、分組控制單元(PCU)。該技術(shù)建立在GSM 網(wǎng)絡(luò)的
79、基礎(chǔ)上,</p><p> 3.2 GPRS的主要特點(diǎn)</p><p> (1) GPRS采用分組交換技術(shù),高效傳輸高速或低速數(shù)據(jù)和信令,優(yōu)化了對(duì)網(wǎng)絡(luò)資源和無(wú)線資源的利用。</p><p> (2) 定義了新的GPRS無(wú)線信道,且分配方式十分靈活:每個(gè)TDMA幀可分配1到8個(gè)無(wú)線接口時(shí)隙。時(shí)隙能為活動(dòng)用戶(hù)所共享,且向上鏈路和向下鏈路的分配是獨(dú)立的。</p
80、><p> (3) 支持中、高速率數(shù)據(jù)傳輸,可提供9.05 ---171.2kbit/s的數(shù)據(jù)傳輸速率(每用戶(hù))。GPRS采用了與GSM不同的信道編碼方案,定義了CS-1、CS-2、CS-3和CS-4四種編碼方案。</p><p> (4) GPRS網(wǎng)絡(luò)接入速度快,提供了與現(xiàn)有數(shù)據(jù)網(wǎng)的無(wú)縫連接。</p><p> (5) GPRS支持基于標(biāo)準(zhǔn)數(shù)據(jù)通信協(xié)議的應(yīng)用,可
81、以和IP網(wǎng)、X.25網(wǎng)互聯(lián)互通。支持特定的點(diǎn)到點(diǎn)和點(diǎn)到多點(diǎn)服務(wù),以實(shí)現(xiàn)一些特殊應(yīng)用如遠(yuǎn)程信息處理。GPRS也允許短消息業(yè)務(wù)(SMS)經(jīng)GPRS無(wú)線信道傳輸。</p><p> (6) GPRS的設(shè)計(jì)使得它既能支持間歇的爆發(fā)式數(shù)據(jù)傳輸,又能支持偶爾的大量數(shù)據(jù)的傳輸。它支持四種不同的QoS級(jí)別。GPRS能在0.5 ---1秒之內(nèi)恢復(fù)數(shù)據(jù)的重新傳輸。GPRS的計(jì)費(fèi)一般以數(shù)據(jù)傳輸量為依據(jù)。</p><
82、;p> (7) 在GSM PLMN中,GPRS引入兩個(gè)新的網(wǎng)絡(luò)節(jié)點(diǎn):一個(gè)是GPRS服務(wù)支持節(jié)點(diǎn)(SGSN),它和MSC在同一等級(jí)水平,并跟蹤單個(gè)MS的存儲(chǔ)單元,實(shí)現(xiàn)安全功能和接入控制。節(jié)點(diǎn)SGSN通過(guò)幀中繼連接到基站系統(tǒng)。另一個(gè)是GPRS網(wǎng)關(guān)支持節(jié)點(diǎn)GGSN,GGSN支持與外部分組交換網(wǎng)的互通,并經(jīng)由基于IP的GPRS骨干網(wǎng)和SGSN連通。</p><p> (8) GPRS的安全功能同現(xiàn)有的GSM安全
83、功能一樣。身份認(rèn)證和加密功能由SGSN來(lái)執(zhí)行。其中的密碼設(shè)置程序的算法、密鑰和標(biāo)準(zhǔn)與目前GSM中的一樣,不過(guò)GPRS使用的密碼算法是專(zhuān)為分組數(shù)據(jù)傳輸所優(yōu)化過(guò)的。GPRS移動(dòng)設(shè)備(ME)可通過(guò)SIM訪問(wèn)GPRS業(yè)務(wù),不管這個(gè)SIM是否具備GPRS功能。 </p><p> (9) 蜂窩選擇可由一個(gè)MS自動(dòng)進(jìn)行,或者基站系統(tǒng)指示MS選擇某一特定的蜂窩。MS在重選擇另一個(gè)蜂窩或蜂窩組(即一個(gè)路由區(qū))時(shí)會(huì)通知網(wǎng)絡(luò)。&l
84、t;/p><p> (10) 為了訪問(wèn)GPRS業(yè)務(wù),MS會(huì)首先執(zhí)行GPRS接入過(guò)程,以將它的存在告知網(wǎng)絡(luò)。在MS和SGSN之間建立一個(gè)邏輯鏈路,使得MS可進(jìn)行如下操作:接收基于GPRS的的SMS服務(wù)、經(jīng)由SGSN的尋呼、GPRS數(shù)據(jù)到來(lái)通知。 </p><p> (11) 為了收發(fā)GPRS數(shù)據(jù),MS會(huì)激活它所想用的分組數(shù)據(jù)地址。這個(gè)操作使MS可被相應(yīng)的GGGSN所識(shí)別,從而能開(kāi)始與外部數(shù)據(jù)
85、網(wǎng)絡(luò)的互通。 </p><p> (12) 用戶(hù)數(shù)據(jù)在MS和外部數(shù)據(jù)網(wǎng)絡(luò)之間透明地傳輸,它使用的方法是封裝和隧道技術(shù):數(shù)據(jù)包用特定的GPRS協(xié)議信息打包并在MS和GGSN之間傳輸。這種透明的傳輸方法縮減了GPRS PLMN對(duì)外部數(shù)據(jù)協(xié)議解釋的需求,而且易于在將來(lái)引入新的互通協(xié)議。用戶(hù)數(shù)據(jù)能夠壓縮,并有重傳協(xié)議保護(hù),因此數(shù)據(jù)傳輸高效且可靠。</p><p> (13) GPRS可以實(shí)現(xiàn)基
86、于數(shù)據(jù)流量、業(yè)務(wù)類(lèi)型及服務(wù)質(zhì)量等級(jí)(QoS)的計(jì)費(fèi)功能,計(jì)費(fèi)方式更加合理,用戶(hù)使用更加方便。 </p><p> 3.3 GPRS的技術(shù)優(yōu)勢(shì)</p><p><b> 1.資源利用率高</b></p><p> GPRS引入了分組交換的傳輸模式,使得原來(lái)采用電路交換模式的GSM傳輸數(shù)據(jù)方式發(fā)生了根本性的變化,這在無(wú)線資源稀缺的
87、情況下顯得尤為重要。按電路交換模式來(lái)說(shuō),在整個(gè)連接期內(nèi),用戶(hù)無(wú)論是否傳送數(shù)據(jù)都將獨(dú)自占有無(wú)線信道。而對(duì)于分組交換模式,用戶(hù)只有在發(fā)送或接收數(shù)據(jù)期間才占用資源,這意味著多個(gè)用戶(hù)可高效率地共享同一無(wú)線信道,從而提高了資源的利用率。GPRS用戶(hù)的計(jì)費(fèi)以通信的數(shù)據(jù)量為主要依據(jù),體現(xiàn)了"得到多少、支付多少"的原則。實(shí)際上,GPRS用戶(hù)的連接時(shí)間可能長(zhǎng)達(dá)數(shù)小時(shí),卻只需支付相對(duì)低廉的連接費(fèi)用。</p><p&g
88、t;<b> 2.傳輸速率高</b></p><p> GPRS可提供高達(dá)115kbit/s的傳輸速率(最高值為171.2kbit/s,不包括FEC)。這意味著通過(guò)便攜式電腦,GPRS用戶(hù)能和ISDN用戶(hù)一樣快速地上網(wǎng)瀏覽,同時(shí)也使一些對(duì)傳輸速率敏感的移動(dòng)多媒體應(yīng)用成為可能。</p><p><b> 3.接入時(shí)間短</b></p&g
89、t;<p> 分組交換接入時(shí)間縮短為少于1秒,能提供快速即時(shí)的連接,可大幅度提高一些事務(wù)(如信用卡核對(duì)、遠(yuǎn)程監(jiān)控等)的效率,并可使已有的Internet應(yīng)用(如E-mail、網(wǎng)頁(yè)瀏覽等)操作更加便捷、流暢。</p><p> 4.支持IP協(xié)議和X.25協(xié)議</p><p> GPRS支持因特網(wǎng)上應(yīng)用最廣泛的IP協(xié)議和X.25協(xié)議。而且由于GSM網(wǎng)絡(luò)覆蓋面廣,使得GPRS
90、能提供Internet和其它分組網(wǎng)絡(luò)的全球性無(wú)線接入。</p><p> 3.4 GPRS(M23)模塊</p><p> 3.4.1模塊(M23)特征</p><p> 本系統(tǒng)采用的是MigicARM2410實(shí)驗(yàn)箱,此實(shí)驗(yàn)箱自帶GPRS模塊,為BenQ的M23。其工作頻率為900/1800/1900三頻,且有如下特點(diǎn):</p><p>
91、; 1) 支持GSM/GRPS Class 4;</p><p> 2) 內(nèi)置TCPIP協(xié)議棧;</p><p> 3) 帶耳機(jī)話(huà)筒,可進(jìn)行語(yǔ)音撥號(hào)、收發(fā)短信;</p><p> 4) 提供API函數(shù)庫(kù),用戶(hù)簡(jiǎn)單調(diào)用即可撥號(hào)和收發(fā)短信;</p><p> 5) 雙調(diào)試接口,可以連接MagicARM270進(jìn)行調(diào)試,也可獨(dú)立外接DB9插
92、座調(diào)試。</p><p> 3.4.2 GPRS模塊無(wú)線上網(wǎng)AT指令簡(jiǎn)介</p><p> 1).定義PDP上下文 +CGDCONT</p><p><b> 圖3-1</b></p><p><b> 說(shuō)明:</b></p><p> 這一命令為由本地上下文識(shí)別參
93、數(shù)<cid>標(biāo)識(shí)的PDP上下文規(guī)定PDP上下文參數(shù)值。</p><p> 在微控(Wavecom)軟件中可定義11個(gè)PDP上下文。</p><p> 命令集的一個(gè)特殊形式+CGDCONT=<cid>使上下文號(hào)碼值<cid>成為未定義的。</p><p> 測(cè)試命令返回一個(gè)復(fù)合值。若MT支持幾種PDP類(lèi)型<PDP_typ
94、e>,則每個(gè)<PDP_type>的參數(shù)值范圍在單獨(dú)一行上返回。</p><p><b> 定義值</b></p><p> <cid>:(PDP上下文標(biāo)識(shí)符)一個(gè)數(shù)字參數(shù),用于規(guī)定特定PDP上下文定義(1-32)。此參數(shù)對(duì)于TE-MT接口是本地性質(zhì)的,用于其他的PDP上下文相關(guān)命令。</p><p> <
95、;PDP_ type>:(分組數(shù)據(jù)協(xié)議類(lèi)型)一個(gè)字符串參數(shù),用于規(guī)定分組數(shù)據(jù)協(xié)議類(lèi)型的字符串參數(shù)。</p><p> ??IP 因特網(wǎng)協(xié)議</p><p> ??PPP 點(diǎn)對(duì)點(diǎn)協(xié)議</p><p> <APN>:(接入點(diǎn)名稱(chēng))一個(gè)字符串參數(shù),作為邏輯名稱(chēng)用于選擇GGSN或外部分組數(shù)據(jù)網(wǎng)絡(luò)。</p&
96、gt;<p> 若該值為空或被忽略,則要求預(yù)定值。</p><p> <PDP_ address>:一個(gè)字符串參數(shù),用于標(biāo)識(shí)位于于PDP的地址空間中的MT。若該值為空或被忽略,則在PDP啟動(dòng)過(guò)程中由TE提供一個(gè)值,或者,若這也失敗,則要求一個(gè)動(dòng)態(tài)的地址。</p><p> 2).AT%CGPCO 進(jìn)行PAP認(rèn)證</p><p><
97、;b> 圖3-2</b></p><p><b> 說(shuō)明:</b></p><p> 設(shè)置用于激活上下文的PCO的參數(shù)</p><p><b> 參數(shù)值</b></p><p> < format >: 0 為16進(jìn)制模式, 1 為 ASCII 碼模式。<
98、;/p><p> < UserId >:一個(gè)字符串參數(shù),用于鑒定PDP上下文的用戶(hù)身份。</p><p> < Passwd>: 一個(gè)字符串參數(shù),PDP上下文的用戶(hù)密碼。</p><p> < cid >: 1 禁止PDP數(shù)據(jù)壓縮2 允許PDP數(shù)據(jù)壓縮</p><p> 3).禁止模塊進(jìn)入睡眠狀態(tài)$NO
99、SLEEP</p><p><b> 圖3-3</b></p><p><b> 說(shuō)明:</b></p><p> 該指令用于禁止或允許模塊進(jìn)入睡眠狀態(tài)</p><p><b> 參數(shù)值</b></p><p><b> <mo
100、de></b></p><p><b> 0: 允許</b></p><p><b> 1: 禁止</b></p><p> 4).TCP/IP目標(biāo)服務(wù)器地址設(shè)定$DESTINFO</p><p><b> 圖3-4</b></p>&l
101、t;p><b> 說(shuō)明:</b></p><p> 該指令用于設(shè)定遠(yuǎn)端服務(wù)器的IP地址以及端口號(hào)</p><p><b> 參數(shù)值</b></p><p> < ip_address >: 目標(biāo)服務(wù)器的IP地址</p><p> <protocol>: 1 為
102、 TCP, 2為 UDP</p><p> <port>: TCP/UDP端口號(hào), 1-65535</p><p> <dns_mode>: 禁止或允許 DNS 服務(wù)</p><p><b> 0: 禁止</b></p><p><b> 1: 允許</b></
103、p><p> 5).ATD*97#</p><p> 用于發(fā)起與遠(yuǎn)端服務(wù)器的連接。</p><p> 第四章 系統(tǒng)硬件設(shè)計(jì)</p><p><b> 4.1系統(tǒng)概述</b></p><p> 采用當(dāng)今流行的ARM9系列嵌入式處理器為核心,考慮嵌入式系統(tǒng)的復(fù)雜性,設(shè)計(jì)具有廣泛應(yīng)用范圍的移動(dòng)數(shù)
104、據(jù)采集系統(tǒng)具有較強(qiáng)實(shí)用價(jià)值。信息社會(huì)的發(fā)展加強(qiáng)了社會(huì)的流動(dòng)性,越來(lái)越多的交通工具投入到使用中,對(duì)移動(dòng)設(shè)備的實(shí)時(shí)檢測(cè)和遠(yuǎn)程數(shù)據(jù)分析成為各個(gè)領(lǐng)域的迫切需求。</p><p> 該軟件設(shè)計(jì)采用通用的ARM9嵌入式處理器對(duì)整個(gè)系統(tǒng)進(jìn)行控制,基于嵌入式Linux操作系統(tǒng)。移動(dòng)數(shù)據(jù)采集系統(tǒng)至少完成了8路模擬量和2路數(shù)據(jù)量的采集;數(shù)據(jù)量以文件形式存儲(chǔ)在硬盤(pán)中,存儲(chǔ)文件通過(guò)GPRS通信系統(tǒng)遠(yuǎn)程無(wú)線傳輸?shù)娇刂浦行摹?lt;/p&
105、gt;<p> Linux具有獨(dú)特的內(nèi)核模塊機(jī)制,它可以根據(jù)用戶(hù)的需要,實(shí)時(shí)地將某些模塊插入到內(nèi)核中或者從內(nèi)核中移走,并根據(jù)嵌入式設(shè)備的個(gè)性需要量量體裁衣。經(jīng)裁減的Linux內(nèi)核最小可達(dá)到150kb以下,尤其適合嵌入式領(lǐng)域中資源受限的實(shí)際情況;另一方面,Linux系統(tǒng)內(nèi)核精簡(jiǎn),高效和穩(wěn)定,能夠充分發(fā)揮硬件的功能,因此它比其它操作系統(tǒng)的運(yùn)作效率更高。在個(gè)人計(jì)算機(jī)上使用Linux,可以將它作為工作站,它也非常適合在嵌入式領(lǐng)域
106、中應(yīng)用,對(duì)比其它操作系統(tǒng),它占用的資源更少,運(yùn)行更穩(wěn)定,速度更快。本系統(tǒng)以Linux作為開(kāi)發(fā)平臺(tái),就繼承了它的優(yōu)勢(shì),程序運(yùn)行比較穩(wěn)定,不容易因?yàn)槌绦蜷L(zhǎng)時(shí)間運(yùn)行而死機(jī)。采用GPRS模塊傳輸數(shù)據(jù)信息,更加穩(wěn)定快捷。</p><p> 4.2系統(tǒng)硬件設(shè)計(jì) </p><p> 4.2.1 GPRS模塊</p><p> GPRS模塊與為控制器之間是通過(guò)串口進(jìn)行通信的,
107、通信速率最快可以達(dá)到115200b/s。模塊與控制器之間的通信協(xié)議是AT命令集。其中大部分命令是符合協(xié)議“AT command set for GSM Mobile Equipment (ME) (GSM 07.07 version 6.4.0 Release 1997)”的,但也有一些是Wavecon自己定義的AT命令。除了串口發(fā)送(TX)、串口接受(RX)之外,微控制器與GPRS模塊之間還有一些硬件握手信號(hào),如DTR、CTS、DCD
108、等。為了簡(jiǎn)化為控制器的控制,硬件設(shè)計(jì)沒(méi)有使用全部的握手信號(hào),而只使用數(shù)據(jù)載波檢測(cè)(Data Carrier Detect,DCD)和終端設(shè)備(Data Tminal Ready,DTR)信號(hào)[8]。</p><p> 圖4-1 GPRS模塊</p><p> 4.2.2 UART-IRDA-485-SD模塊</p><p> 此模塊RS232接口電路、RS48
109、5接口電路、IrDA驅(qū)動(dòng)電路等,S3C2410A具有3個(gè)UART口,在MagicARM2410實(shí)驗(yàn)箱上將其UART0、UART1用作RS232接口,電路原理如圖4.2所示。由于系統(tǒng)是3.3V系統(tǒng),所以使用SP3232E進(jìn)行RS232電平轉(zhuǎn)換,SP3232E是3.3V工作電源的RS232轉(zhuǎn)換芯片,使用SP3485進(jìn)行RS485的電平轉(zhuǎn)換,SP3485是3.3V工作電源的半雙工RS485收發(fā)器[9]。</p><p>
110、; 圖4-2 UART-IRDA-485-SD模塊</p><p> 4.2.3 POWER-AD-DA-LED-BEEP模塊</p><p> 在此模塊中,系統(tǒng)電源電路如下圖所示,電源供電由J28連接器輸入實(shí)驗(yàn)箱主板,5V電源經(jīng)過(guò)C70、C71和C125濾波后,由兩片LDO芯片U41、U42穩(wěn)壓輸出兩組3.3V的電源,其中一組用來(lái)給主板供電,另一組用來(lái)給核心板供電。</p&g
111、t;<p> 圖4-3 POWER-AD-DA-LED-BEEP模塊</p><p> 4.2.4 BUS-Drive模塊</p><p> DeviceARM2410核心板為用戶(hù)板(即底板)提供了32為總線接口,6個(gè)Bank的存儲(chǔ)空間,供用戶(hù)擴(kuò)展外部總線設(shè)備使用。為了提高系統(tǒng)的可靠性,MagicARM2410試驗(yàn)箱主板上使用了74LVC245芯片進(jìn)行總線驅(qū)動(dòng),地址總
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文--嵌入式linux移動(dòng)數(shù)據(jù)采集系統(tǒng)硬件設(shè)計(jì)
- 嵌入式電機(jī)控制系統(tǒng)設(shè)計(jì)(硬件)畢業(yè)論文
- 基于嵌入式linux視頻監(jiān)控系統(tǒng)畢業(yè)論文
- 基于嵌入式linux視頻監(jiān)控系統(tǒng)畢業(yè)論文
- 基于嵌入式Linux的數(shù)據(jù)采集系統(tǒng)關(guān)鍵模塊設(shè)計(jì).pdf
- 基于嵌入式Linux的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于嵌入式Linux的數(shù)據(jù)采集系統(tǒng)研究.pdf
- 嵌入式Linux圖像采集與顯示系統(tǒng)設(shè)計(jì).pdf
- 基于ZigBee和嵌入式Linux無(wú)線監(jiān)測(cè)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì).pdf
- 基于嵌入式Linux的數(shù)據(jù)采集系統(tǒng)的研究與設(shè)計(jì).pdf
- 基于嵌入式Linux遠(yuǎn)動(dòng)數(shù)據(jù)采集系統(tǒng)的研究與設(shè)計(jì).pdf
- 嵌入式Linux數(shù)據(jù)采集系統(tǒng)通訊模塊的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 嵌入式數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì).pdf
- 基于嵌入式Linux的并行數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于嵌入式Linux的多級(jí)多路數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì).pdf
- 畢業(yè)論文基于arm和linux的嵌入式數(shù)碼相框系統(tǒng)設(shè)計(jì)
- 基于嵌入式Linux的視頻采集系統(tǒng)設(shè)計(jì).pdf
- 基于嵌入式技術(shù)的膜片鉗數(shù)據(jù)采集系統(tǒng)硬件設(shè)計(jì).pdf
- 外文翻譯---基于linux的嵌入式采集系統(tǒng)
- 嵌入式系統(tǒng)的設(shè)計(jì)、開(kāi)發(fā)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論