新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > S3C2410中利用serfox 和spcavie 使用攝像頭

        S3C2410中利用serfox 和spcavie 使用攝像頭

        作者: 時間:2016-11-09 來源:網絡 收藏
        要用到的軟件包

        攝像頭驅動: http://mxhaard.free.fr/spca50x/embedded/KernelPatch/usb-2.4.31LE06.patch.tar.gz
        服務器視頻采集: http://mxhaard.free.fr/spca50x/embedded/Servfox/servfox-R1_0_0.tar.gz
        客戶端播放視頻: ftp://ftp5.linuxeden.com/hardware/spcaview-20061208.tar.gz
        瀏覽器java plugs: http://software.lupaworld.com/data/upload/jre-1_5_0_06-linux-i586-rpm.bin

        一、硬件平臺:
        2410開發板
        攝像頭:zc301p

        二、軟件平臺:
        armLinux

        三、驅動程序:
        編譯 zc301驅動
        主要的思路是重新編譯內核,將對應的攝像頭支持模塊選上.
        但是LINUX內核中系統中沒有ZC301P攝像頭驅動,要下載對應的內核補丁,其補丁和驅動在http://mxhaard.free.fr/中有對應 的驅動下載,此處用到的是:http://mxhaard.free.fr/spca50x/embedded/KernelPatch/usb- 2.4.31LE06.patch.tar.gz,此patch是為令重編內核時,有spcaxx系列攝像頭的支持。

        (1)把它到/armlinux/kernel/driver/usb下,解壓,打補丁.
        tar -xvzf usb-2.4.31.patch.gz
        patch -p1 < usb-2.4.31.patch
        此時就會在此目錄下看到spca5xx文件夾了.不知是何原因,估計是KERNEL版本的原因,在/armlinux/kernel/driver /usb 的目錄中的Makefile 和config.in中找不到對應的關鍵字,此時會有一些錯誤,并將錯誤放在Makefile.rej 和config.in.rej 兩文件中,打開兩個文件,分別將其中前面有+的文字加到 Makefile和config.in中
        對應的分類中即可.

        (2)編譯內核,進入/armlinux/kernel,
        make menuconfig.

        在arm linux的kernel目錄下make menuconfig,
        首先<*>選擇Multimedia device->下的Video for linux,
        然后 USB support ---> USB Multimedia devices 選項下應該有
        USB SPCA5XX Sunplus Vimicro Sonix Cameras,要把它配置成module。

        (3)make dep;make zImage;make modules.就會在/armlinux/kernel/arch/arm/boot下生成zImage,這就是我們生成最新的內核,將此內核通過終端 下載到開發板中,/armlinux/kernel/driver/usb/spca5xx中生成 spca5xx.o,spcadecoder.o,spca_core.o.這就是我們要的驅動.

        (4)用新內核啟動,insmod這三個.o文件(可以不用加載spcadecoder.o),攝像
        頭就加載成功,也可用modprobe spca5xx.o 命令,此命令會自動去加載其要支持的.o文件.

        如果一切順利的話,此時將在看到類似下面的信息,
        Using /mydev/spca5xx.o
        usb.c: registered new driver spca5xx
        spca_core.c: USB SPCA5XX camera found. Type Vimicro Zc301P 0x301b
        spca_core.c: spca5xx driver 00.57.06LE registered

        此時會在/dev/成生成 v4l/video0表明攝像頭成功安裝。

        四、應用程序:
        1、移植視頻采集程序servfox
        移植此程序是最簡單的,從http://mxhaard.free.fr/spca50x/embedded/Servfox/servfox- R1_0_0.tar.gz下載后,解壓后,會發現在其目錄中會有一個Makefile.arm文件,將此文件修改成Makefile,再make就可生 成我們要用到的serfox程序了,將 此程序上傳到我們的板中,運行就行了。
        另外在運行servfox前,一定要運行"mknod /dev/video0 c 81 0"這步,
        不寫"mknod /dev/video0 c 81 0"這步,出現 ERROR opening V4L interface錯誤。
        # servfox -d /dev/video0 -s 320x240 -w 7070
        在服務器端運行servfox,圖像大小為320x240,端口號為 7070

        2、客戶端spcaview
        到ftp://ftp5.linuxeden.com/hardware/spcaview-20061208.tar.gz下載spcaviev ,make生成目標文件,
        在PC上,spcaview –w 192.168.1.186:7070就可以看到攝像頭采集來的圖片了。Servfox和spcaview還有很多選項,可以通過spcaview –h 和servfox –h查閱,其中.

        解壓后,還會產生,此是WEB客戶端,將此客戶端上傳到開發板上的WEB文件夾中,則在瀏覽器輸入 http://192.168.1.186/index-sample.html則可看到攝像頭采集來的圖片了。
        web SERVER是移植 boa,移植方法略

        3、web瀏覽器安裝jre
        1、去這里:http://software.lupaworld.com/data/upload/jre-1_5_0_06-linux-i586-rpm.bin 下載最新自解壓安裝包,其自解壓出來的rpm包是不能夠直接使用的,要不就直接提供rpm包安裝了;
        2、使用命令如下:
        chmod +x ./jre-1_5_0_09-linux-i586-rpm.bin
        ./jre-1_5_0_09-linux-i586-rpm.bin

        按空格查看下面的條款,然后輸入yes安裝完畢后,進行下一步;
        3、 到firefox/lugins目錄(在我的NeoShine-Linux下是 /usr/local/firefox/plugins)或者~/.mozilla/plugins下執行:
        ln -s $JAVA_HOME/jre/plugin/i386/ns7/libjavaplugin_oji.so ./
        如果是安裝的jre,可能命令語句如下:
        ln -s $JAVA_HOME/plugin/i386/ns7/libjavaplugin_oji.so
        如果是安裝的jre就是jre文件夾地址。
        這樣就安裝完成了。可以在firefox地址欄里輸入about:plugins查看是否安裝成功。
        將連接創建在~/.mozilla/plugins下是放在當前用戶下,不需要root權限,不影響其他用戶。


        評論


        技術專區

        關閉
        主站蜘蛛池模板: 克拉玛依市| 辽阳县| 逊克县| 岗巴县| 泉州市| 高陵县| 和政县| 阜南县| 夏河县| 玛沁县| 鄂托克前旗| 黄梅县| 广水市| 靖西县| 临沂市| 广东省| 江安县| 宁远县| 镇赉县| 大宁县| 水城县| 临武县| 隆尧县| 温泉县| 丹江口市| 苏尼特右旗| 航空| 海晏县| 水富县| 拜泉县| 临澧县| 江口县| 西藏| 济宁市| 林芝县| 麻栗坡县| 长海县| 金门县| 信丰县| 义乌市| 云安县|