當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]嵌入式網(wǎng)絡(luò)監(jiān)控系統(tǒng)的研究

摘要:無線數(shù)據(jù)傳輸現(xiàn)在廣泛地運(yùn)用在各種控制領(lǐng)域。該系統(tǒng)中采用由無線收發(fā)芯片nRF401配合外圍電路的射頻模塊來完成數(shù)據(jù)的傳輸;通過對(duì)Bootloader硬件的初始化后,實(shí)現(xiàn)將μClinux裁減并移植到S3C44BO中,最后用嵌入式處理器程序來實(shí)現(xiàn)對(duì)傳輸數(shù)據(jù)的處理和存儲(chǔ)、網(wǎng)絡(luò)通信、外部控制等任務(wù)。經(jīng)過測(cè)試通信距離為80m,無線通信最高速率可達(dá)到20Kb/s。
關(guān)鍵詞:μClinux;無線數(shù)據(jù)傳輸;Bootloader;無線通信

0 引言
    無線數(shù)據(jù)傳輸現(xiàn)在廣泛地運(yùn)用在車輛監(jiān)控、遙控、小型無線網(wǎng)絡(luò)、小型無線數(shù)據(jù)終端等領(lǐng)域中,無線數(shù)據(jù)傳輸主要由數(shù)據(jù)終端機(jī)、主機(jī)和主控制機(jī)組成,主控制機(jī)與主機(jī)間用串行口通信,主機(jī)和數(shù)據(jù)終端機(jī)之間通過射頻模塊進(jìn)行通信。
    傳感器采集信號(hào)后傳給數(shù)據(jù)終端機(jī),終端機(jī)通過射頻模塊進(jìn)行無線數(shù)據(jù)傳輸,主控制機(jī)與數(shù)據(jù)終端的通信轉(zhuǎn)化為主控制機(jī)與主機(jī)串口(UA RT)間的通信以及數(shù)據(jù)終端通過無線數(shù)傳模塊和主機(jī)之間的數(shù)據(jù)傳輸,在此基礎(chǔ)上形成了無線分布式傳感/控制網(wǎng)絡(luò)(Wireless Distribution ed Sensor/Control Networks,WDSCN)的處理機(jī)的軟硬件系統(tǒng)搭建。無線數(shù)據(jù)傳輸?shù)奶幚硐到y(tǒng)采用嵌入式系統(tǒng)輔以適當(dāng)無線數(shù)傳模塊來實(shí)現(xiàn)。系統(tǒng)中用射頻模塊來完成數(shù)據(jù)的傳輸,用嵌入式系統(tǒng)來實(shí)現(xiàn)對(duì)傳輸數(shù)據(jù)的處理和存儲(chǔ)、網(wǎng)絡(luò)通信、外部控制等任務(wù)。

1 射頻模塊的設(shè)計(jì)
    射頻模塊的主要功能由無線收發(fā)芯片nRF401配合外圍電路完成,該模塊內(nèi)部結(jié)構(gòu)分為發(fā)射電路、接收電路、模式和低功耗控制邏輯電路以及串行接口幾個(gè)部分組成。
    發(fā)射電路有射頻功率放大器(PA)、鎖相環(huán)(PLL)、壓控振蕩器(VCO)、頻率合成器等。基準(zhǔn)振蕩器采用外接晶體振蕩器產(chǎn)生電路所需的基準(zhǔn)頻率,振蕩電路采用鎖相環(huán)方式,由在DDS基礎(chǔ)上的頻率合成器、外接的無源回路濾波器和壓控振蕩器組成,壓控振蕩器由片內(nèi)的振蕩電路和外接的LC諧振回路組成,要發(fā)射的數(shù)據(jù)通過DIN端輸入。
    接收電路由低噪聲放大器(LNA)、混頻器、中頻放大器、GFSK解調(diào)器、濾波器等電路組成,中頻放大器的輸出信號(hào)經(jīng)過中頻濾波器后送入GFSK解調(diào)器解調(diào),解調(diào)后的數(shù)字信號(hào)在DOUT端輸出。
    芯片內(nèi)包含有發(fā)射功率放大器、低噪聲接收放大器、晶體振蕩器、鎖相環(huán)、壓控振蕩器、混頻器等電路,工作頻率為ISM頻段433 MHz,采用FSK調(diào)制解調(diào)、晶體振蕩和PLL頻率合成技術(shù),接收靈敏度為-105 dBm,發(fā)射功率為10 dBm,待機(jī)狀態(tài)電流消耗僅10μA。在接收模式中,射頻輸入信號(hào)被低噪聲放大器放大,經(jīng)由混頻器變換,在送入解調(diào)器之前被放大和濾波,解調(diào)后的數(shù)字信號(hào)在DOUT端輸出。在發(fā)射模式中,壓控振蕩器的輸出信號(hào)是直接送入到功率放大器,DIN端輸入的數(shù)字信號(hào)被頻移鍵控后饋送到功率放大器輸出。射頻模塊的電路如圖1所示。



