《嵌入式系統(tǒng)開(kāi)發(fā)-基于ZigBee技術(shù)智能交通燈的設(shè)計(jì)與實(shí)現(xiàn)》課程設(shè)計(jì)_第1頁(yè)
《嵌入式系統(tǒng)開(kāi)發(fā)-基于ZigBee技術(shù)智能交通燈的設(shè)計(jì)與實(shí)現(xiàn)》課程設(shè)計(jì)_第2頁(yè)
《嵌入式系統(tǒng)開(kāi)發(fā)-基于ZigBee技術(shù)智能交通燈的設(shè)計(jì)與實(shí)現(xiàn)》課程設(shè)計(jì)_第3頁(yè)
《嵌入式系統(tǒng)開(kāi)發(fā)-基于ZigBee技術(shù)智能交通燈的設(shè)計(jì)與實(shí)現(xiàn)》課程設(shè)計(jì)_第4頁(yè)
《嵌入式系統(tǒng)開(kāi)發(fā)-基于ZigBee技術(shù)智能交通燈的設(shè)計(jì)與實(shí)現(xiàn)》課程設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩48頁(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)介

1、嵌入式系統(tǒng)開(kāi)發(fā)嵌入式系統(tǒng)開(kāi)發(fā) 課程設(shè)計(jì)課程設(shè)計(jì) (題目:基于(題目:基于 ZigBeeZigBee 技術(shù)智能交通燈的設(shè)計(jì)與實(shí)技術(shù)智能交通燈的設(shè)計(jì)與實(shí) 現(xiàn))現(xiàn)) 院 (系) 信息工程學(xué)院 專 業(yè) 班 級(jí) 學(xué) 生 姓 名 學(xué) 號(hào) 設(shè) 計(jì) 地 點(diǎn) 13 號(hào)樓 605 指 導(dǎo) 教 師 起止時(shí)間:2014 年 11 月 3 日至 2014 年 11 月 14 日 安徽新華學(xué)院嵌入式系統(tǒng)開(kāi)發(fā)課程設(shè)計(jì) 基于基于 ZigBeeZigBee 技術(shù)智能交通燈的設(shè)計(jì)與實(shí)現(xiàn)技術(shù)智能交通燈的設(shè)計(jì)與實(shí)現(xiàn) 摘 要 本文基于嵌入式系統(tǒng)和 ZigBee 技術(shù)的智能交通燈系統(tǒng)的設(shè)計(jì)并實(shí)現(xiàn)了 功能。主要是通過(guò) LED 矩陣顯示東西

2、方向及南北方向?qū)?,蜂鳴器的間斷發(fā)聲 作為通行提示音,數(shù)碼管的倒計(jì)時(shí)標(biāo)志著通行時(shí)間。通過(guò)該系統(tǒng)實(shí)現(xiàn)車輛的直 線通行和轉(zhuǎn)彎、方向變換的提醒、車輛注意時(shí)間是否足夠通行。通過(guò)傳感器檢 測(cè)車流量實(shí)現(xiàn)合理的紅燈時(shí)間,緩解交通壓力,確保為十字路口的交通安全提 供了保障。 關(guān)鍵詞:嵌入式系統(tǒng) ; ZigBee ; 智能交通燈;傳感器 Based on the embedded system and the design and implementation of intelligent traffic light of ZigBee Abstract In this paper, based on the

3、embedded system and ZigBee technology of intelligent traffic system was designed and implemented. Mainly by dot matrix display straight arrow arrow and curve, use the arrow to indicate traffic direction, buzzer of discontinuous voice prompt as impassable, digital tube countdown marks the passage of

4、time. Through the system to realize the linear passage of vehicles and alert, vehicle time, direction turning transform enough traffic. Has provided the safeguard for intersection traffic safety. Key words: embedded system ZigBee intelligent traffic lights 目目 錄錄 1 綜述綜述.1 1.1 嵌入式系統(tǒng)簡(jiǎn)介 .1 1.1.1 嵌入式開(kāi)發(fā)環(huán)境

5、.1 1.1.2 嵌入式 Linux 操作系統(tǒng)的應(yīng)用.2 1.2 ZIGBEE技術(shù)簡(jiǎn)介.3 1.2.1 ZigBee 技術(shù)介紹.3 1.2.2 ZigBee 的應(yīng)用現(xiàn)狀.5 1.2.3 ZigBee 技術(shù)的應(yīng)用前景.6 1.2.4 ZigBee 技術(shù)的優(yōu)點(diǎn)與不足.7 2 搭建平臺(tái)搭建平臺(tái).9 2.1 虛擬機(jī)概述.9 2.2 LINUX系統(tǒng).9 2.3 虛擬機(jī)安裝 LINUX系統(tǒng).10 2.4 超級(jí)終端的設(shè)定 .11 3 硬件設(shè)計(jì)硬件設(shè)計(jì).13 3.1 ARM 實(shí)驗(yàn)箱簡(jiǎn)介 .13 3.2 數(shù)碼管倒計(jì)時(shí)顯示硬件設(shè)計(jì).15 3.3 點(diǎn)陣顯示硬件設(shè)計(jì).15 3.4 蜂鳴器設(shè)計(jì).16 4 功能實(shí)現(xiàn)功能實(shí)

6、現(xiàn) .17 4.1 ZIGBEE模塊 LED 矩陣的功能 .17 4.2 ZIGBEE模塊上數(shù)碼管功能實(shí)現(xiàn).19 4.3 ZIGBEE模塊上蜂鳴器功能實(shí)現(xiàn).21 5 測(cè)試結(jié)果與分析測(cè)試結(jié)果與分析.23 5.1 代碼的測(cè)試與分析 .23 5.1.1 優(yōu)化代碼的功能.23 5.1.2 虛擬機(jī)上程序的掛載.24 5.1.3 超級(jí)終端上程序掛載.24 5.1.4 測(cè)試結(jié)果與分析.25 6 實(shí)驗(yàn)總結(jié)實(shí)驗(yàn)總結(jié) .26 致致 謝謝.27 參考文獻(xiàn)參考文獻(xiàn).28 附件附件 1 1.29 附件附件 2 2.43 1 1 1 綜述綜述 嵌入式系統(tǒng)一般指非 PC 系統(tǒng),有計(jì)算機(jī)功能但又不稱之為計(jì)算機(jī)的設(shè)備或 器材。

7、它是以應(yīng)用為中心,軟硬件可裁減的,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、 成本、體積、功耗等綜合性嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)主要由嵌 入式微處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)以及用戶的應(yīng)用程序等 4 個(gè)部 分組成,它是集軟硬件于一體的可獨(dú)立工作的器件。 1.1 嵌入式系統(tǒng)簡(jiǎn)介 隨著計(jì)算機(jī)技術(shù)和微電子技術(shù)的迅速發(fā)展,嵌入式系統(tǒng)應(yīng)用 領(lǐng)域越來(lái)越廣 泛。當(dāng)今,嵌入式系統(tǒng)已成為一個(gè)時(shí)髦的名詞,就像當(dāng)初的計(jì)算機(jī)熱潮,似乎 比當(dāng)初的計(jì)算機(jī)熱潮涉及的領(lǐng)域更廣泛,應(yīng)用技術(shù)人員更多,相關(guān)國(guó)民經(jīng)濟(jì)產(chǎn) 值也更龐大。報(bào)紙、雜志、網(wǎng)絡(luò)都把嵌入式系統(tǒng)當(dāng)作討論的熱門話題1。嵌入 式系統(tǒng)的軟件部分包括操作系統(tǒng)軟件(要求實(shí)時(shí)

8、和多任務(wù)操作)和應(yīng)用程序編程。 操作系統(tǒng)控制著應(yīng)用程序編程與硬件的交互作用,而應(yīng)用程序控制著系統(tǒng)的運(yùn) 作和行為。嵌入式操作系統(tǒng)是一種支持嵌入式系統(tǒng)應(yīng)用的操作系統(tǒng)軟件,它是 嵌入式系統(tǒng)(包括硬、軟件系統(tǒng))極為重要的組成部分,通常包括與硬件相關(guān)的 底層驅(qū)動(dòng)軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動(dòng)接口、通信協(xié) 議、圖形界面、標(biāo)準(zhǔn)化瀏覽 器等。嵌入式操作系統(tǒng)具有通用操作系統(tǒng)的基本特點(diǎn),如能夠有效管理越來(lái)越 復(fù)雜的系統(tǒng)資源;能夠把硬件虛擬化,使得開(kāi)發(fā)人員從繁忙的驅(qū)動(dòng)程序移植和 維護(hù)中解脫出來(lái);能夠提供庫(kù)函數(shù)、驅(qū)動(dòng)程序、工具集以及應(yīng)用程序。與通用 操作系統(tǒng)相比較,嵌入式操作系統(tǒng)在系統(tǒng)實(shí)時(shí)高效性、硬件的相關(guān)依賴性、軟 件固

