999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

用于高清視頻傳輸的Linux無線路由卡的設計

2015-12-20 06:58:00李志善蘇威積
計算機工程與設計 2015年1期
關鍵詞:嵌入式系統

李志善,蘇威積

(中國航天科工集團第二研究院706所,北京100854)

0 引 言

隨著城市中高清網絡攝像機的大量應用,急需開發一款滿足大帶寬、系統穩定要求的路由卡,其能方便地配備到高清攝像機上進行應用。應用它可以降低城市中重新布線的施工量和成本,應用起來也比較方便,將多個不方便布線并配有Linux路由卡的網絡攝像機的視頻通過Wifi集中傳送到另一臺已經布好線并配備Linux路由卡的網絡攝像機,由它將視頻傳輸回監控中心。

1 Linux路由卡的硬件設計

本文選擇一款雷凌的RT5350 芯片制作的路由卡,其完全滿足上述要求。RT5350 的 SoC 整合雷凌的IEEE802.11n草 案 標 準 的1T1R 的MAC/BBP/PA/射 頻,高性能360 MHz的MIPS24KEc CPU 內核,一個5端口集成10/100 以太網交換機/PHY 和 一 個USB 主 機/設備[1]。它是一款高質量、小尺寸以及低成本的無線片上可編程系統芯片,在一個單芯片上幾乎囊括各種AP Router所需元件,提供了優越的無線基地路由器解決方案,不管用戶所處環境多么復雜,如處在人口密集的地方或者頻繁變換位置,RT5350都能靈活地建構出最佳的無線路由器收發機制[2]。同時,RT5350芯片上已經內置了獨特的封包接收式天線分集技術,支持802.11n,150 Mbps無線局域網速率,高性能的CPU 可以輕松管理高級應用,如不超載主機處理器的Wifi數據處理。此外,RT5350 提供各種硬件接口(SPI/I2S/I2C/PCM/UART/USB),以支持各種可能的應用。這種網絡攝像機配置Linux路由卡的應用結構如圖1所示。

Linux路由卡硬件包括6部分:RT5350處理器、Flash存儲器、SDRAM 閃存、天線、HJTAG 接口、與網絡攝像機連接的接口。其結構如圖2所示。

圖1 實際應用結構

圖2 路由卡的硬件結構

其中RT5350 處理器是路由卡的核心,內部集成了放大器,它有5個百兆PORT 以及豐富的外設接口;Flash存儲器用來存放程序,存放Linux 內核及Boorloader;SDRAM 用來將Bootloader復制到其中來運行系統;天線用來增加傳輸距離;HJTAG 用來下載程序;網絡攝像機的接口用來給路由卡來供電,并將攝像機的網絡接口與路由卡的網絡接口相連,然后將視頻流經過路由卡傳輸出去。

應用Altium Designer對路由卡原理圖進行設計,層次原理圖包括以下幾個電路:

(1)分壓電路。由于網絡攝像機為路由卡提供3.3 V電壓,RT5350的管腳有1.2 V,1.8 V,所有路由卡需要分壓電路。

(2)重啟復位電路。路由卡還包括路由重啟按鍵,當路由死機可以手動復位電路。

(3)數據轉換電路。RT5350處理器和網絡攝像機的網絡接口不是簡單的物理連接,因為RT5350 是PHY 接口,而網絡攝像機的網絡接口為MAC 接口,采用一款PHY 芯片78Q2133實現它們之間的網絡連接。

(4)天線電路。為了增加傳輸距離,外置天線。

(5)指示燈電路。路由工作指示燈及WPS指示燈。

(6)數據存儲電路。4M Flash,16M SDRAM。

(7)HJTAG 下載電路。

然后根據原理圖對PCB 圖進行布線,此路由卡采用雙面布線,布線的時候要注意以下幾個問題:

(1)對電源和地的布線要格外的注意,不恰當的布線會影響產品的性能,帶來EMC問題,嚴重的時候影響產品的成功率。為了提高可靠性要適當加粗電源和地的布線寬度,需要在電源和地之前加上去耦電容來消除噪聲[3]。

(2)布線之前要進行分析,將敏感的容易受到干擾的器件遠離高頻信號線,而且必要的情況下加屏蔽罩,對容易發熱的器件也要進行考量,將其與溫度敏感器件分開。對發熱器件可能影響到系統性能的,還要加散熱片進行處理,信號線要盡量不出現環路,即使形成環路也要使環路盡可能小,為了提高系統的抗干擾性,需要設置較大面積的地線敷銅區域。