2 嵌入式系統(tǒng)
    一般而言,嵌入式系統(tǒng)的構(gòu)架可以分為4個(gè)部分:處理器、存儲(chǔ)器、輸入/輸出(I/O)和軟件。嵌入式系統(tǒng)是軟件和硬件的綜合體,它是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟、硬件皆可以裁剪,從而能夠適應(yīng)于工業(yè)和服務(wù)領(lǐng)域?qū)嶋H應(yīng)用中。
    由于μClinux在設(shè)計(jì)時(shí)就已經(jīng)充分考慮了可移植性,所以將μClinux移植到S3C44B0相對(duì)來說是比較容易的。但要使μClinux正常運(yùn)行,處理器必須滿足以下要求:
    (1)處理器的C編譯器能產(chǎn)生可重入代碼。
    (2)用C語言就可以打開和關(guān)閉中斷。
    (3)處理器支持中斷,并且能產(chǎn)生定時(shí)中斷(通常在10~100 Hz之間)。
    (4)處理器支持能夠容納一定量數(shù)據(jù)(可能是幾千字節(jié))的硬件堆棧。
2.1 Bootloader的工作
    Bootloader就是在操作系統(tǒng)內(nèi)核運(yùn)行之前運(yùn)行的一段程序,通過這段程序可以初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個(gè)合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。因此,正確建立μClinux的移植的前提條件是具備一個(gè)與μClinux配套、易于使用的Bootloader。
    硬件初始化。系統(tǒng)上電或復(fù)位后,程序從位于地址0x0的Reset Exception Vector處開始執(zhí)行,因此需要在這里放置Bootloader的第一條指令:b ResetHandler,跳轉(zhuǎn)到標(biāo)號(hào)為ResetHandler處進(jìn)行第一階段的硬件初始化,主要內(nèi)容為:關(guān)Watchdog Timer,關(guān)中斷,初始化PLL和時(shí)鐘,初始化存儲(chǔ)器控制器。比較重要的是PLL的輸出頻率要計(jì)算正確,ARMSYS中把它設(shè)置為64 MHz;這實(shí)際上就是處理器的工作主頻,這個(gè)時(shí)間參數(shù)在第二階段計(jì)算SDRAM的刷新計(jì)數(shù)值和UART的波特率等參數(shù)時(shí)還要用到。
    建立二級(jí)異常中斷矢量表。異常中斷矢量表(Exception Vector Table)是Bootloader與μClinux內(nèi)核發(fā)生聯(lián)系關(guān)鍵的地方之一。即使μClinux內(nèi)核已經(jīng)得到處理器的控制權(quán)運(yùn)行,一旦發(fā)生中斷,處理器還是會(huì)自動(dòng)跳轉(zhuǎn)到從0x0地址開始的第一級(jí)異常中斷矢量表中的某個(gè)表項(xiàng)(依據(jù)于中斷類型)處讀取指令運(yùn)行。在編寫B(tài)ootloader時(shí),地址0x0處的一級(jí)異常中斷矢量表只需簡單地包含向二級(jí)異常中斷矢量表的跳轉(zhuǎn)指令就可以。這樣,就能夠正確地將發(fā)生的事件交給μClinux的中斷處理程序來處理。對(duì)于μClinux內(nèi)核,它在RAM空間中基地址為0xC000000處建立了自己的二級(jí)異常中斷矢量表。
    如果在Bootloader執(zhí)行的全過程中都不必響應(yīng)中斷,那么上面的設(shè)置已能滿足要求。在ARMSYS上提供了USB下載器,需要用到中斷,Boot loader必須在同樣的地址(0xC000000)處配置自己的二級(jí)異常中斷矢量表,以便同μClinux兼容。這張表事先存放在FLASH MEMORY里,引導(dǎo)過程中由Bootloader將其復(fù)制到RAM地址0x0C000000。