9、態(tài)化以及應(yīng)用的專用性等方面具有較為突出的特點(diǎn)。 1.1.1 嵌入式開(kāi)發(fā)環(huán)境 一個(gè)嵌入式系統(tǒng)的開(kāi)發(fā)環(huán)境一般包括嵌入式目標(biāo)板、開(kāi)發(fā)用的宿主 PC 機(jī)和 硬件調(diào)試器,他們之間通過(guò)串口、JTAG 或 BDM 等調(diào)試接口和網(wǎng)絡(luò)等接口互相連 接。其中,嵌入式軟件系統(tǒng)運(yùn)行于嵌入式目標(biāo)板上,這些軟件所對(duì)應(yīng)的程序開(kāi) 2 發(fā)和編譯在宿主機(jī)上運(yùn)行,程序的調(diào)試則由宿主機(jī)通過(guò)硬件調(diào)試器控制目標(biāo)機(jī) 執(zhí)行相應(yīng)的操作實(shí)現(xiàn)。在運(yùn)行嵌入式 Linux 的系統(tǒng)時(shí),硬件調(diào)試器只在 Bootloader 程序開(kāi)發(fā)以及 Linux 內(nèi)核移植時(shí)有可能需要使用。應(yīng)用程序的開(kāi)發(fā) 通常是 Linux 操作系統(tǒng)在嵌入式目標(biāo)機(jī)上運(yùn)行起來(lái)之后進(jìn)行2。

10、此時(shí),更多的 是在宿主機(jī)上使用 GDB 通過(guò)網(wǎng)絡(luò)與目標(biāo)板通信,進(jìn)行程序的調(diào)試。也就是硬件 調(diào)試器多在底層軟件開(kāi)發(fā)調(diào)試時(shí)使用,對(duì)于應(yīng)用程序的開(kāi)發(fā)調(diào)試通常使用其他 手段。嵌入式 Linux 操作系統(tǒng)開(kāi)發(fā)的第一步就是在宿主機(jī)上建立交叉開(kāi)發(fā)所需 的交叉編譯環(huán)境。交叉編譯環(huán)境的建立主要是在宿主機(jī)上安裝交叉編譯工具 Cross-gcc。Cross-gcc 工具鏈通常是使用別人已經(jīng)編譯好的交叉編譯的 GCC 工 具鏈。 在交叉編譯環(huán)境建立好之后,就可以在宿主機(jī)上利用交叉編譯環(huán)境構(gòu)造一 個(gè)嵌入式 Linux 系統(tǒng)。Linux 操作系統(tǒng)是由 Linux 內(nèi)核和應(yīng)用程序兩大部分組 成。Linux 內(nèi)核的開(kāi)發(fā)主要是

11、根據(jù)實(shí)際的需要進(jìn)行內(nèi)核裁剪和配置,然后用交 叉編譯器編譯生成內(nèi)核的二進(jìn)制文件映像。對(duì)于許多自行設(shè)計(jì)的嵌入式系統(tǒng), 內(nèi)核的開(kāi)發(fā)還包括根據(jù)實(shí)際的硬件系統(tǒng)進(jìn)行內(nèi)核和外設(shè)驅(qū)動(dòng)程序的移植開(kāi)發(fā)。 應(yīng)用程序 通常都放在 Linux 的根文件系統(tǒng)中。根文件系統(tǒng)主要存放了嵌入式 的配置文件、設(shè)備文件、應(yīng)用程序、動(dòng)態(tài)鏈接庫(kù)以及其他一些相關(guān)的程序和文 件。通常最初的根文件系統(tǒng)只是一個(gè)基本的根文件系統(tǒng),只包含了一些必要的 系統(tǒng)支撐程序。 在宿主機(jī) PC 機(jī)上完成嵌入式 Linux 軟件系統(tǒng)的構(gòu)建之 后,就在嵌入式硬件系統(tǒng)上測(cè)試、運(yùn)行構(gòu)造好的嵌入式 Linux 軟件系統(tǒng)。其中, 測(cè)試工作需要在宿主機(jī)上通過(guò)遠(yuǎn)程終端操控嵌

12、入式開(kāi)發(fā)板完成。通常在嵌入式 開(kāi)發(fā)板上存在一個(gè)內(nèi)核的引導(dǎo)加載程序,它用于硬件的初始化,給用戶提供一 個(gè)操作界面,將嵌入式 Linux 加載到內(nèi)存中運(yùn)行。除此之外,它對(duì)于嵌入式 Linux 系統(tǒng)的開(kāi)發(fā)調(diào)試也起到很大的作用。一個(gè)基本的嵌入式 Linux 系統(tǒng)在目 標(biāo)板上運(yùn)行起來(lái)之后,就要進(jìn)行程序移植開(kāi)發(fā)和調(diào)試。 1.1.2 嵌入式 Linux 操作系統(tǒng)的應(yīng)用 由于 Linux 具有對(duì)各種設(shè)備的廣泛支持性,因此,能方便地應(yīng)用在機(jī)頂盒、 IA 設(shè)備、PDA、掌上電腦、WAP 手機(jī)、尋呼機(jī)、車載 盒以及工業(yè)控制等智能 3 信息產(chǎn)品中。 1.2 ZigBee 技術(shù)簡(jiǎn)介 ZigBee 技術(shù)是一種具有統(tǒng)一技術(shù)

13、標(biāo)準(zhǔn)的短距離無(wú)線通信技術(shù),其物理層和 數(shù)據(jù)鏈路層協(xié)議為 IEEE 802.15.4 協(xié)議標(biāo)準(zhǔn),網(wǎng)絡(luò)層和安全層由 ZigBee 聯(lián)盟制 定,應(yīng)用層的開(kāi)發(fā)應(yīng)用根據(jù)用戶的應(yīng)用需要,對(duì)其進(jìn)行開(kāi)發(fā)利用,因此該技術(shù) 能夠?yàn)橛脩籼峁C(jī)動(dòng)、靈活的組網(wǎng)方式。 1.2.1 ZigBee 技術(shù)介紹 ZigBee 技術(shù)主要用于低數(shù)據(jù)傳輸速率并且傳輸距離要求不是很遠(yuǎn)的各種通 信設(shè)備之間。ZigBee 的名字主要來(lái)源于蜜蜂通過(guò)跳 ZigZag 形狀的舞蹈來(lái)傳遞 所發(fā)現(xiàn)的食物的位置、距離和方向等信息一只一只的傳遞下去此種技術(shù)與蜜蜂 的這種通信方式相類似。ZigBee 聯(lián)盟則于 2001 年成立而在 2002 年下半年以 及

14、四大半導(dǎo)體公司共同宣布加盟 ZigBee 技術(shù)聯(lián)盟以研發(fā)名為“ZigBee”的新一 代無(wú)線通信標(biāo)準(zhǔn)而在 2006 年作為中國(guó)通信行業(yè)龍頭的華為公司亦加入了此聯(lián)盟。 截至目前該聯(lián)盟大約已有約 27 家成員企業(yè)所有這些公司都參加了負(fù)責(zé)開(kāi)發(fā) ZigBee 協(xié)議物理層和媒體控制層技術(shù)標(biāo)準(zhǔn)的工作組。ZigBee 聯(lián)盟負(fù)責(zé)開(kāi)發(fā)網(wǎng)絡(luò) 層及以上的協(xié)議。ZigBee 協(xié)議則比藍(lán)牙技術(shù)、高速率個(gè)人區(qū)域網(wǎng)或 802.11x 無(wú) 線局域網(wǎng)等技術(shù)更簡(jiǎn)單而實(shí)用。ZigBee 使用的是波段采用了跳頻技術(shù)這和藍(lán)牙 技術(shù)相似可以說(shuō)是同族兄弟了。但相比之下 ZigBee 協(xié)議比藍(lán)牙更簡(jiǎn)單、速率更 慢、功率及費(fèi)用也更低。ZigBe

15、e 的基本速率是傳輸半徑可擴(kuò)大到 400 米并可得 到更低的功耗和更高的可靠性。此外單個(gè) ZigBee 無(wú)線模塊就可與 254 個(gè)節(jié)點(diǎn)互 聯(lián)若網(wǎng)絡(luò)中加入路由節(jié)點(diǎn)則網(wǎng)絡(luò)最大承載量可支持 65535 個(gè)節(jié)點(diǎn)設(shè)備互聯(lián)。由 于它的低延遲和低功耗性能優(yōu)越性所以在支持鼠標(biāo)、鍵盤等電腦周邊產(chǎn)品和家 庭自動(dòng)化儀器等低速率應(yīng)用時(shí)可以比藍(lán)牙做地更好人們更希望能在無(wú)線玩具、 傳感器網(wǎng)絡(luò)、家庭監(jiān)控、工業(yè)監(jiān)控和安全系統(tǒng)等眾多領(lǐng)域拓展 ZigBee 的應(yīng)用。 ZigBee 網(wǎng)絡(luò)采用的是無(wú)線自組織網(wǎng)絡(luò)技術(shù)與蜜蜂的通信類似網(wǎng)絡(luò)中的各個(gè) 節(jié)點(diǎn)間通信以一跳或多跳的形式自動(dòng)建立網(wǎng)絡(luò)。網(wǎng)絡(luò)節(jié)點(diǎn)則以 ZigBee 協(xié)議為基 4 礎(chǔ)進(jìn)行