(3)對于晶振及天線等實施地線包圍的措施,防干擾。

(4)天線的設計要注意阻抗匹配。

圖3所示為嵌入式Linux的路由卡實物。

將路由卡配置插到攝像機上應用,簡單方便,如圖4所示是其中一款可插路由卡的網絡攝像機,其和其它普通網絡攝像機并無大的差別,應用時只需插入Linux路由卡,便可以經過Wifi傳輸視頻。其簡單方便,可以迅速和原有設備兼容使用。

圖3 路由卡的實物

圖4 配置路由卡的網絡攝像機

2 Linux內核的移植、編譯與生成引導程序Uboot

硬件設計完成之后,接下來是對內核的移植和編譯。

2.1 內核的移植編譯

內核 (kernel)是所有Linux系統的主要軟件組件。內核既是操作系統的心臟[4],也是它的大腦,因為內核控制著基本的硬件。內核是操作系統的核心,具有很多最基本功能,如虛擬內存、多任務和TCP/IP網絡等功能[5]。

本路由卡的Linux內核的移植和其它設備的Linux內核移植類似,包含對內核源碼的修改、添加一些必要的驅動、對內核的交叉編譯、內核程序的燒寫[6]。

(1)先完整的下載一個版本的內核源碼,根據硬件平臺的實際情況來選擇內核源碼的版本,并對源碼進行改寫,改寫一定要結合硬件體系結構的特點[7];

(2)根據系統要實現的功能,對系統所需要的硬件驅動進行有針對性的添加,對沒有必要的外設驅動,可暫時不添加。這樣可以快速地實現內核的裁剪和移植,這個過程也就是常說的內核配置或內核定制;

(3)對該系統進行針對目標平臺的交叉編譯,生成一個內核映象文件 (如zImage,uImage,bzImage)[8];

(4)最后通過一些手段 (如TFTP)把該映象文件燒寫到目標平臺中[9]。

本路由卡采用了Ralink (雷凌)公司提供的RT288x_SDK 作為整個嵌入RT5350 開發平臺的kernel、根文件系統的軟件開發源。

其中arch是特定體系下的源碼,crypto是Crypto API,Documentation是內核源碼文檔,drivers是設備驅動程序,fs是VFS和各種文件系統,include是內核文件,init是內核引導和初始化程序,ipc是進程間通信代碼,kernel是像調度程序這樣的核心子系統,lib是通用內核函數,mm 是內存管理子系統和VM,net是網絡子系統,scripts編譯內核所用到的腳本。

因為目標平臺是ARM,而在X86平臺上進行開發,所以要采用交叉編譯[10]。

接著在Red Hat下安裝Ralink (雷凌)提供的交叉編譯工具鏈buildroot-gcc342。安裝過程如下:

#cp RT288x_SDK/toolchain/buildroot-gcc342.tar.bz2/opt,拷貝工具鏈到//opt目錄下。

#tar jxvf buildroot-gcc342.tar.bz2,在/opt目 錄 下 解壓生成buildroot-gcc342,作為整個系統交叉編譯工具[11]。

#gedit/etc/profile

在末尾添加export PATH=MYMPATH :/opt/buildroo t-gcc3 42/bin/,保存退出。

#source/etc/profile

測試,打印出交叉編譯工具的信息,則安裝成功。

#mipsel-Linux-uclibc-gcc-v

RT288xSDK 源文件中未添加RT5350 的Wifi驅動,需要進行移植。本路由卡采用Ralink公司提供的Wifi驅動包2011_0825_RT5350_APSoC_Wifidriver v2.6.0.0_DPA.tar.bz2作為驅動源文件[12]。具體的操作工程如下:

首先,將Wifi驅動壓縮包2011_082_5_RT5350_APSoC_ Wifidriver_v2.6.0.0 _ DPA.tar.bz2 拷 貝 到RT288x SDK/source/Linux-2.6.21.x/drivers/net/wireless目錄下,解壓后生成rt2860v2,rt2860v2_ap,rt2860v2_sta這3個目錄。

然后修改RT288xSDK/source/Linux-2.6.21.x/ralink/Kconfig配置文件,添加Wifi驅動源文件目錄source"drivers/net/wireless/rt2860v2_ap/Kconfig"[13]。

進入內核目錄source下在終端下輸入make menuconfig后,如圖5所示??梢詫群似溥M行設置。