2.2 源代碼裁剪與移植
    將μClinuX-dist-20040408.tar.gz拷貝到/home/下(或者其他目錄都可以),運(yùn)行解壓命令:tar xvzfμClinux-ARMSYS-20040801.  tar.gz,解壓結(jié)束后會(huì)在/home/下生成μClinux-dist目錄。[!--empirenews.page--]
    配置與編譯。安裝編譯環(huán)境,到以下地址下載arm-elf工具鏈:http://www.uclinux.org/pub/μClinux/m68k-elf-tools/arm-elf-tools-20030314.sh。將arm-elf-tools-20030314.sh拷貝到根目錄,運(yùn)行安裝:
    sh arm-elf-tools-20030314.sh
    然后開始配置μClinux的內(nèi)核和用戶選項(xiàng),打開終端。
    # cd/home/uClinux-dist
    # make menuconfig
    進(jìn)入μClinux配置(μClinux V3.1.0 Configuration),選中“Kernel/Library/Defaults Selectiona”敲空格進(jìn)入。其中有兩個(gè)選項(xiàng):定制內(nèi)核設(shè)置和定制用戶選項(xiàng)設(shè)置:
    [*]Customize Kernel Settings
    []Customize Vendor/User Settings
    選中定制內(nèi)核設(shè)置選項(xiàng),按下ESC鍵退出,在詢問是否保存時(shí),選擇Yes并回車。終端將首先進(jìn)入內(nèi)核配置選單。在配置μClinux內(nèi)核時(shí),就可以通過對(duì)這些選項(xiàng)的選擇和取消選擇來設(shè)定內(nèi)核所具有的功能項(xiàng),這也是裁減μClinux內(nèi)核的基本方法。每個(gè)選項(xiàng)都對(duì)應(yīng)著一個(gè)宏定義,make menuconfig執(zhí)行結(jié)束后,自動(dòng)將配置結(jié)果保存為.config文件,將前一次的配置結(jié)果備份為.config.old文件。
    交叉編譯。按下面的步驟對(duì)μClinux源碼包進(jìn)行編譯:
    # make dep
    # make clean(非必要)
    # make lib_only
    # make user_only
    # make romfs
    # make image
    # make
    初次移植時(shí),在make lib_only到make這5步編譯過程中很可能產(chǎn)生錯(cuò)誤,無法繼續(xù)下去,如果產(chǎn)生了錯(cuò)誤,可以嘗試根據(jù)報(bào)告的錯(cuò)誤內(nèi)容修改一下源程序,交叉編譯成功后,在μClinux-dist/目錄下產(chǎn)生images目錄,其中包含的3個(gè)文件:image.ram,image.rom和romfs.img就是我們可以使用的二進(jìn)制文件,下載或燒錄這些二進(jìn)制文件,并啟動(dòng)運(yùn)行μClinux。出現(xiàn)正確提示信息后,可以嘗試從鍵盤輸入ls,ping命令,來查看系統(tǒng)的運(yùn)行情況,編寫簡單的應(yīng)用程序,看是否能夠正確運(yùn)行。
2.3 嵌入式處理器程序
    應(yīng)用程序的部分具體代碼如下:該部分完成了嵌入式控制器硬件初始化、操作系統(tǒng)初始化、GUI以及用戶界面、時(shí)鐘的初始化,創(chuàng)建了一個(gè)主任務(wù),啟動(dòng)了多任務(wù)調(diào)度。
   

3 結(jié)語
    本文通過對(duì)無線傳感器/控制網(wǎng)絡(luò)技術(shù)的研究,提出了一種基于射頻通信技術(shù)的無線數(shù)據(jù)采集和控制方案,利用所開發(fā)的無線通信模塊構(gòu)建了一個(gè)無線分布式傳感/控制網(wǎng)絡(luò),實(shí)現(xiàn)了傳感器數(shù)據(jù)的實(shí)時(shí)采集。開發(fā)了一種短距離無線數(shù)據(jù)傳輸平臺(tái)。目前測(cè)試通訊距離為80m,無線通信最高速率可達(dá)到20Kb/s。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