16、通信與各種傳統(tǒng)無(wú)線網(wǎng)絡(luò)相比其主要優(yōu)點(diǎn)有以下幾個(gè)方面。 1. 網(wǎng)絡(luò)穩(wěn)定性好。其設(shè)計(jì)的網(wǎng)絡(luò)自己組織性能使網(wǎng)絡(luò)各個(gè)節(jié)點(diǎn)在無(wú)需人工 干預(yù)的情況下自己組網(wǎng)并實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)娜蝿?wù),當(dāng)添加或去除網(wǎng)絡(luò)中某個(gè)節(jié)點(diǎn)時(shí) 其余節(jié)點(diǎn)可以自行尋找其他節(jié)點(diǎn)替代中轉(zhuǎn)信息具有較強(qiáng)網(wǎng)絡(luò)自愈能力。 2. 成本低。由于 ZigBee 聯(lián)盟已經(jīng)有二十多家他們的研發(fā)實(shí)力都很強(qiáng),好 多公司均已在 2003 年正式推出自己的 ZigBee 芯片,競(jìng)爭(zhēng)較大近年來(lái)應(yīng)用于主 機(jī)端的芯片成本將會(huì)比藍(lán)牙等模塊更具價(jià)格上的優(yōu)勢(shì)。 3. 功耗低。它的超低功耗也使得在應(yīng)用中兩節(jié)普通 AAA 干電池即可使用 6 個(gè)月至 2 年的時(shí)間這也是 ZigBee 的最大

17、的一個(gè)優(yōu)勢(shì) 4 網(wǎng)絡(luò)容量大。每個(gè) ZigBee 設(shè)備可以與另外 254 臺(tái)節(jié)點(diǎn)設(shè)備相連接而加 入路由節(jié)點(diǎn)的 ZigBee 網(wǎng)絡(luò)最多可容納多達(dá) 65000 多個(gè)節(jié)點(diǎn)的網(wǎng)絡(luò) 5. 數(shù)據(jù)傳輸速率低。只有 10kb/s250kb/s 符合本設(shè)計(jì)需求 6. 工作頻段靈活。使用的頻段中 2.4GHz 全世界通用歐洲使用 868MHz,美 國(guó)則使用 915MHz 頻段,但這些均是免申請(qǐng)頻段可以直接使用 7. 網(wǎng)絡(luò)延遲時(shí)間短。活動(dòng)設(shè)備信道接入延時(shí)和休眠激活延時(shí)均僅為 15ms 而搜索設(shè)備延時(shí)時(shí)間達(dá)到 30ms 根據(jù) ZigBee 聯(lián)盟所設(shè)定的技術(shù)標(biāo)準(zhǔn)按功能分其 網(wǎng)絡(luò)設(shè)備劃分為三種 ZigBee 協(xié)調(diào)器、Zig

18、Bee 路由器、ZigBee 終端設(shè)備。他們 的功能分別如下: (1)ZigBee 協(xié)調(diào)器它是個(gè)全功能的設(shè)備包含所有的網(wǎng)絡(luò)功能是 3 種設(shè)備中 功能最全面亦最復(fù)雜的一種特點(diǎn)是計(jì)算能力強(qiáng)、存儲(chǔ)量大。它的作用是發(fā)送網(wǎng) 絡(luò)信標(biāo)、建立并且管理一個(gè)網(wǎng)絡(luò)及網(wǎng)絡(luò)節(jié)點(diǎn)、存儲(chǔ)節(jié)點(diǎn)信息并且不斷地接收下 級(jí)節(jié)點(diǎn)所發(fā)來(lái)的信息。 (2)ZigBee 路由器它也是全功能設(shè)備在加入網(wǎng)絡(luò)后協(xié)調(diào)器就會(huì)分配給它一 定量的十六位地址空間再由其分別分配給下級(jí)節(jié)點(diǎn)使用方便每個(gè)節(jié)點(diǎn)接入或離 開(kāi)網(wǎng)絡(luò)具有數(shù)據(jù)轉(zhuǎn)發(fā)及路由之功能。 (3)ZigBee 終端設(shè)備其一般的簡(jiǎn)化的功能設(shè)備。只能自己的與上一級(jí)如協(xié) 調(diào)器或路由器之間通信包括獲取網(wǎng)絡(luò)地址等

19、。在 ZigBee 協(xié)議規(guī)范中組網(wǎng)時(shí)有三 種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)可供選擇星型結(jié)構(gòu)、網(wǎng)狀結(jié)構(gòu)和簇樹(shù)型結(jié)構(gòu)如圖 1.1 所示: 5 PC 控制器 保護(hù)控 制 傳感器 節(jié)點(diǎn) 傳感器 節(jié)點(diǎn) 傳感器 節(jié)點(diǎn) 調(diào)節(jié)控 制 圖 1.1 ZigBee 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖 在星狀結(jié)構(gòu)中無(wú)論是路由器或終端設(shè)備都是直接與協(xié)調(diào)器進(jìn)行通信,在 ZigBee 協(xié)調(diào)器則負(fù)責(zé)運(yùn)作與維護(hù)著整個(gè)網(wǎng)絡(luò)在簇狀和網(wǎng)狀網(wǎng)絡(luò)結(jié)構(gòu)中協(xié)調(diào)器負(fù) 責(zé)初始化和建立網(wǎng)絡(luò)的操作,而路由器則對(duì)網(wǎng)絡(luò)進(jìn)行擴(kuò)展,終端設(shè)備的信息由 路由器進(jìn)行轉(zhuǎn)發(fā),只不過(guò)在簇狀結(jié)構(gòu)中終端間的信息交換只能通過(guò)一級(jí)級(jí)向上傳 遞到協(xié)調(diào)器再由協(xié)調(diào)器將信息分發(fā)下去。 1.2.2 ZigBee 的應(yīng)用現(xiàn)狀

20、 ZigBee 的出發(fā)點(diǎn)是希望能發(fā)展出一種易布建的低成本無(wú)線網(wǎng)絡(luò),同時(shí)期低 耗電性將使產(chǎn)品的電池能維持 6 個(gè)月到數(shù)年的時(shí)間。ZigBee 技術(shù)彌補(bǔ)了低成本, 低功耗和低速率無(wú)線通信市場(chǎng)的空缺,其成功的關(guān)鍵在于豐富而便捷的應(yīng)用, 而不是技術(shù)本身。隨著正式版本協(xié)議的公布,更多的注意力和研發(fā)力量將轉(zhuǎn)到 應(yīng)用的設(shè)計(jì)和實(shí)現(xiàn),互聯(lián)互通測(cè)試和市場(chǎng)推廣等方面。我們有理由相信在不遠(yuǎn) 的將來(lái),將有越來(lái)越多的內(nèi)置 ZigBee 功能的設(shè)備進(jìn)入生活,并極大地改善我們 的生活方式和體驗(yàn)。在國(guó)內(nèi),目前 ZigBee 網(wǎng)絡(luò)的應(yīng)用范圍非常廣泛,很多我們 想象不到的地方也在使用 ZigBee 技術(shù)。例如,在工業(yè)領(lǐng)域,ZigB

21、ee 技術(shù)不僅 用來(lái)控制照明燈的開(kāi)關(guān),它還有一個(gè)用途是檢查高速路上照明燈的工作情況。 以前工程師要開(kāi)車到高速路 上檢查哪些照片燈已經(jīng)壞掉了,需要維修,但因?yàn)?車速較快,不能記下所有要檢修燈的編號(hào),但通過(guò) ZigBee 網(wǎng)絡(luò),工程師只需坐 在計(jì)算機(jī),就可以很清楚地監(jiān)測(cè)到整個(gè)高速路上照明燈的工作情況,這是目前 的一個(gè)熱點(diǎn)應(yīng)用。再如,ZigBee 技術(shù)用于進(jìn)出的控制,可以記錄汽車的進(jìn)出, 也可以在人員進(jìn)出時(shí)用于傳輸相關(guān)指紋來(lái)識(shí)別數(shù)據(jù),進(jìn)行身份認(rèn)證。此外,通 6 過(guò) ZigBee 網(wǎng)絡(luò)的路由器功能,它還可以用來(lái)實(shí)時(shí)監(jiān)控煤礦內(nèi)各點(diǎn)的安全狀況, 防止事故的發(fā)生。在加油站,一些客戶不希望布線,他們正在考慮采