圖5 內核配置頁面

內核的配置界面包括4 部分內容:select the product you wish to target;kernel/liberary/defaults selection;load an alternate configuration file;save configuration to an alternate file。select the product you wish to target用來選擇你的目標平臺,本系統選擇RT5350,RT288xSDK 源文件中還可以選擇RT2880、RT3052、RT3352,選擇完畢后,將光標移到Exit,接著對其它項進行設置[13];kernel/liberary/defaults selection包括對交叉編譯路徑的設置、選擇內核配置選項等;load an alternate configuration file保持默認配置即可;save configuration to an alternate file保存配置文件選項組。內核的配置通常包括yes和no兩個選項,選擇yes就是把所選的選項編譯到內核的映像中,no則不編譯。還有包含3 個選項的編譯選項,需要在yes、no、Module中進行選擇,Module則比較特殊,選擇Module則該選項被編譯到內核映像且將其代碼生成模塊的形式。對內核的配置,也可以不通過圖形界面,也可以通過對Kconfig文件直接進行修改,但是編譯一定要通過Makefile[14]。一個完整的Linux內核源碼包括很多功能,并支持很多硬件系統,因此對于內核合理的配置對于內核編譯是很重要的,決定著最終編譯的內核的大小,最大的限度的將沒有用的功能裁剪,并且不影響系統的功能,內核還能成功的編譯,對于內核的效率,系統的性能至關重要[15],對內核的配置、裁剪、編譯需要有深厚的編譯內核功底,需要在實際項目中不斷積累寶貴的經驗。設計的路由卡采用RT5350,4M Flash,16M SDRAM,對內核進行相應的配置,并保存,退出,便可以對內核進行編譯。如圖6所示。

執行make dep和make命令,便可在生成的系統文件中添加Wifi驅動[16]。如果沒有錯誤,運行一段時間將顯示內核編譯時間,以及大小等運行結果,如圖7所示。

2.2 生成引導程序Uboot

圖6 設備特性設置

Bootloader是在操作系統運行前執行的一段程序[17]。BootLoader的作用就是用來加載操作系統。從具體運行過程看,BootLoader在內核移植過程中起著重要的作用,是內核能否正常啟動的關鍵。不同硬件系統的BootLoader是不同的,否則直接移植過去,內核一般不能正常啟動。建立一個通用的嵌入式Bootloader幾乎不可能。目前,嵌入式的世界中己有多種Bootloader,種類劃分也有很多方式。常見的Bootloader見表1。

表1 常見的Bootloader

Bootloader的作用和BOIS類似,對硬件設備的驅動進行初始化,為內核的正常啟動做好準備。圖8為內核啟動的流程[18]。

本路由卡的開發過程中,就采用了Ralink 公司的Uboot作為Bootloader 的開發源碼。具體操作如下:在Uboot目錄下,輸入make menuconfig命令,進入配置頁面進行配置,選擇芯片RT5350,及其支持最大SDRAM 64M。如圖9所示。

圖8 內核啟動流程

圖9 Uboot設置界面

輸入make 命令,在Uboot 目錄下生成引導程序uboot.bin 及 uboot.imgo uboot.bin 用 于 NOR Flash,uboot.img用于SPI Flash及NAND Flash[19]。RT5350支持SPI Flash,因此選用uboot.img。

2.3 燒寫uboot與uboot_uImage

RT5350通過tftp服務完成uboot與root uImage的燒寫,初始化SDRAM,復制Bootloader到SDRAM,執行Bootloader,復制映像到SDRAM,傳遞根盤地址參數給內核,內核解壓,啟動,尋找跟盤文件系統加載到嵌入式系統上[20]。

具體步驟:先將root uImage拷貝到宿主機/tftpboot目錄下。然后再確保目標設備和宿主機在同一個IP 地址段,才能有效的通信,再運行sudo/etc/init.d/xinetd restart命令將宿主機的tftp服務開啟,最后,當uboot啟動時,進入 “Load system code then write to Flash via TFTP”的選項,通過向控制臺上輸入宿主機IP 和燒寫的內容root uImage,這樣便完成了root uImage燒寫[21]。

3 結束語

