基于S3C2410芯片Linux-Wlan-ng的移植和應(yīng)用
1.引言
嵌入式技術(shù)、網(wǎng)絡(luò)技術(shù)和多媒體技術(shù)的結(jié)合不僅解決了模擬圖像在傳輸過程中的失真等問題,還使得設(shè)備的體積更加微型化、智能化和網(wǎng)絡(luò)化。伴隨網(wǎng)絡(luò)的發(fā)展,運(yùn)用網(wǎng)絡(luò)設(shè)備作為傳輸媒介的圖像數(shù)據(jù)采集及傳輸系統(tǒng)成為主流。本文采用在 S3C2410芯片上建立Linux操作系統(tǒng),在操作體統(tǒng)基礎(chǔ)上移植 Linux-Wlan-ng驅(qū)動程序,從而實(shí)現(xiàn)開發(fā)板具有無線通信能力。在Linux操作系統(tǒng)內(nèi)核里添加OV511驅(qū)動程序,從而實(shí)現(xiàn) Linux下驅(qū)動Webeye V 2000攝像頭,通過Video4Linux接口控制攝像頭參數(shù),圖片的格式和窗口大小等等。將采集到的圖像數(shù)據(jù)通過網(wǎng)絡(luò)接口傳送到上位機(jī)或遠(yuǎn)程終端進(jìn)行處理。本文主要采集的是數(shù)控系統(tǒng)中加工零件的圖像信息,進(jìn)行數(shù)據(jù)處理程序有:恢復(fù) YUV格式的彩色圖,提取Y,U和V分量值,恢復(fù)Y格式的灰度圖,精度測量,邊緣檢測,二值化和特征值提取等等。
2. 系統(tǒng)硬件平臺
本文系統(tǒng)硬件平臺的處理器采用 Samsung公司的集成有 ARM920T內(nèi)核的處理器S3C2410,該處理器資源豐富,具有 16KB的指令 Cache和 16KB數(shù)據(jù) Cache、MMU虛擬存儲器管理器、LCD控制器、支持 NAND Flash系統(tǒng)引導(dǎo), RAM控制器、3通道 UART、4通道 DMA、4通道帶 PWM定時器、RTC、并行 I/O口、8通道 10位 ADC、觸摸屏接口、 IIC接口、IIS接口、2個 USB接口控制器、 2通道 SPI及內(nèi)部 PLL時鐘倍頻器,主頻昀高可達(dá) 203MHz。此外,在處理器豐富資源的基礎(chǔ)上還進(jìn)行了相關(guān)的配置和擴(kuò)展,配置了 64MB的 Flash和 64MB的 SDRAM,并引出了兩個 HOST USB接口。首先在一個 USB接口上外接一個帶 USB口的攝像頭 Webeye V 2000,其內(nèi)部采用的是 ov7620、ov511和一個存儲芯片。然后在另一個 USB接口上外接的 USB口的無線網(wǎng)卡,以無線方式發(fā)送圖像數(shù)據(jù)到上位機(jī)或遠(yuǎn)程終端。無線網(wǎng)卡采用 NETGEAR MA111,它基于 IEEE802.11b協(xié)議,昀大傳輸率為
11Mbps,它的室內(nèi)傳輸距離可達(dá) 100米,室外極限傳輸距離接近 500米,并可以通過自行調(diào)整不同傳輸率,工作在 11、5.5、2、1Mbps,來確保傳輸效果。 Samsung 2410并行 I/O口連接到運(yùn)動控制芯片 MAX314,由 MAX314控制電機(jī)運(yùn)動,構(gòu)成嵌入式數(shù)控系統(tǒng)。整個系統(tǒng)的硬件概圖如圖 2.1所示:
3. WLAN網(wǎng)卡驅(qū)動的移植
本文選擇在嵌入式 Linux操作系統(tǒng)層面上對無線網(wǎng)卡驅(qū)動進(jìn)行移植。
3.1 嵌入式LINUX操作系統(tǒng) Linux具有內(nèi)核小,多任務(wù)、多進(jìn)程的特征,實(shí)時性效率高,源代碼開放,內(nèi)核直接支持網(wǎng)絡(luò)等優(yōu)點(diǎn)。由于嵌入式系統(tǒng)的硬件資源十分有限,因此不能直接把Linux作為操作系統(tǒng),需要針對具體的應(yīng)用功能配置內(nèi)核,制作根文件系統(tǒng)。只有這樣才能將整個系統(tǒng)能夠存放到容量較小的Flash中。Linux的動態(tài)模塊加載使Linux的裁減極為方便,高度模塊化和模塊化使添加非常容易。根據(jù)圖像采集模塊,無線傳輸模塊和數(shù)控系統(tǒng)模塊的需要配置適合的嵌入式Linux操作系統(tǒng)。系統(tǒng)采用VIVI啟動,內(nèi)核采用Linux-2.4.18,根文件系統(tǒng)采用Cramfs文件系統(tǒng)。
評論