22、用 ZigBee 無(wú)線技術(shù)來(lái)傳輸相關(guān)數(shù)據(jù)。在消費(fèi)類電子方面,ZigBee 技術(shù)可以替現(xiàn)在的紅外 遙控,于紅外遙控相比,ZigBee 的優(yōu)勢(shì)在于每一個(gè)操作都會(huì)有反饋信息,告訴 他們是否實(shí)現(xiàn)了相關(guān)操作?,F(xiàn)今我們也可以看到 ZigBee 用于家庭保安,消費(fèi)者 在家中的門和窗上都安裝了 ZigBee 網(wǎng)絡(luò),當(dāng)有人闖入時(shí),ZigBee 可以控制開(kāi) 啟室內(nèi)攝像裝置,這些數(shù)據(jù)再通過(guò) Internet 或 WLAN 網(wǎng)絡(luò)反饋給主人,從而實(shí) 現(xiàn)報(bào)警。當(dāng)在家電產(chǎn)品如空調(diào),熱水器等安裝 ZigBee 模塊后,用戶可以通過(guò) ZigBee 無(wú)線網(wǎng)絡(luò)來(lái)控制這些產(chǎn)品的開(kāi)啟。 在建筑智能化領(lǐng)域,各種燈光的控 制,氣體的感應(yīng)與

23、監(jiān)測(cè),如煤氣泄漏的感應(yīng)和報(bào)警都可以應(yīng)用 ZigBee 技術(shù)。三 表(電表,氣表和水表)上采用 ZigBee 技術(shù),相關(guān)管理部門不但可以實(shí)現(xiàn)自動(dòng) 抄表功能,還可以監(jiān)控儀表如電表的狀態(tài),防止偷電事件的發(fā)生. 1.2.3 ZigBee 技術(shù)的應(yīng)用前景 ZigBee 技術(shù)的應(yīng)用前景被非??春?。ZigBee 在未來(lái)的幾年里將在工業(yè)控制, 工業(yè)無(wú)線定位,家庭網(wǎng)絡(luò),汽車自動(dòng)化,樓宇自動(dòng)化,消費(fèi)電子,醫(yī)用設(shè)備控 制等多個(gè)領(lǐng)域具有廣泛的應(yīng)用前景,特別是家庭自動(dòng)化和工業(yè)控制,將成為今 后 ZigBee 芯片的主要應(yīng)用領(lǐng)域。在工業(yè)領(lǐng)域,利用傳感器和 ZigBee 網(wǎng)絡(luò),使 得數(shù)據(jù)的自動(dòng)采集,分析和處理變得更加容易,

24、可以作為決策輔助系統(tǒng)的重要 組成部分。在汽車領(lǐng)域,主要是傳遞信息的通用傳感器。由于很多傳感器只能 內(nèi)置在飛轉(zhuǎn)的車輪或者發(fā)動(dòng)機(jī)中,比如輪胎壓力監(jiān)測(cè)系統(tǒng),這就要求內(nèi)置無(wú)線 通信設(shè)備使用的電池有較長(zhǎng)的壽命,同時(shí)應(yīng)該克服嘈雜的環(huán)境和金屬結(jié)構(gòu)對(duì)電 磁波的屏蔽效應(yīng)。在精確農(nóng)業(yè)領(lǐng)域,傳統(tǒng)農(nóng)業(yè)主要使用孤立的,沒(méi)有通信能力 的機(jī)械設(shè)備,主要是依靠人力監(jiān)測(cè)作物的生產(chǎn)狀況,采用了傳感器和 ZigBee 網(wǎng) 絡(luò)后,農(nóng)業(yè)將可以逐漸地轉(zhuǎn)向以信息和軟件為中心的生產(chǎn)模式,使用更多的自 動(dòng)化,網(wǎng)絡(luò)化,職能化和遠(yuǎn)程控制的設(shè)備來(lái)耕種。在家庭和樓宇自動(dòng)化領(lǐng)域, 家庭自動(dòng)化系統(tǒng)作為電子技術(shù)的集成得以迅速擴(kuò)展,易于進(jìn)入,簡(jiǎn)單明了和廉 價(jià)

25、的安裝成本等成了驅(qū)動(dòng)自動(dòng)化居家,建筑開(kāi)發(fā)和應(yīng)用無(wú)線技術(shù)的主要?jiǎng)右颉?在醫(yī)學(xué)領(lǐng)域,將借助于各種傳感器和 ZigBee 網(wǎng)絡(luò)準(zhǔn)確而且實(shí)時(shí)地監(jiān)測(cè)病人的血 7 壓,體溫和心跳速度等信息,從而減輕醫(yī)生的查房的工作負(fù)擔(dān),有助于醫(yī)生做 出快速的反應(yīng),特別是對(duì)重病和病?;颊叩谋O(jiān)護(hù)和治療。在消費(fèi)和家用自動(dòng)化 市場(chǎng),可以聯(lián)網(wǎng)的家用設(shè)備有電視,錄像機(jī),無(wú)線耳機(jī),PC 外設(shè),運(yùn)動(dòng)與休閑 器械,兒童玩具,游戲機(jī),窗戶和窗簾,照明設(shè)備,空調(diào)系統(tǒng)和其它家用電器。 1.2.4 ZigBee 技術(shù)的優(yōu)點(diǎn)與不足 ZigBee 的工作頻率有下面三種標(biāo)準(zhǔn):(1)868 MHz 傳輸速率為 20 kb/s, 適用于歐洲;(2)915

26、MHz 傳輸速率為 40kb/s,適用于美國(guó);(3)2.4 GHz 傳輸速率為 250kb/s,全球通用。目前國(guó)內(nèi)都在使用 2.4GHz 的工作頻率,其帶 寬為 5MHz,有 16 個(gè)信道。采用直接擴(kuò)頻(DSSS)方式的 OQPSK 調(diào)制技術(shù)。而 基于 IEEE 802.15.4 的 ZigBee 在室內(nèi)通常能達(dá)到 30-50m 作用距離,在室外如 果障礙物少,甚至可以達(dá)到 100m 作用距離。ZigBee 技術(shù)的優(yōu)勢(shì):(1)功耗低。 在低耗電待機(jī)模式下,兩節(jié)普通 5 號(hào)干電池可使用 6 個(gè)月以上。這也是 ZigBee 的支持者所一直引以為豪的獨(dú)特優(yōu)勢(shì)。(2)成本低。因?yàn)?ZigBee 數(shù)據(jù)傳

27、輸速 率低,協(xié)議簡(jiǎn)單,所以大大降低了成本。(3)網(wǎng)絡(luò)容量大。每個(gè) ZigBee 網(wǎng)絡(luò) 最多可支持 65535 個(gè)設(shè)備,也就是說(shuō)每個(gè) ZigBee 設(shè)備可以與另外 254 臺(tái)設(shè)備相 連接。(4)時(shí)延短。針對(duì)時(shí)延敏感的應(yīng)用做了優(yōu)化,通信時(shí)延和從休眠狀態(tài)激 活的時(shí)延都非常短。(5)可靠。采用了碰撞避免機(jī)制,同時(shí)為需要固定帶寬的 通信業(yè)務(wù)預(yù)留了專用時(shí)隙,避免了發(fā)送數(shù)據(jù)時(shí)的競(jìng)爭(zhēng)和沖突。(6)安全。 ZigBee 提供了數(shù)據(jù)完整性檢查和鑒權(quán)功能,加密算法采用 AES-128,同時(shí)各個(gè) 應(yīng)用可以靈活確定其安全屬性。ZigBee 技術(shù)的不足:ZigBee 技術(shù)本身是一種為 低速通信而設(shè)計(jì)的規(guī)范,它的最高通信速

28、度只有 250kb/s,對(duì)一些大數(shù)據(jù)量通信 的場(chǎng)合它并不合適,但是這一特點(diǎn)會(huì)逐漸改變,一些 廠商生產(chǎn)的 ZigBee 芯片目 前也突破了這個(gè)限制,如 CEL 公司的 ZICM2410,已經(jīng) 達(dá)到 1MHz 的傳輸速率。 三、各種短距離通信技術(shù)從結(jié)構(gòu)上來(lái)說(shuō),WLAN 主要是一種服務(wù)器-客戶端的結(jié) 構(gòu),移動(dòng)設(shè)備扮演的是客戶端角色,而服務(wù)端是網(wǎng)絡(luò)中心設(shè)備;藍(lán)牙的實(shí)現(xiàn)可 以使點(diǎn)到點(diǎn)或點(diǎn)到多點(diǎn)的結(jié)構(gòu);而 IrDA 技術(shù)書(shū)的兩移動(dòng)互聯(lián)設(shè)備是點(diǎn)對(duì)點(diǎn)的結(jié) 構(gòu)。WLAN、UWB、ZigBee 技術(shù)等可以作為移動(dòng) Ad hoc 網(wǎng)絡(luò)的底層技術(shù)。UWB 和 8 ZigBee 技術(shù)均可應(yīng)用于無(wú)線數(shù)字家庭組網(wǎng),兩種技術(shù)