本文基于RT5350嵌入式微處理器和Linux操作系統,設計了無線路由卡的軟硬件系統,初步實現了視頻的無線傳輸,成功制作了一款低成本、易于使用的Linux路由卡,為解決一些不方便布線的監控點的視頻傳輸問題提供了一個快速可行的方案,不但減少了施工量,而且縮減了產品投入使用的時間。創造性的使用Wifi來實現高清視頻的短距離傳輸,為未來相關的工程應用提供了一個好的思路。在整個開發過程中從硬件芯片的選擇到硬件原理圖、PCB電路圖的布線,再到Linux的移植和編譯都是由筆者獨立完成,經過多次修改和實驗。這款路由卡還有待在實際應用中接受檢驗,并需要不斷完善。另外,由于并未充分考慮這款路由卡在數據加密及功耗方面的性能,今后的設計還會對其進行進一步研究。

[1]Ralink Technology Corporation.RALINK AP SDK 3.6.0.0 user’s manual[S].Ralink Technology Corporation,2011.

[2]Ralink Technology Corporation.RT5350preliminary datasheet[S].Ralink Technology Corporation,2010.

[3]YANG Jishen.Power quality and electromagnetic interference control in modern industrial[M].Beijing:Publlishing House of Electronics Industry,2011 (in Chinese).[楊繼深.現代工業中電能質量與電磁干擾控制 [M].北京:電子工業出版社,2011.]

[4]SONG Baohua.Linux device driver development [M].2nd ed.Beijing:The Press of People postal and Electricity,2010(in Chinese). [宋寶華.Linux設備驅動開發詳解 [M].2版.北京:人民郵電出版社,2010.]

[5]YANG Yong,YE Mei,ZHANG Qinyan,et al.Wireless network card device driver based ARM embedded Linux [J].Nuclear Electronics and Detection Technology,2010,30 (4):519-523 (in Chinese). [楊勇,葉梅,張秦艷,等.基于ARM 的嵌入式Linux無線網卡設備驅動研究 [J].核電子學與探測技術,2010,30 (4):519-523.]

[6]WANG Minghu.OU Wensheng.The exploitation induction of ARM embedded Linux [M].Beijing:Publishing House of Electric Power China,2008:55-102 (in Chinese). [汪明虎,歐文盛.ARM 嵌入式Linux應用開發入門 [M].北京:中國電力出版社,2008:55-102.]

[7]ZHU Jianguang.Data collection system based ARM embedded Linux [D].Shanxi:North University of China,2011 (in Chinese).[朱建光.基于嵌入式Linux的數據采集系統研究[D].山西:中北大學,2011.]

[8]DU Chunlei.The architecture of ARM and program [M].Beijing:Tsinghua University Press,2009:58-223 (in Chinese).[杜春雷.ARM 體系結構與編程 [M].北京:清華大學出版社,2009:58-223.]

[9]DU Haixing.The analysis and transplant of embedded Bootloader based ARM [J].Microcomputer Information,2010(29):58-59 (in Chinese). [杜海星.基于ARM 的嵌入式Bootloader分 析 與 移 植 [J].微 計 算 機 信 息,2010 (29):58-59.]

[10]ZHANG Shi.The tutorial of ARM embedded system [M].Beijing:China Machine Press,2008:35-66 (in Chinese).[張石.ARM 嵌入式系統教科書 [M].北京:機械工業出版社,2008:35-66.]

[11]WU Shili,LIU Qi,ZHU Lan.The resolve and practice of embedded Linux app exploitation [M].Beijing:China Machine Press,2008:135-146 (in Chinese). [吳士力,劉奇,朱蘭.嵌入式Linux應用開發全程解析與實戰 [M].北京:機械工業出版社,2008:135-146.]

[12]YANG Zhu.Embedded software development[M].Beijing:Beijing University of Aeronautics and Astronautics Press,2010:308-346 (in Chinese). [楊鑄.嵌入式底層軟件開發[M].北京:北京航空航天大學出版社,2010:308-346.]

[13]WANG Wei.The design and application of BootLoader based on embedded Linux [D].Chengdu:Southwest Jiaotong University,2006 (in Chinese). [王薇.基于嵌入式Linux 的BootLoader 的 設 計 與 應 用 [D]. 成 都: 西 南 交 通 大學,2006.]

[14]ZHU Xiaoyuan,XIE Longhan.Development of embedded Linux system [M].Beijing:Publlishing House of Electronics Industry,2012:11-12 (in Chinese). [朱小遠,謝 龍漢.Linux嵌入式系統開發 [M].北京:電子工業出版社,2012:11-12.]

