無(wú)線點(diǎn)菜系統(tǒng)服務(wù)端的設(shè)計(jì).doc_第1頁(yè)
無(wú)線點(diǎn)菜系統(tǒng)服務(wù)端的設(shè)計(jì).doc_第2頁(yè)
無(wú)線點(diǎn)菜系統(tǒng)服務(wù)端的設(shè)計(jì).doc_第3頁(yè)
無(wú)線點(diǎn)菜系統(tǒng)服務(wù)端的設(shè)計(jì).doc_第4頁(yè)
無(wú)線點(diǎn)菜系統(tǒng)服務(wù)端的設(shè)計(jì).doc_第5頁(yè)
已閱讀5頁(yè),還剩37頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

摘要無(wú)線點(diǎn)菜系統(tǒng)是餐飲服務(wù)管理系統(tǒng)的一個(gè)重要組成部分。本文分析了國(guó)內(nèi)市場(chǎng)現(xiàn)有的各種點(diǎn)菜系統(tǒng)的優(yōu)缺點(diǎn),提出了一種低成本的無(wú)線點(diǎn)菜終端的解決方案。本文分別從無(wú)線網(wǎng)絡(luò)、終端操作系統(tǒng)、終端圖形顯示系統(tǒng)以及數(shù)據(jù)庫(kù)服務(wù)器四個(gè)方面對(duì)整個(gè)系統(tǒng)做了詳細(xì)的介紹與分析。通過(guò)對(duì)幾種無(wú)線傳輸方式的比較,本文采用了具有方便組網(wǎng)、通信可靠、成本低、靈活性高、可移動(dòng)性強(qiáng)和吞吐量大的無(wú)線局域網(wǎng)方式進(jìn)行數(shù)據(jù)傳輸。在服務(wù)器端設(shè)計(jì)中,本文利用Red Hat Enterprise Linux 4作為開(kāi)發(fā)平臺(tái),能有效處理多個(gè)客戶端傳輸過(guò)來(lái)的信息和數(shù)據(jù),并提供無(wú)線驅(qū)動(dòng)的接口,通過(guò)wifi與客戶端進(jìn)行數(shù)據(jù)傳輸。MySQL作為全球應(yīng)用最廣泛的數(shù)據(jù)庫(kù),不僅具有其體積小、速度快和開(kāi)放源碼等特點(diǎn),而且其總體擁有成本低,能降低無(wú)線點(diǎn)菜系統(tǒng)的成本。整個(gè)點(diǎn)菜系統(tǒng)采用C/S的網(wǎng)絡(luò)通信模式,能進(jìn)行服務(wù)器端和客戶端的同步數(shù)據(jù)交換。最后,本文對(duì)無(wú)線點(diǎn)菜系統(tǒng)服務(wù)器端作出進(jìn)一步的分析和總結(jié),肯定了嵌入式系統(tǒng)以及無(wú)線局域網(wǎng)技術(shù)廣闊的應(yīng)用前景。關(guān)鍵字:無(wú)線點(diǎn)菜;Linux;MySQL;無(wú)線局域網(wǎng);嵌入式注:本設(shè)計(jì)(論文)題目來(lái)源于教師的國(guó)家級(jí)(或部級(jí)、省級(jí)、廳級(jí)、市級(jí)、校級(jí)、企業(yè))項(xiàng)目,項(xiàng)目編號(hào)為:_.AbstractWireless-Ordering-System is an important component of the restaurant service management system. This paper analyzes the existing domestic marketamongthe advantages and disadvantages of various Ordering-System,provided a low-cost solution for wireless ordering terminal. This paper provided a detailed description and analysis in four areas including the wireless network, terminal operating system, terminal server graphics display system and database of the entire system. Compared with the comparison of several wireless transmission, we chose to use wireless LAN data transmission mode that communication is convenient, reliable, low cost, high flexibility, mobility and other characteristics of strong and throughput. The design of the server side, we use Red Hat Enterprise Linux 4 as a development platform that can effectively deal with multiple clients over the information and data transmission, and wireless-driven interface with the client through the wifi data transmission. As the worlds most widely used MySQL database, not only its small size, speed and open source and other characteristics, and its low total cost of ownership can reduce the cost of wireless ordering system. The ordering system uses C/S network communication model, capable of server-side and client-side synchronous data exchange. Finally, the server of Wireless-Ordering-System make further analysis and summary of certain embedded systems and wireless local area network technology broad application prospects.Key words: Wireless-Order-System , MySQL , WLAN , Embedded目錄1 緒論11.1引言11.2國(guó)內(nèi)發(fā)展概況21.3論文的主要工作32無(wú)線點(diǎn)菜系統(tǒng)的環(huán)境搭建52.1系統(tǒng)的整體結(jié)構(gòu)52.2點(diǎn)菜服務(wù)端的安裝52.2.1Linux的起源和發(fā)展52.2.2點(diǎn)菜系統(tǒng)服務(wù)器的安裝62.2.3MySQL安裝82.3點(diǎn)菜服務(wù)端的嵌入式環(huán)境搭建92.3.1交叉編譯工具鏈92.3.2建立tftp服務(wù)器112.3.3配置NFS服務(wù)器123無(wú)線點(diǎn)菜系統(tǒng)的服務(wù)端與客戶端的網(wǎng)絡(luò)設(shè)計(jì)143.1無(wú)線網(wǎng)絡(luò)設(shè)計(jì)143.1.1無(wú)線局域網(wǎng)143.1.2IEEE 802.1lb體系結(jié)構(gòu)143.2點(diǎn)菜客戶終端無(wú)線硬件設(shè)備153.3點(diǎn)菜服務(wù)端和客戶終端的調(diào)試連接方式184無(wú)線點(diǎn)菜系統(tǒng)服務(wù)端軟件設(shè)計(jì)194.1點(diǎn)菜軟件系統(tǒng)的總體設(shè)計(jì)194.2服務(wù)端數(shù)據(jù)庫(kù)需求分析204.2.1數(shù)據(jù)流圖204.2.2數(shù)據(jù)字典224.2.3“轉(zhuǎn)換”的說(shuō)明245點(diǎn)菜系統(tǒng)服務(wù)端功能實(shí)現(xiàn)255.1技術(shù)架構(gòu)255.2服務(wù)端的設(shè)計(jì)255.2.1數(shù)據(jù)庫(kù)設(shè)計(jì)255.2.2模塊設(shè)計(jì)26結(jié)論30參考文獻(xiàn)31致謝32附錄A331 緒論1.1 引言目前大多數(shù)酒店由于規(guī)模的限制,忽略了點(diǎn)菜系統(tǒng)的重要性,而本系統(tǒng)專為具有一定規(guī)模和經(jīng)濟(jì)條件的大型酒店設(shè)計(jì)。以降低人力成本,提高人員工作效率,加快各部分人為環(huán)節(jié)的數(shù)據(jù)流通速度為前提,降低經(jīng)營(yíng)成本,提高利潤(rùn)。通過(guò)集成從顧客訂桌、點(diǎn)菜、上菜到結(jié)賬等一系列功能,為每個(gè)環(huán)節(jié)明確分工,并通過(guò)可視化的軟件支持,有效減小了人為錯(cuò)誤的概率,是酒店管理更加規(guī)范化。當(dāng)前,數(shù)碼點(diǎn)菜已十分普及。因?yàn)橐M(jìn)現(xiàn)代化的管理模式與技術(shù)可以提升酒店形象,同時(shí)提高工作效率、管理水平以及顧客的滿意程度。此外,在實(shí)現(xiàn)無(wú)紙化操作,節(jié)約成本方面,與傳統(tǒng)的點(diǎn)菜模式相比數(shù)碼點(diǎn)菜機(jī)也有它獨(dú)特的優(yōu)勢(shì)。正是出于這些目的,本文給出了一種基于Linux+ARM的嵌入式點(diǎn)菜系統(tǒng)設(shè)計(jì)方法1。無(wú)線點(diǎn)菜系統(tǒng),或稱無(wú)線點(diǎn)餐系統(tǒng),就是利用現(xiàn)代電子技術(shù)、無(wú)線技術(shù)、計(jì)算機(jī)技術(shù)以及網(wǎng)絡(luò)技術(shù),取代傳統(tǒng)的紙和筆,進(jìn)行電子點(diǎn)菜操作的系統(tǒng)。是餐飲企業(yè)實(shí)現(xiàn)信息化改造、提升管理水平、提高運(yùn)作效率的重要手段。 無(wú)線點(diǎn)菜系統(tǒng)由硬件和軟件構(gòu)成。系統(tǒng)硬件主要包括手持無(wú)線終端、無(wú)線基站(或無(wú)線收發(fā)器)、主控計(jì)算機(jī)以及打印機(jī)等部件;系統(tǒng)軟件主要是餐飲管理軟件。無(wú)線點(diǎn)菜系統(tǒng)的信息流動(dòng)主要跨越三個(gè)區(qū)域:用餐區(qū)、款臺(tái)區(qū)和廚房區(qū)。系統(tǒng)的核心是位于吧臺(tái)的主控計(jì)算機(jī)。手持終端通過(guò)無(wú)線的方式與主控計(jì)算機(jī)進(jìn)行通信,從事開(kāi)臺(tái)、換臺(tái)、并臺(tái)、點(diǎn)菜、退菜、申請(qǐng)結(jié)賬等系列操作,以及實(shí)現(xiàn)下載菜單信息、桌臺(tái)信息、發(fā)送工號(hào)等輔助功能。安裝于廚房區(qū)的廚房終端通過(guò)無(wú)線方式接收主控計(jì)算機(jī)發(fā)送過(guò)來(lái)的菜品信息,并進(jìn)行打印,供廚師烹飪和傳菜員傳菜。主控計(jì)算機(jī)上的餐飲管理軟件不僅起到控制作用,對(duì)各終端發(fā)送過(guò)來(lái)的信號(hào)進(jìn)行分析、加工、處理和回饋,也實(shí)現(xiàn)統(tǒng)計(jì)、管理等一系列功能。 1.2 國(guó)內(nèi)發(fā)展概況20世紀(jì)70年代以前,餐飲業(yè)一直沿用傳統(tǒng)的人工服務(wù)方式,隨著20世紀(jì)下半葉新科技的發(fā)展,尤其是與計(jì)算機(jī)相關(guān)的信息技術(shù)的迅猛發(fā)展,越來(lái)越多的企業(yè)開(kāi)始意識(shí)到進(jìn)行餐飲業(yè)信息化的重要性,一些餐飲服務(wù)系統(tǒng)、餐飲管理系統(tǒng)也相繼開(kāi)發(fā)研制成功并投入使用,給餐飲業(yè)帶來(lái)了新的生機(jī)。國(guó)外在20世紀(jì)70年代,國(guó)內(nèi)在80年代末開(kāi)始出現(xiàn)餐飲服務(wù)管理系統(tǒng)的雛形,即在總服務(wù)臺(tái)設(shè)置PC機(jī)及與之相連的打印機(jī)等外圍設(shè)備,實(shí)現(xiàn)基本的結(jié)帳、核算、打印收據(jù)等簡(jiǎn)單功能。這個(gè)時(shí)期餐飲服務(wù)管理系統(tǒng)的概念實(shí)際上只是企業(yè)內(nèi)部財(cái)務(wù)管理的電算化,還算不上真正意義上的餐飲服務(wù)管理系統(tǒng),但是它打開(kāi)了新科技進(jìn)入服務(wù)行業(yè)的大門。80年代末至90年代中期隨著局域網(wǎng)技術(shù)的迅猛發(fā)展,出現(xiàn)了以觸摸屏為交互終端,使用C/S(Client/Server)和B/S(Browser/Server)體系結(jié)構(gòu)的餐飲服務(wù)管理系統(tǒng)。這時(shí)都以有線的方式進(jìn)行系統(tǒng)連接。20世紀(jì)90年代至今Internet在技術(shù)方面有了重大突破,寬帶技術(shù)、動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)和數(shù)據(jù)庫(kù)技術(shù)的使用和完善,使得Internet的信息傳遞和交互更加便利,網(wǎng)絡(luò)逐漸成為人們生活不可缺少的一部分。Internet也進(jìn)一步擴(kuò)展了餐飲服務(wù)管理系統(tǒng)的概念,人們可以遠(yuǎn)程定餐、叫餐、網(wǎng)上支付。無(wú)線網(wǎng)絡(luò)技術(shù)使我們隨時(shí)隨地進(jìn)行網(wǎng)絡(luò)通訊,此時(shí)出現(xiàn)了應(yīng)用紅外技術(shù)、藍(lán)牙技術(shù)、802.11系列技術(shù)的餐飲服務(wù)管理系統(tǒng)。如2000年,北京食苑星技術(shù)有限公司將藍(lán)牙技術(shù)應(yīng)用于點(diǎn)菜服務(wù);北京辰森偉業(yè)軟件開(kāi)發(fā)有限公司開(kāi)發(fā)了一卡通管理系統(tǒng)并成功運(yùn)行在天津家和巨無(wú)霸海鮮城;2002年上海科升科技信息有限公司采用無(wú)線通訊技術(shù),利用智能掌上電腦實(shí)現(xiàn)了從預(yù)訂、開(kāi)臺(tái)、點(diǎn)菜,加菜、退菜、催菜、廚房出菜監(jiān)控管理到顧客結(jié)帳全過(guò)程一體化的管理等等。當(dāng)今我國(guó)整體的餐飲服務(wù)管理技術(shù)水平與國(guó)際先進(jìn)水平還有一段距離,尤其是在信息管理、數(shù)據(jù)挖掘方面差距較大,中餐是個(gè)性化很強(qiáng)的行業(yè),國(guó)外產(chǎn)品不能夠很好的滿足我國(guó)實(shí)際需要,因此在服務(wù)信息化方面我國(guó)有著較大的發(fā)展?jié)摿?。根據(jù)實(shí)際需要,以臺(tái)號(hào)作為顧客識(shí)別標(biāo)志,顧客可隨時(shí)隨地點(diǎn)菜,既有有線局域網(wǎng)豐富的資源,又不受位置和網(wǎng)線的限制。無(wú)線局域網(wǎng)最高可達(dá)11Mbit/s的速度,確??闪⒓吹玫椒答伣Y(jié)果,極大的提高了工作效率和服務(wù)質(zhì)量。它使用通用PDA加無(wú)線網(wǎng)卡或使用集成通訊模塊的專用PDA:一般采用802.11b無(wú)線局域網(wǎng)技術(shù)組建無(wú)線局域網(wǎng),要求無(wú)線接入點(diǎn)一般具有交換或路由功能,有效通訊距離可達(dá)100米,最高可達(dá)300米,能夠真正實(shí)現(xiàn)移動(dòng)點(diǎn)菜,達(dá)到近乎完美的效果,但設(shè)備投資較大,現(xiàn)階段推廣難度比較大。由此可見(jiàn),餐飲管理系統(tǒng)一般由具有無(wú)線通訊功能的終端,和無(wú)線通訊主模塊相連的作為管理中心的服務(wù)器,作為連接集線器的HUB,各廚房出單打印機(jī),經(jīng)理、財(cái)務(wù)、倉(cāng)庫(kù)等查詢管理終端構(gòu)成。應(yīng)用此系統(tǒng),顧客通過(guò)無(wú)線終端可在移動(dòng)過(guò)程中完成點(diǎn)菜,查詢菜的原料組成,禁忌等信息;點(diǎn)菜結(jié)束后,通過(guò)無(wú)線方式實(shí)現(xiàn)與計(jì)算機(jī)收銀管理系統(tǒng)進(jìn)行無(wú)線數(shù)據(jù)交換,信息直接傳送到服務(wù)臺(tái)的服務(wù)器上,相關(guān)信息存入數(shù)據(jù)庫(kù),同時(shí)數(shù)據(jù)被分類處理送到相應(yīng)的部門,如廚房根據(jù)它制作顧客所點(diǎn)的菜,酒水部根據(jù)它送酒水等等。實(shí)現(xiàn)從點(diǎn)菜、出菜、加菜、撤菜等全過(guò)程自動(dòng)化,飯后顧客憑臺(tái)號(hào)結(jié)帳,整個(gè)流程極大的提高了點(diǎn)菜與結(jié)賬的效率。并且管理系統(tǒng)通過(guò)分級(jí)管理權(quán)限的設(shè)置,經(jīng)理、財(cái)務(wù)等管理部門可調(diào)出相應(yīng)的統(tǒng)計(jì)數(shù)據(jù),計(jì)算機(jī)將給出分析圖和走勢(shì)圖,并可打印各種報(bào)表,根據(jù)這些信息制定企業(yè)的發(fā)展規(guī)劃。倉(cāng)庫(kù)可經(jīng)由網(wǎng)絡(luò)獲取相關(guān)數(shù)據(jù)進(jìn)行監(jiān)督分析,實(shí)時(shí)補(bǔ)充菜品等。系統(tǒng)對(duì)各個(gè)操作環(huán)節(jié)進(jìn)行全面的計(jì)算機(jī)管理,取消手工操作,為企業(yè)的生產(chǎn)、經(jīng)營(yíng)、管理提供便利。可以看出無(wú)線餐飲管理系統(tǒng)在餐飲行業(yè)的使用,具有以下一些明顯的優(yōu)點(diǎn)3:(1)無(wú)線方案不僅可以實(shí)現(xiàn)高速上網(wǎng),其網(wǎng)絡(luò)連接速度可達(dá)到10M以上,充分滿足用戶所需帶寬。(2)安裝施工迅速,不受時(shí)間限制,不會(huì)影響客人和飯店的正常業(yè)務(wù)。(3)不會(huì)破壞已裝修好的客房,不會(huì)對(duì)各種設(shè)施造成損壞。(4)便于網(wǎng)絡(luò)的管理。維護(hù)非常方便,大大優(yōu)于有線網(wǎng)絡(luò)。(5)對(duì)飯店以后的網(wǎng)絡(luò)再升級(jí),方便且迅速。不像有線網(wǎng)絡(luò)那樣較難拆除。1.3 論文的主要工作由前面的分析可以得出,無(wú)線點(diǎn)菜終端是現(xiàn)代化餐飲管理大系統(tǒng)中的一個(gè)有機(jī)組成部分,點(diǎn)菜系統(tǒng)的差別關(guān)鍵在于無(wú)線點(diǎn)菜終端實(shí)現(xiàn)方式的不同,目前市場(chǎng)上出現(xiàn)的產(chǎn)品,低檔產(chǎn)品信息量有限,參考傳統(tǒng)菜單,只能進(jìn)行簡(jiǎn)單的無(wú)線數(shù)據(jù)傳送功能:而高檔產(chǎn)品,功能過(guò)于復(fù)雜,擁有太多不必要的功能的,背離了點(diǎn)菜的本意。所以市場(chǎng)急需一種價(jià)格適當(dāng),功能恰到好處適合廣大餐飲企業(yè)的中檔產(chǎn)品,因此我們決定開(kāi)發(fā)一款中檔產(chǎn)品來(lái)滿足市場(chǎng)的需要。針對(duì)無(wú)線點(diǎn)菜終端這種非常具體的應(yīng)用場(chǎng)合,既要求成本低廉,集成度盡量高,盡量減少外圍器件,又要有豐富的軟硬件資源,具有文字處理,彩色圖片顯示,無(wú)線通訊等處理能力,綜合考慮各個(gè)方面的因素,采用嵌入式Linux+ARM系統(tǒng)是最適合的解決方案,本文研究基于嵌入式的無(wú)線點(diǎn)菜終端4。由于本論文只負(fù)責(zé)無(wú)線點(diǎn)菜系統(tǒng)服務(wù)器端的設(shè)計(jì),研究的主要內(nèi)容按如下章節(jié)組織:第一,緒論,介紹無(wú)線點(diǎn)菜系統(tǒng)的概念、國(guó)內(nèi)點(diǎn)菜系統(tǒng)的發(fā)展和本論文所要做的主要工作;第二,無(wú)線點(diǎn)菜系統(tǒng)所使用的服務(wù)器操作系統(tǒng)的介紹和其優(yōu)勢(shì),以及搭建嵌入式開(kāi)發(fā)環(huán)境平臺(tái)包括Linux和MySQL的安裝;第三,無(wú)線點(diǎn)菜系統(tǒng)服務(wù)器與客戶端無(wú)線局域網(wǎng)的設(shè)計(jì)與調(diào)試,無(wú)線網(wǎng)絡(luò)協(xié)議和服務(wù)器、客戶端無(wú)線模塊的設(shè)計(jì)與調(diào)試;第四,無(wú)線點(diǎn)菜系統(tǒng)服務(wù)器端軟件的設(shè)計(jì),需求分析、數(shù)據(jù)庫(kù)表的建立和信息的相互轉(zhuǎn)換;第五,無(wú)線點(diǎn)菜系統(tǒng)服務(wù)器端的總體模塊和功能實(shí)現(xiàn),包括了服務(wù)器端技術(shù)構(gòu)架、環(huán)境配置和模塊設(shè)計(jì)等。2 無(wú)線點(diǎn)菜系統(tǒng)的環(huán)境搭建2.1 系統(tǒng)的整體結(jié)構(gòu)本文實(shí)現(xiàn)的無(wú)線點(diǎn)菜系統(tǒng)主要由客戶端、計(jì)算機(jī)網(wǎng)絡(luò)和服務(wù)器三部分組成,點(diǎn)菜終端與服務(wù)器通過(guò)無(wú)線網(wǎng)絡(luò)相連接。整體結(jié)構(gòu)圖如圖2.1所示。圖2.1無(wú)線點(diǎn)菜系統(tǒng)總體網(wǎng)絡(luò)布局2.2 點(diǎn)菜服務(wù)端的安裝2.2.1 Linux的起源和發(fā)展Linux是一個(gè)誕生于網(wǎng)絡(luò)、成長(zhǎng)于網(wǎng)絡(luò)且成熟于網(wǎng)絡(luò)的奇特的操作系統(tǒng)。1991年,芬蘭大學(xué)生Linus Torvalds萌發(fā)了開(kāi)發(fā)一個(gè)自由的UNIX操作系統(tǒng)的想法,當(dāng)年,Linux就誕生了,為了不讓這個(gè)羽毛未豐的操作系統(tǒng)矢折,Linus將自已的作品Linux通過(guò)Internet發(fā)布。從此一大批知名的、不知名的電腦黑客、編程人員加入到開(kāi)發(fā)過(guò)程中來(lái),Linux逐漸成長(zhǎng)起來(lái)5。 Linux一開(kāi)始是要求所有的源碼必須公開(kāi),并且任何人均不得從Linux交易中獲利。然而這種純粹的自由軟件的理想對(duì)于Linux的普及和發(fā)展是不利的,于是Linux開(kāi)始轉(zhuǎn)向GPL,成為GNU陣營(yíng)中的主要一員。 現(xiàn)在,Linux憑借優(yōu)秀的設(shè)計(jì),不凡的性能,加上IBM、INTEL、CA、CORE、ORACLE等國(guó)際知名企業(yè)的大力支持,市場(chǎng)份額逐步擴(kuò)大,逐漸成為主流操作系統(tǒng)之一。計(jì)算機(jī)在應(yīng)用中可以分為桌面應(yīng)用(工作站/客戶機(jī))和服務(wù)器應(yīng)用,桌面應(yīng)用直接面向客戶,實(shí)現(xiàn)一些個(gè)性化的工作;服務(wù)器應(yīng)用則是一些后臺(tái)處理系統(tǒng),實(shí)現(xiàn)一些共性的服務(wù)工作。對(duì)于桌面應(yīng)用來(lái)說(shuō),易用性十分重要,而對(duì)于服務(wù)器而言,性能可靠、穩(wěn)定才是更重要的。Linux操作系統(tǒng)是一種類UNIX操作系統(tǒng),其設(shè)計(jì)上對(duì)穩(wěn)定性的考慮比易用性考慮要多得多,它不是一種桌面系統(tǒng),它也不是為了取代桌面系統(tǒng)而出現(xiàn)的。所以作為服務(wù)器,Linux優(yōu)于Windows,但低于Unix。由于Unix的使用費(fèi)用過(guò)高,Linux具有開(kāi)源、低廉和實(shí)用的優(yōu)點(diǎn),Linux成為本論文所選用的操作系統(tǒng)。綜合分析而言,Linux具有以下幾點(diǎn)優(yōu)點(diǎn)6:1) 提供了先進(jìn)的網(wǎng)絡(luò)支持:內(nèi)置TCP/IP協(xié)議; 2) 真正意義上的多任務(wù)、多用戶操作系統(tǒng); 3) 與UNIX系統(tǒng)在源代碼級(jí)兼容,符合IEEE POSIX標(biāo)準(zhǔn); 4) 核心能仿真FPU; 5) 支持?jǐn)?shù)十種文件系統(tǒng)格式; 6) 完全運(yùn)行于保護(hù)模式,充分利用了CPU性能; 7) 開(kāi)放源代碼,用戶可以自己對(duì)系統(tǒng)進(jìn)行改進(jìn); 8) 采用先進(jìn)的內(nèi)存管理機(jī)制,更加有效地利用物理內(nèi)存;2.2.2 點(diǎn)菜系統(tǒng)服務(wù)端的安裝Red Hat Linux是最成熟的一種Linux發(fā)行版,其無(wú)論在銷售還是裝機(jī)量上都是市場(chǎng)上的老大。在中國(guó)老一輩Linux愛(ài)好者中幾乎都是RedHat的使用者。2004年4月30日,Red Hat公司正式停止對(duì)Red Hat 9.0版本的支持,標(biāo)志著Red Hat Linux的免費(fèi)時(shí)代正式結(jié)束。從此Red Hat公司不再開(kāi)發(fā)桌面版的Linux發(fā)行包,而將全部力量集中在服務(wù)器版的開(kāi)發(fā)上,也就是Red Hat Enterprise Linux版。 2005年10月RHEL4發(fā)布。RedHat Linux樸實(shí)、簡(jiǎn)潔、穩(wěn)定,是作為商業(yè)應(yīng)用、鉆研Linux的好平臺(tái)。故本論文服務(wù)器所使用的操作系統(tǒng)也是Linux家族中的一員Red Hat Enterprise Linux 4(簡(jiǎn)稱“RHEL4”)。本論文是使用RHEL4光盤(共4張)進(jìn)行,簡(jiǎn)單描述RHEL4的安裝方法:1. 插入RHEL 4的光盤,從光驅(qū)啟動(dòng)。2.看到 boot: 提示后按回車,直接安裝 RHEL 43.選擇安裝要使用的語(yǔ)系。4.選擇鍵盤的類型。5.分區(qū)的劃分。最好手動(dòng),注意自己的資料別搞丟掉。swap是虛擬記憶體一樣,一般是自己內(nèi)存的2倍。至少還要建立一個(gè)“ / ”,然后輸入分區(qū)大小。也可以劃分“boot”,大小不用太大。最好再加個(gè)“root”。6.設(shè)定開(kāi)機(jī)管理程序,可以使用“GRUB”,然后選擇這個(gè)程序可以管理哪些作業(yè)系統(tǒng),如果沒(méi)有XP,2003等系統(tǒng),只能看到RHEL的項(xiàng)目。7.網(wǎng)絡(luò)的設(shè)定,根據(jù)需求,是用DHCP還是手動(dòng)配置IP。然后設(shè)定主機(jī)名稱。再來(lái)就是網(wǎng)關(guān),DNS等信息。8.防火墻的設(shè)定,默認(rèn)是啟用的。下面是設(shè)定開(kāi)啟哪些服務(wù) PORT。也可以停用防火墻。9.選擇要安裝的語(yǔ)系??梢赃x擇個(gè)或者多個(gè),最好把English(US)裝上,然后再選擇自己要用的,記得上面選擇一個(gè)默認(rèn)的。10.選擇自己的時(shí)區(qū)。11.設(shè)定root(根用戶)的密碼。12.設(shè)定要安裝的套件,可以默認(rèn)安裝,也可自己定制。定制里自己可以選擇需要的組件。最好是定制,要不然會(huì)少很多組件。有一些組件選擇時(shí),每一個(gè)組件里還有很多詳細(xì)的小組件。自己看去。13.點(diǎn)下一步,讓系統(tǒng)自己安裝,中間會(huì)要換光盤。14.重啟后進(jìn)入授權(quán)界面,日期時(shí)間,顯示設(shè)定,前面是要同意的,時(shí)間日期還有顯示設(shè)定,自己根據(jù)情況選擇。15. Red Hat注冊(cè)。16.添加用戶,可以在這里加用戶,可以加也可以不加。17.配置Linux環(huán)境和裝別的組件。18.在XWINDOW窗口登入,用戶就可以進(jìn)入Linux桌面。2.2.3 MySQL安裝在Linux/UNIX操作系統(tǒng)中,使用數(shù)據(jù)庫(kù),一般會(huì)用到mysql。本文是在RHEL4中安裝MySQL,其過(guò)程如下:1.下載mysql到RHEL4系統(tǒng)中,也可以用共享的方法或FTP從其他計(jì)算機(jī)復(fù)制(我使用的是mysql-4.0.18.tar.gz)2.把mysql解壓到/usr/local# tar zxvf mysql-4.0.18.tar.gz C /usr/local 3.進(jìn)入解壓目錄# cd /usr/local/mysql-4.0.184.進(jìn)行編譯前的配置,指定安裝位置為/usr/local/mysql#./configure -prefix=/usr/local/mysql5.編譯成二進(jìn)制安裝文件(這步大約20分鐘左右才能完成,機(jī)器的配置不同,時(shí)間也會(huì)不同)#make6.測(cè)試(這步可以不做,這個(gè)步驟所用時(shí)間也比較長(zhǎng))#make test7.安裝編譯好的二進(jìn)制文件#make install8.初始化數(shù)據(jù)庫(kù)(這步會(huì)創(chuàng)建mysql數(shù)據(jù)庫(kù),相當(dāng)于在SQLServer中創(chuàng)建系統(tǒng)數(shù)據(jù)庫(kù)和用戶數(shù)據(jù)庫(kù))# /usr/local/mysql/bin/mysql_install_db9.創(chuàng)建mysql所需的用戶和組# groupadd mysql# adduser g mysql mysql10把/usr/local/mysql及其子目錄的擁有者改為root,擁有組改為mysql,把/usr/local/mysql/var的擁有者改為mysql(使用mysql用戶啟動(dòng)mysql時(shí),mysql必須對(duì)mysql中的數(shù)據(jù)庫(kù)有讀取權(quán)限)# chown -R root /usr/local/mysql# chgrp -R mysql /usr/local/mysql# chown -R mysql /usr/local/mysql/var11啟動(dòng)mysql數(shù)據(jù)庫(kù)服務(wù),并指定后臺(tái)運(yùn)行# /usr/local/mysql/bin/mysqld_safe -user=mysql &22更改數(shù)據(jù)庫(kù)管理員密碼,默認(rèn)管理員為root,密碼為空,我設(shè)置的密碼為123# /usr/local/mysql/bin/mysqladmin -u root password 12323使用客戶端工具,以管理員身份登錄mysql服務(wù)器,看是否成功# /usr/local/mysql/bin/mysql -u root -pmysqlexit#2.3 點(diǎn)菜服務(wù)端的嵌入式環(huán)境搭建前面一章描述了本系統(tǒng)的總體結(jié)構(gòu),為了更好的滿足應(yīng)用需求,需要對(duì)這些資源進(jìn)行改造,以得到合乎要求,性能更好的系統(tǒng)。2.3.1 交叉編譯工具鏈交叉編譯工具鏈的目的是為了在一個(gè)平臺(tái)體系結(jié)構(gòu)下(如X86PC機(jī))能編譯、鏈接、處理和調(diào)試另一個(gè)平臺(tái)體系結(jié)構(gòu)下(如ARM)的程序,使得編譯生成的程序熊夠在另一平臺(tái)下運(yùn)行。Linux使用的是的GNU工具鏈,包括:binutils,gcc,glibc等。binutils是二進(jìn)制文件的處理工具集,主要是一些輔助開(kāi)發(fā)的工具,例如objdump是反匯編工具,它可以產(chǎn)生反匯編代碼;nm列出程序的符號(hào)表;strip將不必要的代碼去掉以減小可執(zhí)行文件或者庫(kù)文件的大??;readelf顯示elf文件信息及段信息。這些工具在調(diào)試過(guò)程中對(duì)開(kāi)發(fā)者的幫助是非常大的,例如可以從am列出的符號(hào)信息得到該符號(hào)的地址,從麗在該符號(hào)處設(shè)置斷點(diǎn)。gcc是編譯器,用來(lái)編譯內(nèi)核和應(yīng)用程序。它既可以編譯匯編語(yǔ)言也可以編譯C語(yǔ)言。gcc有對(duì)應(yīng)多個(gè)平臺(tái)的版本,例如有ARM的,有MIPS的等等,對(duì)痰生成多種平臺(tái)的代碼。本文所焉到是ARM平臺(tái)的gcc,叫做arm-linux-gcc,生成ARM代碼。glibc是GNU發(fā)布的libc庫(kù),也即C運(yùn)行庫(kù)。它是linux中最底層的api,幾乎其他任何的運(yùn)行庫(kù)都會(huì)依賴于glibc。glibc除了為封裝linux操作系統(tǒng)所提供的系統(tǒng)服務(wù)強(qiáng),還提供了許多其他必要的功能服務(wù),如字符串處理、信號(hào)處理、動(dòng)態(tài)內(nèi)存的分配與管理以及一些其它基本功能。glibc是進(jìn)行l(wèi)inux應(yīng)用開(kāi)發(fā)的基礎(chǔ)。建立一個(gè)交叉編譯工具鏈?zhǔn)且粋€(gè)非常復(fù)雜豹過(guò)程,而且,稍有出錯(cuò)會(huì)為隨后的開(kāi)發(fā)帶來(lái)很大的麻煩。幸運(yùn)的是,網(wǎng)上有一些已經(jīng)編譯好并經(jīng)過(guò)了驗(yàn)證的交叉編譯工具鏈,鍘如ARM官方霜站.uk就有多個(gè)版本的交叉編譯工具鏈。為了保證開(kāi)發(fā)進(jìn)度,本系統(tǒng)采用TQ2440開(kāi)發(fā)板自帶的交叉編譯器是cross 2.95.3 tar.bz27。我們對(duì)它進(jìn)行安裝:.1、在/usr/local目錄下新建arm目錄。#mkdir /usr/local/arm2、進(jìn)入arm目錄,將工具鏈cross_2.95.3.tar.bz2復(fù)制到該目錄下,進(jìn)入該目錄,并執(zhí)行解壓命令。#tar jxvf cross_2.95.3.tar.bz2執(zhí)行完畢,在當(dāng)前目錄下將會(huì)多出文件夾2.95.3,這就是交叉編譯器所在目錄。3、雖然安裝了交叉編譯器,但系統(tǒng)不一定能找得到,所以我們要根據(jù)自己的安裝目錄為系統(tǒng)增加編譯器路徑。增加編譯器路徑可通過(guò)兩種方法實(shí)現(xiàn):(1)使用export命令增加環(huán)境變量。#export PATH=$PATH:/usr/local/arm/2.95.3/bin或者export PATH=/usr/loca/arm/2.95.3/bin:$PATH(2)修改/etc/profile文件。在Path manipulation處增加“pathmunge/usr/local/arm/2.9/bin”,即把編譯器的路徑添加到PATH中。修改/etc/profile文件:#vi /etc/profile增加路徑設(shè)置:pathmunge /usr/local/arm/2.95.3/bin在編譯過(guò)程中,經(jīng)常接觸的工具除了交叉編譯工具鏈外,還有一個(gè)就是GNU make程序,make完成開(kāi)發(fā)項(xiàng)目中自動(dòng)編譯的工作。它可以從源代碼生成目標(biāo)可執(zhí)行程序,還可以有效地避免重復(fù)操作,如果僅修改了某幾個(gè)源文件,則只重新編譯這幾個(gè)源文件,或者某個(gè)頭文件被修改了,則重新編譯所有包含該頭文件的源文件。利用make可大大化簡(jiǎn)開(kāi)發(fā)工作,避免不必要的重新編譯。make主要是通過(guò)Makefile來(lái)完成工作的。Makefile主要描述了目標(biāo)文件是從哪些依賴文件中產(chǎn)生的,是用什么命令來(lái)進(jìn)行這個(gè)產(chǎn)生過(guò)程的。有了這些信息,make會(huì)檢查磁盤的文件,如果目標(biāo)文件的日期至少比它的一個(gè)依賴文件日期早的話,make就會(huì)執(zhí)行相應(yīng)的命令,以更新目標(biāo)文件。2.3.2 建立tftp服務(wù)器客戶終端(以TQ2440嵌入式開(kāi)發(fā)板作為模擬終端)上使用ZLG/BOOT作為bootloader,但處于學(xué)習(xí)的考慮,本文把實(shí)驗(yàn)箱自帶ZLG/BOOT替換成U-boot,這個(gè)bootloader使用tftp協(xié)議從宿主機(jī)上下載文件到開(kāi)發(fā)板上。為了使用tftp在宿主機(jī)和開(kāi)發(fā)板之間傳輸文件,在宿主機(jī)上需要安裝配置tftp服務(wù)器。本文的點(diǎn)菜服務(wù)器端安裝的是RHEL 4,已經(jīng)安裝有tftp服務(wù)器程序,僅進(jìn)行適當(dāng)?shù)呐渲眉纯?。在Linux的shell命令提示符下輸入setup,選擇System Services,將其中的tftp一項(xiàng)選中,并去掉ipchains和iptables兩項(xiàng)服務(wù),然后把防火墻關(guān)掉,退出setup。查看一下系統(tǒng)中有沒(méi)有/tftpboot/目錄,如果沒(méi)有就在根目錄手工創(chuàng)建一個(gè),利用tftp傳送的所有文件必須放到該目錄中。最后,還需要重啟一下網(wǎng)絡(luò)守護(hù)程序:service xinetd restart,tftp服務(wù)器就配置完成了。本課題對(duì)此tftp服務(wù)器進(jìn)行了測(cè)試:復(fù)制一個(gè)文件something至/tftpboot/目錄下,然后執(zhí)行8:tftp 得到以下結(jié)果:Received 741512 bytes in 0.01 secends此信息表明tftp服務(wù)器已經(jīng)配置成功,可以正常使用。本系統(tǒng)的內(nèi)核文件和根文件系統(tǒng)都是通過(guò)tftp下載到目標(biāo)平臺(tái)的。2.3.3 配置NFS服務(wù)器網(wǎng)絡(luò)文件系統(tǒng)NFS極大地化簡(jiǎn)了開(kāi)發(fā)與調(diào)試過(guò)程。在沒(méi)有NFS的情況下,一般的開(kāi)發(fā)調(diào)試過(guò)程都是:編譯生成目標(biāo)平臺(tái)的可執(zhí)行文件-制作ramdisk-下載ramdisk到開(kāi)發(fā)板上-啟動(dòng)開(kāi)發(fā)板的系統(tǒng)-運(yùn)行程序10。這個(gè)過(guò)程將一直重復(fù),直到程序的運(yùn)行結(jié)果正確為止。有了NFS,開(kāi)發(fā)板上的系統(tǒng)可以把宿主機(jī)的某個(gè)目錄當(dāng)作本機(jī)上的目錄甚至是根目錄。這樣,把宿主機(jī)上交叉編譯好的可執(zhí)行文件復(fù)制到NFS目錄中,在開(kāi)發(fā)板上就可以運(yùn)行該可執(zhí)行文件。開(kāi)發(fā)調(diào)試過(guò)程變?yōu)椋壕幾g生成目標(biāo)平臺(tái)的可執(zhí)行文件-復(fù)制文件到nfs目錄-運(yùn)行程序,省去了制作ramdisk、下載ramdisk和重啟開(kāi)發(fā)板幾個(gè)步驟,而這幾個(gè)步驟又是占整個(gè)過(guò)程絕大部分時(shí)間的,因此也節(jié)省了大量的寶貴時(shí)間9。RHEL4完全安裝版有NFS服務(wù)器程序,需要做一些配置才能使其可用。(1)設(shè)置服務(wù)器網(wǎng)卡,包括IP地址、掩碼地址等,可參考Linux教材。(2)關(guān)閉防火墻從Main Menu,選擇System Settings-Security Level,進(jìn)入安全級(jí)別設(shè)置界面,將其安全級(jí)別設(shè)置為No Firewall。(3)去掉iptables服務(wù)從Main Menu,選擇System Settings-Server Settings-Services,在彈出的界面中,將iptables、ip6tables和ipchains前面的”去掉。(4)啟動(dòng)NFS服務(wù)從Linux的Main Menu,選擇System Settings-Server Settings-NFSServer,添加NFS路徑。本課題對(duì)NFS服務(wù)進(jìn)行了測(cè)試,將主機(jī)上的共享目錄mount到自己另外一個(gè)目錄下:#mount :/root/mnt然后查看/mnt目錄,能夠看到共享目錄下的文件,證明NFS服務(wù)啟動(dòng)成功。為了方便應(yīng)用,本文在/etc/rc.local文件末尾添加下邊所示的命令,讓每次開(kāi)機(jī)即啟動(dòng)NFS服務(wù)。service portmap restartservice nfs restart3 無(wú)線點(diǎn)菜系統(tǒng)的服務(wù)端與客戶端的網(wǎng)絡(luò)設(shè)計(jì)3.1 無(wú)線網(wǎng)絡(luò)設(shè)計(jì)本論文的無(wú)線點(diǎn)菜系統(tǒng)主要由客戶端、計(jì)算機(jī)網(wǎng)絡(luò)和服務(wù)器三部分組成,而且服務(wù)器端與客戶端的通訊主要是通過(guò)無(wú)線網(wǎng)絡(luò)wifi進(jìn)行數(shù)據(jù)傳輸,為了實(shí)現(xiàn)點(diǎn)菜終端與服務(wù)器通過(guò)無(wú)線網(wǎng)絡(luò)相連接。整體結(jié)構(gòu)圖如圖2.1所示。3.1.1 無(wú)線局域網(wǎng)20世紀(jì)90年代,無(wú)線通信技術(shù)與計(jì)算機(jī)網(wǎng)絡(luò)相結(jié)合產(chǎn)生了無(wú)線局域網(wǎng)(Wireless Local Area Network,WLAN)技術(shù)。WLAN是指采用無(wú)線介質(zhì)傳輸?shù)挠?jì)算機(jī)局域網(wǎng),采用的標(biāo)準(zhǔn)是IEEE 802.11系列。WLAN可以為移動(dòng)或半移動(dòng)的用戶提供高效、優(yōu)質(zhì)、低成本的寬帶接入服務(wù)。無(wú)線局域網(wǎng)(WLAN)是相當(dāng)方便的數(shù)據(jù)傳輸系統(tǒng),是取代雙絞線的無(wú)線局域網(wǎng)絡(luò),WLAN的傳輸方式包括WLAN采用的傳輸媒介、選擇的頻段及調(diào)制方式。無(wú)線局域網(wǎng)具有通信可靠、成本低、靈活性、可移動(dòng)性和高吞吐量等特點(diǎn)。WLAN的應(yīng)用非常廣泛,它是有線網(wǎng)絡(luò)的備份,利用計(jì)算機(jī)無(wú)線網(wǎng)絡(luò)作為有線網(wǎng)絡(luò)的備份,可以大幅度提高網(wǎng)絡(luò)系統(tǒng)的可靠性,當(dāng)有線系統(tǒng)出現(xiàn)故障時(shí),系統(tǒng)可自動(dòng)切換到無(wú)線網(wǎng)絡(luò),應(yīng)用可照常進(jìn)行。同時(shí)無(wú)線網(wǎng)絡(luò)相對(duì)于有線網(wǎng)絡(luò)具有很大的靈活性和機(jī)動(dòng)性。無(wú)線網(wǎng)絡(luò)的站點(diǎn)可以按照需要在一定的區(qū)域內(nèi)移動(dòng),從而實(shí)現(xiàn)移動(dòng)通信10。3.1.2 IEEE 802.1lb體系結(jié)構(gòu)IEEE(電子電機(jī)工程師防會(huì),The Institute of Electrical and Engineer)在1997年時(shí)提出了一個(gè)無(wú)線網(wǎng)絡(luò)的通信標(biāo)準(zhǔn),稱為IEEE802.11,這個(gè)規(guī)格是為了各個(gè)廠商的無(wú)線網(wǎng)絡(luò)設(shè)備在這個(gè)標(biāo)準(zhǔn)下達(dá)到兼容并且穩(wěn)定的無(wú)線傳播環(huán)境。早在1990年,IEEE802標(biāo)準(zhǔn)化委員會(huì)就成立了IEEE802.11 WLAN標(biāo)準(zhǔn)工作組,其主要任務(wù)是研究工作在工業(yè)、科技、醫(yī)療(Industry,Science and Medicine,ISM)2.4 GHz頻段、傳輸速率為1 Mbit/s和2 Mbit/s的無(wú)線設(shè)備和網(wǎng)絡(luò)發(fā)展的標(biāo)準(zhǔn),并于1997年7月公布了該標(biāo)準(zhǔn)。1999年,IEEE通過(guò)了802.11a和802.11b標(biāo)準(zhǔn)。802.11a定義了采用正交頻分復(fù)用(Orthogonal Frequency Division Multiplexing,OFDM)調(diào)制技術(shù)在5GHz頻段實(shí)現(xiàn)54 Mbit/s傳輸速率的無(wú)線傳輸。802.11b定義了使用直接序列擴(kuò)頻(Direct Sequence Spread Spectrum,DSSS)調(diào)制技術(shù)在2.4GHz頻帶實(shí)現(xiàn)11 Mbit/s速率的無(wú)線傳輸。由于DSSS技術(shù)的實(shí)現(xiàn)比OFDM容易,802.11b標(biāo)準(zhǔn)的發(fā)展比802.11a快很多,在1999年末首先出現(xiàn)了支持802.1lb標(biāo)準(zhǔn)的產(chǎn)品,隨后得到廣泛應(yīng)用,并通過(guò)互通性測(cè)試。因此802.11b,成為當(dāng)今WLAN的主流標(biāo)準(zhǔn)。目前,市場(chǎng)上有許多802.1lb的產(chǎn)品問(wèn)世,如用戶可以將PCMCIA接口的IEEE802.1lb無(wú)線網(wǎng)絡(luò)片插在具有PCMCIA擴(kuò)充槽的筆記本電腦或者是個(gè)人數(shù)字助理上,就可以在152.4米范圍內(nèi)與無(wú)線橋接器(Wireless Access Points)連上,進(jìn)行網(wǎng)絡(luò)的傳輸工作、收發(fā)Email或者是瀏覽網(wǎng)頁(yè)等。IEEE8021lb具有基本的加密機(jī)制Wired Equivalent privacy Mechanism,可以確保數(shù)據(jù)傳輸?shù)陌踩詥?wèn)題,用以防止一般數(shù)據(jù)被他人截獲,并且保護(hù)數(shù)據(jù)傳輸?shù)耐暾浴?02.11b的最大特點(diǎn)是可以根據(jù)無(wú)線信道狀況的變化,在11Mbit/s,5.5Mbit/s,2 Mbit/s,1Mbit/s之間進(jìn)行速率的動(dòng)態(tài)調(diào)整。802.11無(wú)線網(wǎng)絡(luò)只要在原有的網(wǎng)絡(luò)架構(gòu)上安裝一部AP(Access Point,俗稱的“無(wú)線網(wǎng)絡(luò)接入點(diǎn)”)后,就可以提供無(wú)線網(wǎng)絡(luò)的服務(wù)。本文設(shè)計(jì)的無(wú)線點(diǎn)菜系統(tǒng)還須在嵌入式Linux設(shè)備上安裝無(wú)線網(wǎng)卡,這樣就可以通過(guò)AP存取網(wǎng)絡(luò)上的資源了。3.2 點(diǎn)菜客戶終端無(wú)線硬件設(shè)備本課題實(shí)現(xiàn)的點(diǎn)菜終端硬件平臺(tái)使用的是TQ2440開(kāi)發(fā)板平臺(tái),TQ2440是一款可使用Linux和WinCE操作系統(tǒng)、支持QT、GUI圖形系統(tǒng),集眾多功能于一身的ARM9教學(xué)實(shí)驗(yàn)開(kāi)發(fā)平臺(tái)。采用Samsung公司的ARM920T內(nèi)核的S3C2440微處理器,擴(kuò)展有充足的存儲(chǔ)資源和眾多典型的嵌入式系統(tǒng)接口,是優(yōu)秀的嵌入式系統(tǒng)創(chuàng)新平臺(tái)。本點(diǎn)菜終端的處理器采用三星S3C2440芯片,為系統(tǒng)運(yùn)行提供了速度上的保障:存儲(chǔ)部分采用了兩塊Flash存儲(chǔ)器,一塊是用來(lái)存放bootloader的SST公司的SST39VFl601 2MB Nor Flash,另一塊是用來(lái)存儲(chǔ)文件系統(tǒng)的Samsung公司K9F1208 64MB NAND Flash,為操作系統(tǒng)提供了充足的空間;內(nèi)存方面用的使Hynix公司的HY57V657620的64MB內(nèi)存,PC100/133兼容。另外,在處理器外圍還擴(kuò)展了LCD、PCMCIA、鍵盤、無(wú)線通信模塊11。其總體結(jié)構(gòu)如圖3.2所示:圖3.1 TQ2440總體結(jié)構(gòu)圖無(wú)線管理系統(tǒng)和運(yùn)作所需要的功能核心都集中在PC上,顯然,上位機(jī)程序的運(yùn)行離不開(kāi)PC機(jī)的絕大部分硬件、軟件資源,因而,對(duì)于PC上的處理器、存儲(chǔ)器、文件系統(tǒng)等等的利用此處不加論述,而僅以PC串口為中心進(jìn)行PC上的硬件利用的介紹。串口通信,即PC串口和終端的鏈接問(wèn)題,故而將所有有關(guān)串口的問(wèn)題作為一個(gè)整體進(jìn)行介紹。進(jìn)一步基站串口及其連接、使用,必然需要先了解終端的核心微控制器,在此先介紹終端的核心處理芯片開(kāi)始。S3C2440是Samsung公司推出的16/32位RISC處理器(ARM920T內(nèi)核),適用于手持設(shè)備、POS機(jī)、數(shù)字多媒體播放設(shè)備等等,具有低價(jià)格、底功耗、高性能等特點(diǎn)。S3C2440提供了以下豐富的內(nèi)部設(shè)備:16KB的指令Cache和16KB數(shù)據(jù)Cache,MMU虛擬存儲(chǔ)器管理,LCD控制器(支持STN&TFT),支持NAND Flash系統(tǒng)引導(dǎo),系統(tǒng)管理器(片選邏輯和SDRAM控制器),3通道UART,4通道DMA,4通道PWM定時(shí)器,I/O端口,RTC,8通道10位ADC和觸摸屏接口,IIC總線接口,IIS總線接口,USB主機(jī)接口,USB設(shè)備接口,SD卡&MMC卡接口,2個(gè)SPI總線接口以及內(nèi)部PLL時(shí)鐘倍頻器。S3C2440采用了ARM920T內(nèi)核,0.18um工藝的CMOS標(biāo)準(zhǔn)宏單元和存儲(chǔ)器單元。它的低功耗、精簡(jiǎn)和出色的全靜態(tài)設(shè)計(jì)特別適用于對(duì)成本和功耗敏感的應(yīng)用。同樣他還采用了Advanced Microcontroller Bus Architecture(AMBA)新型總線結(jié)構(gòu)。S3C2440提供了一系列完整的系統(tǒng)外圍設(shè)備,消除了對(duì)系統(tǒng)配置額外器件的需要,大大減少了整個(gè)系統(tǒng)的成本。S3C2440主要的特征如下:203Mhz的ARM920T內(nèi)核,支持JTAG仿真調(diào)試;16KB的I-Cache和16KB的D-Cache;具有MMU,支持WinCE、EPOC32、Linux等操作系統(tǒng);外部存儲(chǔ)器控制器(SDRAM控制和片選邏輯),共分8個(gè)Bank,每個(gè)Bank可訪問(wèn)128MB空間;片選4KB SRAM,可用作NAND Flash系統(tǒng)引導(dǎo)得緩沖區(qū);LCD控制器(最大支持4K色STN和256色TFT),1通道LCD專用DMA;4通道DMA,有外部請(qǐng)求引腳;3個(gè)UART(IrDAl.0,16字節(jié)TxFIFO,16字節(jié)RxFIFO);2個(gè)SPI總線接口;1個(gè)多主IIC總線接口;1個(gè)IIS總線接口;兼容SD主接口協(xié)議1.0版和MMC卡協(xié)議2.11兼容版;NAND Flash/SM卡接口,支持NAND Flash系統(tǒng)引導(dǎo);2個(gè)USB主機(jī)接口,1個(gè)USB設(shè)備接口(V1.1);4個(gè)PWM定時(shí)器和一個(gè)內(nèi)部定時(shí)器;看門狗定時(shí)器;117個(gè)通用I/O口;24個(gè)外部中斷;8個(gè)通道10位ADC和觸摸屏接口;具有日歷和時(shí)鐘功能得RTC;1.8V內(nèi)核供電,3.3V存儲(chǔ)供電,3.3V外部I/O供電;功耗控制模式:普通,慢速,空閑和掉電模式;具有片內(nèi)PLL時(shí)鐘發(fā)生器;S3C2440的編程模型及指令集除了擴(kuò)展一些設(shè)備控制器外與ARM920T都是相同。3.3 點(diǎn)菜服務(wù)端和客戶終端的調(diào)試連接方式在服務(wù)器端無(wú)線傳輸是通過(guò)wifi的無(wú)線接入點(diǎn),進(jìn)行數(shù)據(jù)的發(fā)送和接受。而在TQ2440平臺(tái)(模擬客戶終端)上,CF無(wú)線網(wǎng)卡(見(jiàn)圖3.2)通過(guò)CF轉(zhuǎn)PCMCIA接口卡與系統(tǒng)相連。CF卡全稱是“Compact Flash”(CF:壓縮閃存)是目前世界上最小的大容量存儲(chǔ)設(shè)備之一,1994年由SanDisk最先推出。CF卡具有PCMCIA-ATA功能,并與之兼容。CF卡50針,但能夠很容易地插入68針I(yè)I型適配器卡(槽)(完全滿足PCMCIA機(jī)電界面技術(shù)要求)中使用。CF卡使用的連接器與PCMCIA的相似。PCMCIA/CF卡擁有兩個(gè)存儲(chǔ)空間:屬性內(nèi)存(attribute memory)和公共內(nèi)存(common memory)。屬性內(nèi)存類似于CIS(Card Information Structure),用來(lái)保存配置注冊(cè)和描述符信息。Linux卡服務(wù)核心與主機(jī)控制器設(shè)備驅(qū)動(dòng)程序、卡設(shè)備驅(qū)動(dòng)程序及用戶模式cardmgr后臺(tái)進(jìn)程交互。我們使用的是華碩WL-110無(wú)線網(wǎng)卡,該網(wǎng)卡符合802.11b協(xié)議,使用CF接口。配置網(wǎng)卡之前,必須先禁用有線網(wǎng)絡(luò)連接設(shè)備eth0,否則產(chǎn)生沖突,無(wú)法連接網(wǎng)絡(luò)。在平臺(tái)插入無(wú)線網(wǎng)卡后,先運(yùn)行cardmgr命令,對(duì)無(wú)線網(wǎng)絡(luò)進(jìn)行配置檢測(cè),然后可以使用cardctl命令查看狀態(tài)網(wǎng)絡(luò)狀態(tài),若檢測(cè)到就可以配置IP地址通過(guò)無(wú)線接入點(diǎn)AP上網(wǎng)了,ping網(wǎng)關(guān)可以看到網(wǎng)絡(luò)連通的信息,同時(shí),執(zhí)行ifconfig可以看到ethl設(shè)備,即配置成功。如果配置好了無(wú)線網(wǎng)卡后仍然不能通過(guò)無(wú)線網(wǎng)絡(luò)上網(wǎng),這是因?yàn)槭殖纸K端的有線網(wǎng)絡(luò)沒(méi)有屏蔽掉。用命令:ifconfigethodown來(lái)屏蔽掉有線網(wǎng)絡(luò)。然后就可以利用無(wú)線網(wǎng)絡(luò)來(lái)上網(wǎng)。本系統(tǒng)啟動(dòng)無(wú)線網(wǎng)絡(luò)的命令為12:#cardmgr#ifconfig ethl #ifconfig eth0 downcardmgr命令來(lái)激活無(wú)線網(wǎng)卡,ifconfig命令來(lái)設(shè)置無(wú)線IP,最后一個(gè)命令就是用來(lái)屏蔽有線網(wǎng)絡(luò)。4 無(wú)線點(diǎn)菜系統(tǒng)服務(wù)端軟件設(shè)計(jì)4.1 點(diǎn)菜軟件系統(tǒng)的總體設(shè)計(jì)在系統(tǒng)軟件方面,我們?yōu)橄到y(tǒng)移植了bootloader-uboot;操作系統(tǒng)內(nèi)核采用的是linux2.6.30,并對(duì)內(nèi)核重新進(jìn)行了配置,去掉一些與本系統(tǒng)無(wú)關(guān)的選項(xiàng),使內(nèi)核最小化;根文件系統(tǒng)采用了ramdisk格式,并在其中加入了Qt/Embedded的庫(kù)文件以及MySQL客戶端可執(zhí)行文件【13】;我們?cè)诜?wù)器端的Linux系統(tǒng)上運(yùn)行了MySQL數(shù)據(jù)庫(kù),用來(lái)存儲(chǔ)數(shù)據(jù)。下圖為本系統(tǒng)的軟件結(jié)構(gòu)圖。圖4.1軟件結(jié)構(gòu)圖本設(shè)計(jì)綜合運(yùn)用嵌入式數(shù)據(jù)庫(kù)、網(wǎng)絡(luò)通信及嵌入式圖形界面。系統(tǒng)采用C/S結(jié)構(gòu),實(shí)現(xiàn)簡(jiǎn)單的基于以太網(wǎng)的點(diǎn)菜系統(tǒng)。PC機(jī)將作為服務(wù)器置于廚房,存儲(chǔ)菜品并顯示點(diǎn)菜情況;嵌入式開(kāi)發(fā)板TQ2440作為客戶端,顯示菜品信息和房間占有信息,服務(wù)員根據(jù)顧客的需求在客戶端上選擇房間并為顧客點(diǎn)菜,顧客用完餐后服務(wù)員在客戶端更新房間占用情況。系統(tǒng)結(jié)構(gòu)如圖4.2所示。圖4.2無(wú)線點(diǎn)菜系統(tǒng)圖根據(jù)以上分析,我們可以設(shè)計(jì)服務(wù)端功能模塊層次結(jié)構(gòu)如圖4.3:主控模塊(圖形界面)服務(wù)器端收發(fā)數(shù)據(jù)更新房間狀態(tài)查詢數(shù)據(jù)顯示房間及其菜單圖4.3服務(wù)端功能模塊層次結(jié)構(gòu)圖4.2 服務(wù)端數(shù)據(jù)庫(kù)需求分析4.2.1 數(shù)據(jù)流圖1)“電子點(diǎn)菜系統(tǒng)”頂級(jí)(0級(jí))數(shù)據(jù)流圖圖4.4頂級(jí)數(shù)據(jù)流圖服務(wù)員和廚師的交流,是通過(guò)無(wú)線點(diǎn)菜系統(tǒng)的數(shù)據(jù)處理,再進(jìn)行轉(zhuǎn)化為相關(guān)信息。2)“電子點(diǎn)菜系統(tǒng)”1級(jí)數(shù)據(jù)流圖圖4.5 “電子點(diǎn)菜系統(tǒng)”1級(jí)數(shù)據(jù)流圖這是前臺(tái)餐廳中,服務(wù)員掌握了客戶選房/退房、點(diǎn)菜和就餐情況等信息,通過(guò)無(wú)線點(diǎn)菜系統(tǒng)的客戶端,發(fā)送信息到服務(wù)器端。服務(wù)器接受客戶

溫馨提示

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

評(píng)論

0/150

提交評(píng)論