29、優(yōu)勢(shì)互補(bǔ):UWB 技術(shù)數(shù)據(jù) 傳輸速率高,在無(wú)線數(shù)字家庭網(wǎng)絡(luò)中主要用于傳輸大容量的影音節(jié)目信號(hào); ZigBee 技術(shù)具有低傳輸速率、低功耗和低成本的特點(diǎn),主要用于控制家用電器 的啟動(dòng)和關(guān)閉,而相對(duì)來(lái)說(shuō),Wi-Fi 更多地是用于較大組網(wǎng)區(qū)域的接入部分, 主要用于數(shù)據(jù)存取。Bluetooth、UWB 無(wú)線技術(shù)能夠穿透實(shí)心物體; FNC、IrDA、ZigBee 無(wú)法穿透實(shí)心物體,或受障礙物影響較大,因此傳送距離 和環(huán)境大大受限。從速率上看,大致有: UWBWLANIrDA藍(lán)牙 RFID/NFCZigBee 從傳輸距離上看,大致有: WLANZigBeeUWB藍(lán)牙 IrDARFID/NFC3 。 9 2

30、 2 搭建平臺(tái)搭建平臺(tái) 要想進(jìn)行嵌入式開(kāi)發(fā),首先,必須搭建一套完整的嵌入式開(kāi)發(fā)環(huán)境。本章 介紹了在 windows+Vmware 虛擬機(jī)環(huán)境下嵌入式開(kāi)發(fā)環(huán)境的搭建。 2.1 虛擬機(jī)概述 用虛擬機(jī)軟件,你可以在一臺(tái)計(jì)算機(jī)上使用多臺(tái)邏輯計(jì)算機(jī),這些邏輯計(jì) 算機(jī)可以安裝操作系統(tǒng)、安裝應(yīng)用程序、訪問(wèn)網(wǎng)絡(luò)資源等等??偟膩?lái)說(shuō),它只 是運(yùn)行的一個(gè)應(yīng)用程序在物理計(jì)算機(jī)上,但是在虛擬機(jī)中運(yùn)行的應(yīng)用程序而言, 它就是一臺(tái)真正計(jì)算機(jī)。因此,在虛擬機(jī)中進(jìn)行軟件應(yīng)用的時(shí)候,系統(tǒng)也一樣 有崩潰的危險(xiǎn);但是,崩潰的只是虛擬機(jī)上的邏輯計(jì)算機(jī),而不是物理計(jì)算機(jī) 上的操作系統(tǒng),并且,使用虛擬機(jī)的“Undo”(恢復(fù))功能,你可以馬

31、上恢復(fù) 虛擬機(jī)到安裝軟件之前的狀態(tài)7。如圖 2.1 所示: 圖圖 2.1 虛擬機(jī)界面虛擬機(jī)界面 2.2 Linux 系統(tǒng) Linux 可用于多種硬件平臺(tái)。Linux 是開(kāi)源的軟件,代碼的修改維護(hù)由世界 10 各地的程序員進(jìn)行,因此 Linux 有可靠保證的應(yīng)用。可以根據(jù)需要進(jìn)行配置, 不需要獲得任何的許可證,源代碼可以無(wú)償獲得。同時(shí) Linux 網(wǎng)絡(luò)支持性良好, 驅(qū)動(dòng)程序采用模塊化設(shè)計(jì),開(kāi)發(fā)過(guò)程中可動(dòng)態(tài)調(diào)試驅(qū)動(dòng)模塊,便于開(kāi)發(fā)。有利 于添加對(duì)新硬件的驅(qū)動(dòng)支持。 Linux 是以內(nèi)核為基礎(chǔ),通過(guò)虛擬文件系統(tǒng)支持對(duì)各類型物理介質(zhì)的硬件 資源訪問(wèn)。Linux 系統(tǒng)提供了具有設(shè)備類的面向?qū)ο蟮脑O(shè)備模型、

32、熱插拔事件, 以及用戶空間的設(shè)備文件系統(tǒng),使其更容易進(jìn)行新硬件設(shè)備的擴(kuò)展與驅(qū)動(dòng)的開(kāi) 發(fā)應(yīng)用。Linux 系統(tǒng)有完善的開(kāi)發(fā)工具,用不同的交叉編譯工具,匹配不同的 嵌入式處理器,建立嵌入式系統(tǒng)開(kāi)發(fā)環(huán)境是簡(jiǎn)單快捷的。不僅如此,Linux 系 統(tǒng)還繼承了 UNIX 穩(wěn)定并且有效率的特點(diǎn),系統(tǒng)穩(wěn)定,能長(zhǎng)期運(yùn)行而不會(huì)出現(xiàn)宕 機(jī)的現(xiàn)象。 2.3 虛擬機(jī)安裝 Linux 系統(tǒng) 虛擬機(jī) vmware 下安裝 Linux 過(guò)程: 第一步:啟動(dòng) VMware,在其主界面“主頁(yè)”標(biāo)簽頁(yè)中點(diǎn)擊“新建虛擬機(jī)” 按鈕打開(kāi)新建向?qū)?,單擊“下一步”按鈕; 第二步:在虛擬機(jī)配置界面中有兩個(gè)選擇:一是“典型”方式,它根據(jù)虛擬 機(jī)的

33、用途自動(dòng)調(diào)整配置;二是“自定義”方式,它允許用戶自行設(shè)置虛擬機(jī)的主 要參數(shù)。這里用“典型”方式安裝,比較方便。 第三步:單擊“下一步”按鈕進(jìn)入虛擬機(jī)操作系統(tǒng)選擇界面,可以看到 Windows、Linux、Novell 等多種不同的系統(tǒng),這里我們點(diǎn)選“Linux”。 11 圖圖 2.2 系統(tǒng)界面系統(tǒng)界面 圖 2.2 是安裝完成后的虛擬機(jī)啟動(dòng)界面,我們這里使用的是 Fedora 系統(tǒng), 用戶為 root,密碼 123456,是在有權(quán)限下進(jìn)行操作。 2.4 超級(jí)終端的設(shè)定 (1) 打開(kāi)超級(jí)終端輸入名稱 圖圖 2.3 超級(jí)終端連接圖超級(jí)終端連接圖 圖圖 2.4 超級(jí)終端端口選擇圖超級(jí)終端端口選擇圖 1

34、2 (2) 選擇端口,如果是臺(tái)式電腦就直接選擇 COM1,如果是筆記本電腦根據(jù) 實(shí)際情況選擇。 (3) 端口設(shè)置,每秒位數(shù)(B)選擇 115200,數(shù)據(jù)流控制(F)選擇無(wú)。 圖圖 2.5 超級(jí)終端端口設(shè)置圖超級(jí)終端端口設(shè)置圖 打開(kāi)電源啟動(dòng)超級(jí)終端,如下圖: 圖圖 2.6 內(nèi)核啟動(dòng)內(nèi)核啟動(dòng) Linux 啟動(dòng)時(shí) BOIS 首先加電自檢,然后會(huì)加載主引導(dǎo)加載程序再加載次加 13 載引導(dǎo)程序,對(duì) Linux 內(nèi)核進(jìn)行映射,初始化進(jìn)程。 3 3 硬件設(shè)計(jì)硬件設(shè)計(jì) 根據(jù)設(shè)計(jì)任務(wù)要求,自行選擇電子元件,畫(huà)出電氣原理圖,并調(diào)試。一個(gè) 完整的系統(tǒng)除了主控芯片以外,還需配上電源系統(tǒng)、時(shí)鐘電路、復(fù)位電路等。 獨(dú)立的

35、芯片是不能工作的 3.1 ARM 實(shí)驗(yàn)箱簡(jiǎn)介 隨著微電子技術(shù)的快速發(fā)展,ARM 處理器經(jīng)歷了包括 ARM7、ARM9 在內(nèi)的多 個(gè)發(fā)展歷程,而 ARM11 的成熟應(yīng)用必將為嵌入式的發(fā)展帶來(lái)新的活力,使更高 端的產(chǎn)品應(yīng)用成為可能,與 ARM9 的 5 級(jí)流水線相比,ARM11 擁有一條具有獨(dú)立 的 load-store 和算術(shù)流水的 8 級(jí)流水線,在同樣工藝下,ARM11 處理器的性能 與 ARM9 相比大約提高了 40%。ARM11 執(zhí)行 ARMv6 架構(gòu)的指令,ARMv6 指令包含 了針對(duì)媒體處理的單指令流多數(shù)據(jù)流(SIMD)擴(kuò)展,采用特殊的設(shè)計(jì),以改善 視頻處理性能。為了能夠進(jìn)行快速浮點(diǎn)運(yùn)