[15]TIAN Ze.The development and application of embedded sys-tem [M].Beijing:Beijing University of Aeronautics and Astronautics Press,2005 (in Chinese). [田澤.嵌入式系統開發與應用 [M].北京:北京航空航天大學出版社,2005.]

[16]GONG Cuiling.Implementation of home gateway research and key technology [D].Nanjing:Nanjing University of Posts and Telecommunications,2013 (in Chinese).[龔翠玲.家庭異構網關研究與關鍵技術實現 [D].南京:南京郵電大學,2013.]

[17]Barbalace A.Performance comparison of VxWorks,Linux,RTAI,and Xenomai in a hard real-time application [J].IEEE Transactions on Nuclear Science,2008,55 (1):435-439.

[18]Xing JS,Liu JX,Wang YJ.Schedulability test performance analysis of rate monotonic algorithm and its extended ones[J].Journal of Computer Research and Development,2005,42 (11):2025-2032.

[19]Hart Darren.Real-time Linux in real time[J].IBM Systems Journal,2008,47 (2):207-220.

[20]WEI Dongshan.The app exploitation entirety manual of embedded Linux [M].Beijing:The Press of People postal and Electricity,2008:240-292 (in Chinese). [韋東山.嵌入式Linux應用開發完全手冊 [M].北京:人民郵電出版社,2008:240-292.]

[21]ZHAO Jiong.Linux kernel completely analysis [M].Beijing:China Machine Press,2010:1-8 (in Chinese).[趙炯.Linux內核完全剖析 [M].北京:機械工業出版社,2010:1-8.]

猜你喜歡
嵌入式系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
TS系列紅外傳感器在嵌入式控制系統中的應用
電子制作(2019年7期)2019-04-25 13:17:14
嵌入式系統通信技術的應用
電子制作(2018年18期)2018-11-14 01:48:16
搭建基于Qt的嵌入式開發平臺
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
主站蜘蛛池模板: 国产乱肥老妇精品视频| 青青草原国产精品啪啪视频| 国产成人精品视频一区视频二区| 亚洲中字无码AV电影在线观看| 亚洲高清在线播放| 中文字幕永久视频| 激情综合图区| 欧美成人日韩| 中文字幕免费播放| 亚洲成年人片| 在线观看亚洲人成网站| 国产精品永久不卡免费视频| a级毛片免费网站| 国产成人综合久久| 亚洲首页国产精品丝袜| 精品久久国产综合精麻豆| 国产麻豆福利av在线播放| 97在线碰| 波多野结衣国产精品| 亚洲人在线| 黄网站欧美内射| 天堂岛国av无码免费无禁网站| 欧美人与牲动交a欧美精品| 伊人久综合| 999精品视频在线| 亚洲国产中文欧美在线人成大黄瓜 | 国产99视频在线| 免费看的一级毛片| www.99在线观看| 色哟哟国产精品一区二区| 在线看国产精品| 亚洲无码A视频在线| 国产91透明丝袜美腿在线| 在线免费不卡视频| 国产理论精品| 日本一区二区三区精品国产| 9久久伊人精品综合| 久久精品波多野结衣| 国产91av在线| 国产微拍精品| 青青草国产精品久久久久| 日韩福利在线观看| 五月天久久综合| 国产美女免费| 自拍中文字幕| 亚洲国产成人无码AV在线影院L| 国内熟女少妇一线天| 色欲国产一区二区日韩欧美| 激情在线网| aaa国产一级毛片| 国产va在线观看免费| 国产精品夜夜嗨视频免费视频| 91久久国产热精品免费| 欧美特黄一级大黄录像| 一级毛片在线播放免费| 天天综合色网| 亚洲av无码专区久久蜜芽| 精品91视频| 日韩欧美视频第一区在线观看| 中文字幕在线永久在线视频2020| 日韩a在线观看免费观看| 红杏AV在线无码| 婷婷六月在线| 四虎成人在线视频| 亚洲无码高清免费视频亚洲| 国产美女在线免费观看| 国产精品一区在线观看你懂的| 色综合天天综合中文网| 亚洲综合一区国产精品| 手机精品福利在线观看| 热思思久久免费视频| 1769国产精品免费视频| 日韩中文字幕亚洲无线码| 亚洲天堂日韩av电影| 欧美 国产 人人视频| 老熟妇喷水一区二区三区| 国产va欧美va在线观看| 中文字幕在线一区二区在线| 先锋资源久久| 欧美性猛交一区二区三区| 中文字幕在线观| 日本午夜影院|