【正文】
;(5)尋址方式靈活簡單,執(zhí)行效率高;(6)指令長度固定。目前,采用 ARM 技術(shù)知識產(chǎn)權(quán)(IP)核的微處理器,即人們通常所說的 ARM 微處理器,已遍及工業(yè)控制、消費類電子產(chǎn)品、通信系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、無線系統(tǒng)等各類產(chǎn)品市場,基于 ARM 技術(shù)的微處理器應(yīng)用約占據(jù)了 32 位 RISC 微處理器 75%以上的市場份額,ARM 技術(shù)正在逐步滲入到人們生活的各個方面。建立 PC 上的開發(fā)環(huán)境應(yīng)在宿主機上安裝標準 Linux 操作系統(tǒng),推薦使用RedHat Linux,一定要確保計算機的網(wǎng)卡驅(qū)動、網(wǎng)絡(luò)通訊配置正常。上面已經(jīng)提到,嵌入式系統(tǒng)由于資源有限,這些工作的安裝調(diào)試需要在目標機進行,調(diào)試完成后下載到宿主機中,這也可能是一個多次重復(fù)反復(fù)進行的工作。目標機運行 uClinux 系統(tǒng),并在系統(tǒng)上運行嵌入式應(yīng)用軟件。圖 uClinux 的交叉編譯環(huán)境 第 12 頁目標機主要用于運行操作系統(tǒng)和系統(tǒng)應(yīng)用軟件,而操作系統(tǒng)的內(nèi)核編譯、應(yīng)用程序的開發(fā)和調(diào)試則需要通過宿主 PC 機來完成。 概要設(shè)計 開發(fā)環(huán)境課題最終選擇帶 TCP/IP 協(xié)議族的 uClinux 操作系統(tǒng)來完成項目的設(shè)計,所以要針對 uClinux 上程序的開發(fā)配置特定的 PC 機環(huán)境。 缺少 MMU 單元,對于系統(tǒng)及應(yīng)用程序開發(fā)帶來一定的限制,但對于成本和體積敏感的嵌入式設(shè)備,由于應(yīng)用環(huán)境和應(yīng)用需求并不要求復(fù)雜和相對昂貴的硬件體系,內(nèi)存的分配和管理完全可以由開發(fā)人員解決。uClinux 管理內(nèi)存的方法是采用實存儲器管理,通過地址總線對物理內(nèi)存進行直接訪問,程序中訪問的地址都是實際的物理地址,所有的進程都在一個運行空間中運行。在 ARM7TDMI 第 11 頁嵌入式處理器沒有 MMU 模塊。Linux 和 uClinux 本身并不支持實時性應(yīng)用,但是設(shè)計時候,對 ucLinux 可以進行實時性的修改,提供基于內(nèi)核空間和用戶空間的硬實時和軟實時的系統(tǒng)調(diào)用。 (2)操作系統(tǒng)的實時性 實時系統(tǒng)是指一個系統(tǒng)在執(zhí)行時能夠?qū)ν獠?、異步發(fā)生的事務(wù),于一定的時間采取響應(yīng) [17],當一個優(yōu)先等級高的進程能夠獲得系統(tǒng)立即的、沒有延遲的服務(wù)而不需要等候任何進程,而且在它奪取到 CPU 的使用權(quán)后,它可以一直執(zhí)行到工作結(jié)束或是有更高等級的進程出現(xiàn)為止。 uClinux 系統(tǒng)一般采用 Romfs 文件系統(tǒng),這種文件系統(tǒng)相對簡單、占用空間較少。通常的 Linux 系統(tǒng),都需要占用上百兆的空間。操作系統(tǒng)選擇不正確,有可能導(dǎo)致系統(tǒng)根本無法運行。(5)執(zhí)行效率執(zhí)行效率是另一個評價基準。操作系統(tǒng)的穩(wěn)定性在操作系統(tǒng)設(shè)計之初,就已經(jīng)由系統(tǒng)的設(shè)計構(gòu)想和編碼質(zhì)量決定了。(3)應(yīng)用軟件資源嵌入式操作系統(tǒng)在應(yīng)用過程中需要多方軟件支持,包括協(xié)議棧、設(shè)備驅(qū)動以及一些應(yīng)用程序,在設(shè)計過程中,可以方便的應(yīng)用這些軟件,或者只需要很少的 第 10 頁改動就可以適用于新的平臺。通常所說的資源主要是嵌入式芯片的內(nèi)存和 Flash。從應(yīng)用的角度來說,選用一種穩(wěn)定可靠的微處理器是設(shè)計成功的關(guān)鍵。不帶 TCP/IP 協(xié)議族的 uCOSII 操作系統(tǒng),自己構(gòu)建 TCP/IP 協(xié)議族,編寫上層 socket 通信模塊完成程序的通信。(2)方案 2包含操作系統(tǒng),其中又分為帶 TCP/IP 協(xié)議族的操作系統(tǒng)和不帶 TCP/IP 協(xié)議族的操作系統(tǒng) [11]。在此基礎(chǔ)上,設(shè)計上層通信模塊,通過調(diào)用 socket 函數(shù)來實現(xiàn)各種功能,包括數(shù)據(jù)的接收和發(fā)送,數(shù)據(jù)的校驗等等 [10]。設(shè) 第 9 頁計過程中,首先開發(fā)板的網(wǎng)絡(luò)芯片能夠正常工作,其次要完成通信就必須要有完善的通信的協(xié)議,根據(jù)系統(tǒng)的要求選擇合適的協(xié)議 [9]。要完成通信,就要完成系統(tǒng)底層硬件的驅(qū)動等一系列的工作,首先啟動宿主機和客戶機的操作系統(tǒng)Linux 和 uClinux,然后每個模塊加載網(wǎng)絡(luò)設(shè)備驅(qū)動程序,最后通過 TCP/IP 協(xié)議建立雙方的通信鏈路,完成 Socket 通信,詳細情況如圖 所示 [8]。宿主機和開發(fā)板通過 Switch 交換機進行網(wǎng)絡(luò)通信,宿主機一方作為服務(wù)器端,開發(fā)板作為客戶端,系統(tǒng)的原理如下圖 所示。由于嵌入式開發(fā)要結(jié)合軟件和硬件的詳細情況來操作,所以系統(tǒng)的開發(fā)應(yīng)該具有以下的幾種操作接口,第一用戶可以通過以 RJ45 的以太網(wǎng)對開發(fā)板和系統(tǒng)操作,其次用戶可以采用串口的方式對開發(fā)板的功能和運行效果進行操作,最后操作人員還可以通過開發(fā)板特有的 JTAG 對開發(fā)板進行操作。 系統(tǒng)設(shè)計思路系統(tǒng)的設(shè)計開發(fā),宿主機采用的是任意發(fā)行版本的 Linux 系統(tǒng),但程序是采用標準 C 語言來編寫,可以在不同的 Linux 系統(tǒng)中實現(xiàn)通信功能。嵌入式設(shè)備還具有網(wǎng)絡(luò)設(shè)備標識,也就是嵌入式設(shè)備有自己唯一的 IP 地址,只有這樣,才能完成 Inter 上網(wǎng)絡(luò)設(shè)備之間的通信。2 需求分析 任務(wù)概述論文的主要工作,是選擇適當?shù)那度胧介_發(fā)平臺和文件系統(tǒng),建立交叉的編譯環(huán)境,構(gòu)建 TCP/IP 網(wǎng)絡(luò)體系,實現(xiàn)客戶端和服務(wù)器端的 socket 通信。 第 5 頁將嵌入式系統(tǒng)與網(wǎng)絡(luò)結(jié)合起來,主要的困難在于網(wǎng)絡(luò)上的各種通訊協(xié)議對于計算機的存儲器,運算速度等的要求比較高,而嵌入式系統(tǒng)中除部分 32 位微處理器外,大量存在的是 8 位和 16 位的微處理器,如果要支持 TCP/IP 等 Inter協(xié)議將占用大量系統(tǒng)資源,或根本不可能實現(xiàn) [6]。 課題研究范圍及要達到的技術(shù)要求課題是基于 ARM 的嵌入式 socket 通信設(shè)計,研究的范圍包含:ARM 上uClinux 操作系統(tǒng)的移植、Linux 下 socket 通信的建立、交叉編譯環(huán)境下嵌入式socket 通信的實現(xiàn)等。這種網(wǎng)絡(luò)的設(shè)計和開發(fā)基本都是基于嵌入式技術(shù)的。通過網(wǎng)絡(luò),可以進行遠程的家庭監(jiān)控,我們經(jīng)常使用的家用電器。在工業(yè)控制方面,嵌入式網(wǎng)絡(luò)可以有效可靠地進行遠程控制和操作,通過網(wǎng)絡(luò)通訊模塊進行協(xié)議的轉(zhuǎn)換,各個控制對象可以獨立為嵌入式網(wǎng)絡(luò)的一個終端,這種控制可以做到有效、可靠和實時。當然,還有經(jīng)常使用的 B2B 網(wǎng)上購物、遠程會診等等。(2)嵌入式網(wǎng)絡(luò)技術(shù)為工業(yè)控制領(lǐng)域設(shè)備的發(fā)展提供動力基于嵌入式系統(tǒng)的網(wǎng)絡(luò)技術(shù),隨著嵌入式技術(shù)的迅猛發(fā)展,也得到了廣泛的應(yīng)用。(1)嵌入式網(wǎng)絡(luò)為終端設(shè)備網(wǎng)絡(luò)化提供了保障如果將我們所有的終端設(shè)備進行網(wǎng)絡(luò)連接,可以方便有效地進行信息溝通和數(shù)據(jù)共享,同時也為管理者提供了一種有效的管理方式。以太網(wǎng)是使用最為廣泛的網(wǎng)絡(luò),由于標準的統(tǒng)一,硬件的支持和配套,普通人員也可以使用,是信息交流和流通的重要渠道。比如我們經(jīng)常使用的CAN,485 總線等。 選題的目的和意義傳統(tǒng)的數(shù)據(jù)傳輸和通訊,需要鋪設(shè)專用的介質(zhì)和電纜。它以應(yīng)用為中心、以計算機技術(shù)為基礎(chǔ),而且軟硬件可以裁剪,因而能滿足應(yīng)用系統(tǒng)對功能、可靠性、成本、體積和功耗的嚴格要求的專用計算機系統(tǒng)。我們使用的移動設(shè)備,基本上都是基于嵌入式系統(tǒng)設(shè)計開發(fā)的。目前,互聯(lián)網(wǎng)已經(jīng)開始普及,包括廣大的農(nóng)村,網(wǎng)絡(luò)成為了我們生活的一部分。在網(wǎng)絡(luò)通訊方面,嵌入式系統(tǒng)的發(fā)展增強了網(wǎng)絡(luò)的智能化與靈活性,從而實現(xiàn)各種通信系統(tǒng)之間的互聯(lián)互通。 選題必要性當前,計算機技術(shù)和微電子技術(shù)發(fā)展迅猛,特別是納米技術(shù)取得了重大進展,嵌入式芯片的設(shè)計和開發(fā)也越來越迅速。手寫文字輸入、語音撥號上網(wǎng)、收發(fā)電子郵件以及彩色圖形、圖像都會使使用者獲得自由的感受。圖像界面,靈活的控制方式,使得人們感覺嵌入式設(shè)備就象是一個熟悉的老朋友。因此,既要軟件人員有豐富的硬件知識,又需要發(fā)展先進嵌入式軟件技術(shù),如 Java、Web 和 WAP 等?!?(4)精簡系統(tǒng)內(nèi)核、算法,降低功耗和軟硬件成本。傳統(tǒng)的單片機對于網(wǎng)絡(luò)支持不足,而新一代的嵌入式處理器已經(jīng)開始內(nèi)嵌網(wǎng)絡(luò)接口,除了支持 TCP/IP 協(xié)議,還有的支持IEEE139USB、CAN、Bluetooth 或 IrDA 通信接口中的一種或者幾種,同時也需要提供相應(yīng)的通信組網(wǎng)協(xié)議軟件和物理層驅(qū)動軟件。(3)網(wǎng)絡(luò)互聯(lián)成為必然趨勢。這就要求芯片設(shè)計廠商在芯片上集成更多的功能,為了滿足應(yīng)用功能的升級,設(shè)計師們一方面采用更強大的嵌入式處理器如 32 位、64 位 RISC 芯片或信號處理器 DSP 增強處理能力,同時增加功能接口,如 USB,擴展總線類型,如CAN BUS,加強對多媒體、圖形等的處理,逐步實施片上系統(tǒng)(SOC)的概念。當然,這也是市場競爭的結(jié)果?! ∧壳昂芏鄰S商已經(jīng)充分考慮到這一點,在主推系統(tǒng)的同時,將開發(fā)環(huán)境也作為重點推廣。信息時代,數(shù)字時代使得嵌入式產(chǎn)品獲得了巨大的發(fā)展契機,為嵌入式市場展現(xiàn)了美好的前景,同時也對嵌入式生產(chǎn)廠商提出了新的挑戰(zhàn)。嵌入系統(tǒng)是一個片上系統(tǒng),應(yīng)用空間巨大,在各個方面都可以應(yīng)用,比如工業(yè)控制領(lǐng)域、消費電子、移動通訊等,都得到了廣泛的使用。在可靠性方面,要求嵌入式系統(tǒng)的代碼執(zhí)行效率高,系統(tǒng)運行穩(wěn)定可靠,也別是在工業(yè)控制領(lǐng)域?;?ARM7TDMI 的嵌入式芯片,在指令設(shè)計上使用是精簡指令集,執(zhí)行效率高;使用三級流水技術(shù),大大增強了嵌入式產(chǎn)品的性能 [1]。這樣做的主要目的是節(jié)約資源,讓嵌入式芯片發(fā)揮更大的作用。比如我們使用的手機產(chǎn)品,用戶有各種各樣的需求,有的看重的是移動功能,有的看中的是娛樂功能,還有的看中的是導(dǎo)航功能。每一個嵌入式產(chǎn)品是不同的,使用不同的硬件和軟件,搭建自己的嵌入式操作系統(tǒng),但是核心技術(shù)都是一樣的。嵌入式系統(tǒng)的基本技術(shù)仍然是計算機技術(shù),包含軟件、硬件、操作系統(tǒng)等。關(guān)鍵詞:嵌入式系統(tǒng);ARM7TDMI;socket;TCP/IP 第 II 頁AbstractThe embedded system is a plex system with the puter technology, semiconductor technology and electronic technology .It has been widely used in scientific research, engineering, national defense, automation and other fields. With the rapid development of work munication technology,our production and life requires the terminal to plete the work munication function in a wide range of embedded systems. The Paper select the ARM7 TDMI for embedded development platform, develop the embedded work munication terminal. Socket is a munication chain handle, and sends work request or response to work requests. It is used to describe the IP address and port for both TCP / IP based protocol to municate between applications,. The paper select LPC2200 embedded ARM as processor architecture, with the system need, design the integration based on transplantation with TCP / IP protocol ucLinux embedded operating system. The paper build related file cutting and custom systems. On this basis, finished an application, and call the system function of Socket Communications, achieve server and client munication. The paper achieved the work access functions of the embedded device, the embedded with a work munication terminal can municate with each other, and expand and improve the application range of embedded devices, and has a greater significance for embedded systems.Key words: Embedded Systems;ARM7TDMI;socket;TCP/IP 第 III 頁目 錄1 緒論 ............................................................................................................