36、算,ARM11 增加了向量浮點(diǎn)單元。所 有這些結(jié)構(gòu)上的提高,都是 ARM9 處理器不可比擬的。 ARM11 為便攜式和無(wú)線應(yīng)用,提供了從未有過(guò)的高超性能,并且使我們主 要關(guān)心的成本和功耗減到最小。ARM11 的微架構(gòu)保證了系統(tǒng)性能可以從基本的 350-500MHz 范圍擴(kuò)展到最終的 1GHz 以上。其微架構(gòu)的高效率表現(xiàn),允許開(kāi)發(fā) 者根據(jù)不同的應(yīng)用來(lái)調(diào)節(jié)時(shí)鐘頻率和電源電壓,從而在性能和功耗之間達(dá)到最 佳的折衷。例如,一個(gè)基于 ARM11 的微架構(gòu)的處理器在 1.2V 工作電壓下,使用 0.13um 工藝實(shí)現(xiàn),其功率將不會(huì)超過(guò) 0.4mW/MHz。 ARM11 微處理器是一種高性能、低功耗的準(zhǔn) 6

37、4 位微處理器。對(duì)于目前 大多數(shù)嵌入式應(yīng)用,一個(gè)真正的 64 位處理器仍然被認(rèn)為是不必要的,其巨大的 功耗和面積讓人難以接受。對(duì)此,ARM11 選擇了一個(gè)折中的方案,以較小的代 價(jià),部分實(shí)現(xiàn)了一個(gè) 64 位微架構(gòu)。ARM11 只在處理器整數(shù)單位和高速緩存之間, 以及在整數(shù)單位和協(xié)處理器之間實(shí)現(xiàn)了 64 位數(shù)據(jù)總線。這些 64 位數(shù)據(jù)道路允 14 許處理器在一個(gè)時(shí)鐘周期中同時(shí)獲取兩條指令,還允許在一個(gè)時(shí)鐘周期執(zhí)行多 個(gè)數(shù)據(jù)讀寫(xiě)指令。這使得 ARM11 在執(zhí)行很多特定序列的代碼時(shí)能夠達(dá)到非常高 的性能,特別是那些允許數(shù)據(jù)搬移與數(shù)據(jù)處理并行處理的代碼序列。 S3C6410 是由三星公司推出的一款低功

38、耗、高性價(jià)比的 RSIC 處理器,它基 于 ARM11 內(nèi)核(ARM1176JZF-S),可廣泛應(yīng)用于移動(dòng)電話和通用處理等領(lǐng)域; S3C6410 為 2.5G 和 3G 通信服務(wù)提供了優(yōu)化的硬件性能,內(nèi)置強(qiáng)大的硬件加速 器:包括運(yùn)動(dòng)視頻處理、音頻處理、2D 加速、顯示處理和縮放等;集成了一個(gè) MFC(Multi-Format video Codec)支持 MPEG4 /H.263/H.264 編解碼和 VC1 的解 碼,能夠提供實(shí)時(shí)的視頻會(huì)議以及 NRSC 和 PAL 制式的 TV 輸出;除此之外,該 處理器內(nèi)置一個(gè)采用最先進(jìn)技術(shù)的 3D 加速器,支持 OpenGL ES 1.1/ 2.0 和

39、 D3DM API, 能實(shí)現(xiàn) 4M triangles/s 的 3D 加速;同時(shí),S3C6410 包含了優(yōu)化的 外部存儲(chǔ)器接口,該接口能滿足在高端通信服務(wù)中的數(shù)據(jù)帶寬要求。由于以上 突出的性能表現(xiàn),著名的蘋(píng)果公司手機(jī) IPHONE 就是基于 S3C6410 處理器。 CVT-6410 開(kāi)發(fā)板基于三星公司最新的 ARM11 處理器 S3C6410,擁有強(qiáng)大的 內(nèi)部資源和視頻處理能力,可穩(wěn)定運(yùn)行在 667MHz 主頻以上,支持 Mobile DDR 和多種 NAND Flash。CVT-6410 開(kāi)發(fā)板上集成了多種高端接口,如復(fù)合視頻信號(hào)、 攝像頭、USB、SD 卡、液晶屏、以太網(wǎng),并配備溫度傳感

40、器和紅外接收頭等。 這些接口可作為應(yīng)用參考幫助用戶實(shí)現(xiàn)高端產(chǎn)品級(jí)設(shè)計(jì)。CVT-6410 開(kāi)發(fā)板采用 核心板+底板結(jié)構(gòu),核心板尺寸規(guī)格為5CM6CM,底板尺寸為 10.5CM14CM,核心板與底板之間采用 4 組高質(zhì)量進(jìn)口連接器(鎳金工藝, 接觸好、抗氧化),共計(jì) 320 個(gè)引腳(804),方便客戶進(jìn)行二次開(kāi)發(fā),進(jìn)行 各種形式的擴(kuò)展應(yīng)用。 CVT-6410 開(kāi)發(fā)板的設(shè)計(jì)嚴(yán)格按照 CE、CCC 等國(guó)內(nèi)外電子產(chǎn)品認(rèn)證標(biāo)準(zhǔn),充 分考慮高速信號(hào)的完整性等電磁兼容措施,確保 CVT-6410 開(kāi)發(fā)板在嚴(yán)酷電磁環(huán) 境下的可靠運(yùn)行。 CVT-6410 的軟件系統(tǒng)目前支持 WinCE 6.0、 LINUX2.6

41、.36、Android2.3.4 以及 uC/OS-II,提供標(biāo)準(zhǔn)板級(jí)支持包(BSP)并開(kāi)放源碼,其中包含了所有接 口的驅(qū)動(dòng)程序,客戶可以直接加載使用。另外,該板可連接武漢創(chuàng)維特公司與 之相配套使用的串口擴(kuò)展板、WIFI 模塊、攝像頭模塊等。隨著微電子技術(shù)的快 15 速發(fā)展,ARM 處理器經(jīng)歷了包括 ARM7、ARM9 在內(nèi)的多個(gè)發(fā)展歷程,而 ARM11 的 成熟應(yīng)用必將為嵌入式的發(fā)展帶來(lái)新的活力,使更高端的產(chǎn)品應(yīng)用成為可能。 3.2 數(shù)碼管倒計(jì)時(shí)顯示硬件設(shè)計(jì) 數(shù)碼管是一種很普遍的顯示器件,數(shù)碼管的主要部分是七段發(fā)光二極管; 數(shù)碼管分為共陰極和共陽(yáng)極兩種,為了保護(hù)各段 LED,需外加限流電阻。

42、有的 產(chǎn)品還附加有一個(gè)小數(shù)點(diǎn),因此有人也稱之為八段式發(fā)光二極管。使用鎖存器 573 達(dá)到數(shù)據(jù)的鎖存,避免擴(kuò)展口發(fā)送的數(shù)據(jù)與地址沖突。如圖 3.1 所示: 圖圖 3.1 數(shù)碼管外形圖及陰陽(yáng)兩極連接示意圖數(shù)碼管外形圖及陰陽(yáng)兩極連接示意圖 數(shù)碼管由 8 個(gè)發(fā)光段(第八段表示小數(shù)點(diǎn))的不同組合,從而實(shí)現(xiàn)十進(jìn)制 數(shù)的顯示。通過(guò)段選端可以控制數(shù)碼管顯示內(nèi)容,位選端用于控制整個(gè)數(shù)碼管 是否工作:對(duì)于共陰極數(shù)碼管,位選端要接低電平,對(duì)于共陽(yáng)極數(shù)碼管,位選 端接高電平。數(shù)碼管有兩種顯示方式:動(dòng)態(tài)顯示和靜態(tài)顯示。靜態(tài)顯示讓數(shù)碼 管要點(diǎn)亮的數(shù)碼管同時(shí)持續(xù)點(diǎn)亮;動(dòng)態(tài)顯示則利用了人眼的視覺(jué)暫留原理,在 一個(gè)時(shí)間內(nèi)只點(diǎn)亮

43、一個(gè)數(shù)碼管。本次設(shè)計(jì)采用一位的數(shù)碼管控制綠燈通行的計(jì) 時(shí),這次的設(shè)計(jì)中,主要是控制南北和東西方向的通行,在同一方向通行時(shí), 另兩個(gè)方向就不允許通行。通行的時(shí)間控制為 8 秒,在 8 秒倒計(jì)時(shí)結(jié)束時(shí),通 行方向發(fā)生變化。 3.3 點(diǎn)陣顯示硬件設(shè)計(jì) 點(diǎn)陣內(nèi)部結(jié)構(gòu)及外形如下,8*8 點(diǎn)陣共由 64 個(gè)發(fā)光二極管組成,且每個(gè)發(fā) 光二極管是放置在行線和列線的交叉點(diǎn)上,當(dāng)對(duì)應(yīng)的某一行置 1 電平,某一列 16 置 0 電平,則相應(yīng)的二極管就亮。 8*8 點(diǎn)陣的工作原理:若要用點(diǎn)陣發(fā)光二極管顯示漢字或者圖形,首先要 將圖形、漢字、字母放在一個(gè)方塊內(nèi),方格塊分成 8*8 共 64 個(gè)小方格,在方塊 內(nèi)寫(xiě)上所需

44、要的內(nèi)容,在字筆劃下落處的小方格里填上“1”,無(wú)筆劃處填上 “0”,這樣就形成了一個(gè)圖形二進(jìn)制數(shù)據(jù)。如圖 3.2 所示: 圖圖 3.2 8*8 點(diǎn)陣圖點(diǎn)陣圖 上圖是一只 8*8 陣列的點(diǎn)陣發(fā)光顯示器,該點(diǎn)陣發(fā)光顯示器是由 8*8 陣列 組成,共 8 行,每行 8 只發(fā)光二極管,共 64 只發(fā)光像素,每列的 8 只發(fā)光二極 管的所有負(fù)極(陰極)相連。每行發(fā)光管的正極相連,點(diǎn)陣發(fā)光顯示器在同一 時(shí)間只能點(diǎn)亮一列,每列點(diǎn)亮的情況是根據(jù)從顯示器 P1P8 送入的數(shù)據(jù)點(diǎn)亮, 要使一個(gè)字符在顯示器整屏顯示,點(diǎn)陣發(fā)光顯示器就必須通過(guò)快速逐列點(diǎn)亮, 而且是周而復(fù)始的循環(huán)點(diǎn)亮,使人眼的暫留視覺(jué)效應(yīng)形成一個(gè)全屏字

45、符。 3.4 蜂鳴器設(shè)計(jì) 在 ZigBee 模塊中通過(guò)程序控制設(shè)計(jì)蜂鳴器在方向變化時(shí)會(huì)發(fā)出提示音。 具體實(shí)現(xiàn)是在綠燈開(kāi)始時(shí)蜂鳴器會(huì)響起,以此作為通行的提示。發(fā)光二極管達(dá) 到電流放大作用。如圖 3.3 所示: 17 圖圖 3.3 蜂鳴器電路圖蜂鳴器電路圖 4 4 功能實(shí)現(xiàn)功能實(shí)現(xiàn) 在本次的課程設(shè)計(jì)中,主要是基于嵌入式系統(tǒng)和 ZigBee 的智能交通燈的設(shè) 計(jì)與實(shí)現(xiàn)。智能交通燈的設(shè)計(jì)是控制車輛在十字路口的通行情況,在綠燈開(kāi)始 時(shí),ZigBee 模塊上的數(shù)碼管進(jìn)行 9-0 的倒計(jì)時(shí),同時(shí)蜂鳴器發(fā)出響聲作為提示 音。在 ZigBee 模塊 LED 矩陣顯示東西或南北方向允許通車顯示,同時(shí)超極終端 打印

46、顯示當(dāng)前的狀態(tài)。 4.1 ZigBee 模塊 LED 矩陣的功能 SBuff12至 SBuff19為 LED 矩陣點(diǎn)亮數(shù)據(jù),如 SBuff14 = 0 x42 表示為 LED 矩陣第三列從高往低第二個(gè)燈和第七個(gè)燈點(diǎn)亮。 實(shí)現(xiàn)代碼如下: if(LED) if(i=0) printf( 南北方向通行,東西方向禁止通行n); printf(n); /控制 LED 矩陣 unsigned char SBuff21; 18 SBuff0 = 0 x02; SBuff1 = 0 x12; SBuff2 = 0 xB9; SBuff3 = 0 x46; SBuff4 = 0 xF1; SBuff5 = sa

47、ve_byte4; SBuff6 = save_byte5; SBuff7 = 0 x01; SBuff8 = 0 x07; SBuff9 = 0 x04; SBuff10 = 0 x0; SBuff11 = 0 x0; /LED 控制南北方向 SBuff12 = 0 x00; SBuff13 = 0 x00; SBuff14 = 0 x42; SBuff15 = 0 xff; SBuff16 = 0 xff; SBuff17 = 0 x42; SBuff18 = 0 x00; SBuff19 = 0 x00; SendNum+; if(SendNum = 8) SendNum = 0; SB

48、uff20 = 0 x0; SBuff20 = XorVerifySend(SBuff);/異或校驗(yàn) nwrite = write(serial_fd,SBuff,sizeof(SBuff); /printf(nwrite1=%dn,nwrite); buffer_has_send = 0; else printf( 東西方向通行,南北方向禁止通行n); printf(n); /控制 LED 矩陣 unsigned char SBuff21; SBuff0 = 0 x02; SBuff1 = 0 x12; SBuff2 = 0 xB9; SBuff3 = 0 x46; SBuff4 = 0 x

49、F1; SBuff5 = save_byte4; SBuff6 = save_byte5; 19 SBuff7 = 0 x01; SBuff8 = 0 x07; SBuff9 = 0 x04; SBuff10 = 0 x0; SBuff11 = 0 x0; /LED 顯示東西方向 SBuff12 = 0 x18; SBuff13 = 0 x3c; SBuff14 = 0 x18; SBuff15 = 0 x18; SBuff16 = 0 x18; SBuff17 = 0 x18; SBuff18 = 0 x3c; SBuff19 = 0 x18; SBuff20 = 0 x00; SBuff2

50、0 = XorVerifySend(SBuff);/異或校驗(yàn) nwrite = write(serial_fd,SBuff,sizeof(SBuff); /printf(nwrite1=%dn,nwrite); buffer_has_send = 0; sleep(2); 實(shí)驗(yàn)截圖如下: 圖圖 4.1 南北方向南北方向 20 圖圖 4.2 東西方向東西方向 4.2 ZigBee 模塊上數(shù)碼管功能實(shí)現(xiàn) SBuff10為數(shù)碼管顯示的數(shù)據(jù)值,如 SBuff10 = 0 x08 表示為數(shù)碼管顯示 數(shù)值為 8。 實(shí)現(xiàn)代碼如下: if(SEG) /控制數(shù)碼管 printf( 還剩%d 秒n,tempj);

51、 printf(n); unsigned char SBuff21; SBuff0 = 0 x02; SBuff1 = 0 x12; SBuff2 = 0 xB9; SBuff3 = 0 x46; SBuff4 = 0 xF1; SBuff5 = save_byte4; SBuff6 = save_byte5; SBuff7 = 0 x01; SBuff8 = 0 x07; SBuff9 = 0 x01;/b0-1:數(shù)碼管顯示數(shù)據(jù)有效;0:無(wú) 效 SBuff10 = tempj;/顯示計(jì)數(shù)時(shí)間 j+; if(j=10) 21 j=0; i+; i=i%2; SBuff11 = 0 x0; SB

52、uff12 = 0 x0; SBuff13 = 0 x0; SBuff14 = 0 x0; SBuff15 = 0 x0; SBuff16 = 0 x0; SBuff17 = 0 x0; SBuff18 = 0 x0; SBuff19 = 0 x0; SBuff20 = 0 x0; SBuff20 = XorVerifySend(SBuff); nwrite = write(serial_fd,SBuff,sizeof(SBuff);/ /printf(nwrite1=%dn,nwrite); buffer_has_send = 0; sleep(5); 實(shí)驗(yàn)截圖如下: 圖圖 4.3 ZigB

53、ee 數(shù)碼管顯示圖數(shù)碼管顯示圖 4.3 ZigBee 模塊上蜂鳴器功能實(shí)現(xiàn) 蜂鳴器控制,1 個(gè)字節(jié)。0:停止發(fā)聲(SBuff11) ,其它值:發(fā)聲長(zhǎng)度 實(shí)現(xiàn)代碼如下: if(PWM) 22 /控制蜂鳴器 printf( 控制蜂鳴器n); printf(n); unsigned char SBuff21; SBuff0 = 0 x02; SBuff1 = 0 x12; SBuff2 = 0 xB9; SBuff3 = 0 x46; SBuff4 = 0 xF1; SBuff5 = save_byte4; SBuff6 = save_byte5; SBuff7 = 0 x01; SBuff8 =

54、0 x07; SBuff9 = 0 x02;/b1-1:蜂鳴器數(shù)據(jù)有效;0:無(wú)效 SBuff10 = 0 x0; SBuff11 = 0 x1f+SendNum; SendNum+; SBuff12 = 0 x0; SBuff13 = 0 x0; SBuff14 = 0 x0; SBuff15 = 0 x0; SBuff16 = 0 x0; SBuff17 = 0 x0; SBuff18 = 0 x0; SBuff19 = 0 x0; SBuff20 = 0 x0; SBuff20 = XorVerifySend(SBuff); nwrite = write(serial_fd,SBuff,s

55、izeof(SBuff); /printf(nwrite1=%dn,nwrite); buffer_has_send = 0; sleep(1); 23 5 5 測(cè)試結(jié)果與分析測(cè)試結(jié)果與分析 此次課程設(shè)計(jì)由于使用 ZigBee 擴(kuò)張模塊顯示效果。每次發(fā)送的指令及數(shù)據(jù) 只控制一個(gè)模塊導(dǎo)致實(shí)驗(yàn)效果多次與預(yù)期結(jié)果不一致。 5.1 代碼的測(cè)試與分析 分析實(shí)驗(yàn)結(jié)果:由于每次發(fā)送的數(shù)據(jù)都是控制一個(gè)模塊且通過(guò)網(wǎng)絡(luò)端口將 數(shù)據(jù)傳送至 ZigBee 某塊。指令及數(shù)據(jù)傳送頻率過(guò)高導(dǎo)致數(shù)據(jù)總線繁忙導(dǎo)致有些 發(fā)送的數(shù)據(jù)發(fā)送錯(cuò)誤導(dǎo)致有些數(shù)據(jù)沒(méi)有正確的顯示。 24 5.1.1 優(yōu)化代碼的功能 主要功能完成 LED 矩陣顯

56、示東西方向及南北方向箭頭,通過(guò)該模塊,實(shí)現(xiàn) 交通的直線通行和轉(zhuǎn)彎,讓行人明確行走的方向是否可行;蜂鳴器的主要功能 是方向變換的發(fā)聲,通過(guò)該模塊,實(shí)現(xiàn)交通的方向變換的提醒,讓行人注意安 全;數(shù)碼管的主要功能是倒計(jì)時(shí),通過(guò)該模塊,實(shí)現(xiàn)交通的方向變換的時(shí)間, 讓行人注意時(shí)間是否足夠通行。 5.1.2 虛擬機(jī)上程序的掛載 圖圖 5.1 優(yōu)化代碼虛擬機(jī)程序掛載圖優(yōu)化代碼虛擬機(jī)程序掛載圖 25 5.1.3 超級(jí)終端上程序掛載 圖圖 5.2 優(yōu)化代碼超級(jí)終端程序掛載圖優(yōu)化代碼超級(jí)終端程序掛載圖 5.1.4 測(cè)試結(jié)果與分析 圖圖 5.3 優(yōu)化代碼運(yùn)行結(jié)果圖優(yōu)化代碼運(yùn)行結(jié)果圖 26 測(cè)試結(jié)果分析: 實(shí)驗(yàn)結(jié)果為:

57、數(shù)碼管顯示的數(shù)據(jù)可能出現(xiàn)某個(gè)數(shù)據(jù)沒(méi)有顯示直接跳到另一 個(gè)不連的數(shù)據(jù)。 分析實(shí)驗(yàn)結(jié)果:由于每次發(fā)送的數(shù)據(jù)都是控制一個(gè)模塊且通過(guò)網(wǎng)絡(luò)端口將 數(shù)據(jù)傳送至 ZigBee 某塊。指令及數(shù)據(jù)傳送頻率過(guò)高導(dǎo)致數(shù)據(jù)總線繁忙導(dǎo)致有些 發(fā)送的數(shù)據(jù)發(fā)送錯(cuò)誤導(dǎo)致有些數(shù)據(jù)沒(méi)有正確的顯示。 解決方案:通過(guò)延遲每次指令及數(shù)據(jù)發(fā)送的間隔確保數(shù)據(jù)能夠完整的被 ZigBee 模塊接收到。 最終結(jié)果:數(shù)據(jù)能夠正確的顯示。 27 6 6 實(shí)驗(yàn)總結(jié)實(shí)驗(yàn)總結(jié) 通過(guò)此次的課程設(shè)計(jì)我們不僅檢驗(yàn)了所學(xué)習(xí)的知識(shí),也培養(yǎng)了我們?nèi)绾?去做一件事情,又如何完成一件事情。在課程設(shè)計(jì)過(guò)程中,與小組成員分工 設(shè)計(jì),和小組成員相互探討、相互學(xué)習(xí)、相互監(jiān)督,學(xué)

58、會(huì)了合作、 學(xué)會(huì)了寬 容、也學(xué)會(huì)了理解、更明白了團(tuán)隊(duì)協(xié)作的重要。課程設(shè)計(jì)是我們專業(yè)課程知 識(shí)綜合應(yīng)用的實(shí)踐訓(xùn)練,也是我們邁向社會(huì),從事職業(yè)工作前一個(gè)必不少的 過(guò)程?!扒Ю镏惺加谧阆隆保ㄟ^(guò)此次課程設(shè)計(jì),我們深深體會(huì)到這句千 古名言的真正含義。我們今天認(rèn)真的進(jìn)行課程設(shè)計(jì),學(xué)會(huì)了腳踏實(shí)地邁開(kāi)這 一步,就是為明天能穩(wěn)健地在社會(huì)大潮中奔跑打下堅(jiān)實(shí)的基礎(chǔ)。通過(guò)這次交 通燈設(shè)計(jì),培養(yǎng)綜合運(yùn)用所學(xué)知識(shí)、獨(dú)立分析和解決實(shí)際問(wèn)題的能力,培養(yǎng) 創(chuàng)新意識(shí)和創(chuàng)新能力,并獲得科學(xué)研究的基礎(chǔ)訓(xùn)練。了解所選擇的 ARM 芯片 各個(gè)引腳功能,工作方式,計(jì)數(shù)/定時(shí),I/O 口,中斷等的相關(guān)原理,并鞏固 學(xué)習(xí)嵌入式的相關(guān)內(nèi)容知

59、識(shí)。通過(guò)軟硬件設(shè)計(jì)實(shí)現(xiàn)利用 ARM 芯片完成交通燈 控制功能。首先查閱相關(guān)文獻(xiàn)資料,熟悉所選 ARM 芯片。第二步總體設(shè)計(jì)方 案規(guī)劃,設(shè)計(jì)車輛遇到紅燈停綠燈行情況,紅綠燈時(shí)間均為 9s,切換時(shí)間為 1s。接下來(lái) 系統(tǒng)硬件設(shè)計(jì),熟悉 IO 接口,定時(shí)器計(jì)數(shù)器工作原理。最后系 統(tǒng)軟件設(shè)計(jì),包括交通信號(hào)燈的工作流程軟件實(shí)現(xiàn),用 C 語(yǔ)言編程。提高了 計(jì)算能力、繪圖能力以及熟悉了規(guī)范和標(biāo)準(zhǔn),同時(shí)各科相關(guān)的課程都有了全 面的復(fù)習(xí),獨(dú)立思考的能力也有所提高。 在這次課程設(shè)計(jì)過(guò)程中,做到了 學(xué)以致用,從中發(fā)現(xiàn)自己平時(shí)學(xué)習(xí)的不足和薄弱環(huán)節(jié),從而加以彌補(bǔ)。 28 致致 謝謝 嵌入式系統(tǒng)課程設(shè)計(jì)是網(wǎng)上、圖書(shū)館借鑒

60、相關(guān)資料,根據(jù)自己的理解、 老師的指導(dǎo)建議完成的??梢哉f(shuō),此次論文沒(méi)有老師的幫助和督促,我將無(wú)從 下手。在此由衷的感謝王華本老師。 感謝學(xué)校,給予我一個(gè)良好的學(xué)習(xí)環(huán)境,輕松安逸的學(xué)習(xí)氛圍。 感謝教導(dǎo)過(guò)我的老師們,在我的求學(xué)過(guò)程中,教育我怎樣為人,給我樹(shù)立 了正確的人生觀、價(jià)值觀、世界觀。讓我在求學(xué)的旅途不至于茫然無(wú)措。 感謝室友們?cè)谖翌^腦發(fā)昏,思緒混亂的時(shí)候,能轉(zhuǎn)移我的注意力,緩解我 的壓力,讓我以最好的狀態(tài)去學(xué)習(xí)。 感謝同學(xué)們,因?yàn)橛心銈兊呐惆?,學(xué)習(xí)才不會(huì)孤單。 感謝我偉大的父親母親,生育了我,撫養(yǎng)了我,教導(dǎo)了我,在我人生的道 路中默默的支持陪伴我。在此,向所有人表示最崇高的敬 參考文獻(xiàn)參考

溫馨提示

  • 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)論