




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、實驗指導注意在本指導書中默認你已經(jīng)加載了頭的驅(qū)動程序。一、使用標準 jpeg 庫顯示到1、 獲取 jpeg 庫的源代碼,對應光盤的中的源代碼是 jpeg-6b.ok.tar.bz22、 在 linux 新建一個目錄,用于開發(fā)網(wǎng)絡(luò)3、 進入 temp 目錄:。例如 temp 目錄4、 然后通過 s將要使用的源文件拷貝到 temp/lib_jpeg/jpeg_f/目錄下5、 解壓該文件 jpeg-6b.ok.tar.bz2,并進入到解壓后的 jpeg-6b 目錄下6、 如上配置完成之后,修改 Makefile 文件7、 建立安裝目錄8、 編譯,安裝rootvm-dev jpeg-6b# make
2、;make install需要注意的是,這時的 jpeg 庫就編譯好了,之后的應用程序在使用該庫的時候,需要在編譯的時候指向該目錄,也就是/opt/develop/lyj/temp/lib_jpeg/jpeg_file/jpeg-6b/_install紅色前面的可以不相同rootvm-dev jpeg-6b# mkdir -p _install/bin rootvm-dev jpeg-6b# mkdir -p _install/lib rootvm-dev jpeg-6b# mkdir -p _install/include rootvm-dev jpeg-6b# mkdir -p _inst
3、all/man/man1 rootvm-dev jpeg-6b# The name of your C compiler:CC= gcc 該成 CC=arm-linux-gcc (根據(jù)你自己交叉編譯器的位置修改) # library (.a) file creationdAR= ar rc 該成 AR= arm-linux-ar rc (同上)# second stn .a creation (use touch if not needed) AR2= ranlib 該成 AR2= arm-linux-ranlib (同上)rootvm-dev jpeg-6b# vi build.sh./co
4、nfigure -prefix=/mnt/nfs/jpeg4arm -exec-prefix=/mnt/nfs/jpeg4arm -enable-shared-enable-sicrootvm-dev jpeg-6b#將該文件的內(nèi)容修改:./configure-prefix=$PWD/_install-exec-prefix=$PWD/_install-enable-shared-enable-sic并在命令行直接執(zhí)行:rootvm-dev jpeg-6b# ./configure -prefix=$PWD/_install-exec-prefix=$PWD/_install -enable-
5、shared -enable-sic然后就進入配置過程rootvm-dev temp# mkdir -p lib_jpeg/jpeg_file9、 編譯應用程序首先把把它在使用的應用程序源碼是 jpegshow.tar.bz2的工程目錄下,也就是 temp 目錄下解壓并進入到他解壓之后的目錄編輯 Makefile 文件,使用剛才的庫文件注意只可能是紅色部分不相同,其它都相同編譯好了 Makefile 文件之后Make;就可以在當前目錄得到要用的 myjpeg 文件10、a)運行文件 myjpeg 文件和一個 image.jpg 的文件到開發(fā)板,直接執(zhí)行就可以在LCD 上看到你的圖像了。二、使用
6、方法獲取一張到rootvm-dev jpegshow# vi MakefileJPEG_DIR=/opt/develop/lyj/temp/lib_jpeg/jpeg_file/jpeg-6b/_install all:main.oarm-linux-gcc -I$(JPEG_DIR)/include -L$(JPEG_DIR)/lib -o myjpeg -sic main.o fb.o jpeg.o -ljpegmain.o:fb.o jpeg.oarm-linux-gcc -I$(JPEG_DIR)/include -L$(JPEG_DIR)/lib -c main.c fb.o:fb.
7、c fb.harm-linux-gcc -c fb.c jpeg.o:jpeg.c jpeg.harm-linux-gcc -I$(JPEG_DIR)/include -L$(JPEG_DIR)/lib -c jpeg.cclean:rm -rf*.omyjpegrootvm-dev temp# tar -vxjf jpegshow.tar.bz2 rootvm-dev temp# cd jpegshow/rootvm-dev jpegshow#該實驗使用的實驗源代碼是 mouse_capture.tar.bz2,在 temp 目錄解壓縮,并進入到解壓之后的目錄中1、 修改 Makefile
8、文件2、 修改 server.c 文件3、 編譯,應用程序4、 執(zhí)行三、編寫1、使用的形式將到的實時顯示到LCD兩個實驗中,能夠從頭到,也實現(xiàn)了如何將顯示到LCD 上,那么通過簡單的修改代碼就可以實現(xiàn),將實時的顯示到LCD 上。2、 修改代碼在原來的顯示代碼中,是通過循環(huán)來進行修改 server.c 文件,把它改成,只一次3、 修改顯示代碼/while(1)v4lGrab(&In, jpegfile); if(grabmethod=1)prf(you use mmap method!n); else if(grabmethod=0)prf(you use read method!n);/注釋掉
9、 while 循環(huán)/mnt/yaffs/ ./mouse_capture you use read method!you use read method! you use read method! you use read method!rootvm-dev mouse_capture-daily3# make clean;make rm -f *.a *.o mouse_capture*.bakarm-linux-gcc -O2 -DLINUX-c -o server.o server.c arm-linux-gcc -O2 -DLINUX-c -o spcav4l.o spcav4l.ca
10、rm-linux-gcc -O2 -DLINUX-o mouse_capture server.o spcav4l.o rootvm-dev mouse_capture-daily3#生成的文件在/var/tmp/1.jpgchar jpegfile = /var/tmp/1.jpg; grabmethod = 0;只需、修改這兩行,其它不變rootvm-dev mouse_capture-daily3# vi Makefile CC=arm-linux-gcc只需修改這一行,其它不變rootvm-dev temp# tar -vxjf mouse_capture.tar.bz2 rootvm
11、-dev temp# cd mouse_capture-daily3/ rootvm-dev mouse_capture-daily3#原來是循環(huán)判斷顯示文件的存在,現(xiàn)在直接顯示一次4、 編寫運行5、 測試此時就可以在屏幕上看到動態(tài)的圖像了,雖然很難看。但是基本的原理已經(jīng)具備了。剩下的就是提高性能了。四、更改 jpeg 庫,采用內(nèi)存壓縮和解壓縮的方法,將1、 該實驗使用的源文件是 jpeg-6b-mem.tar.bz2到的實時顯示到LCD2、 在 temp/lib_jpeg 目錄下新建一個 jpeg_mem 目錄,將文件 jpeg-6b-mem.tar.bz2 拷貝到該目錄下3、 解壓縮,并進
12、入到該目錄下rootvm-dev jpeg_mem# tar -vxjf jpeg-6b-mem.tar.bz2 rootvm-dev jpeg_mem# cd jpeg-6brootvm-dev jpeg-6b#rootvm-dev jpeg-6b# vi build.sh./configure -prefix=/mnt/nfs/jpeg4arm -exec-prefix=/mnt/nfs/jpeg4arm -enable-shared-enable-sic/mnt/yaffs/od +x run.sh /mnt/yaffs/./run.shyou use read method!you h
13、ave get a picture in /var/tmp/1.jpg you use read method!you have get a picture in /var/tmp/1.jpg/mnt/yaffs/vi run.sh #!/bin/shwhile 1 ;do./mouse_captureif -f /var/tmp/1.jpg ;then./myjpeg fidone/mnt/yaffs/while(1)if(!read_JPEG_file(/var/tmp/1.jpg,fb_mem,640,480) prf(main return err);return 0;elseretu
14、rn 1;Return 14、 如上配置完成之后,修改 Makefile 文件5、 建立安裝目錄6、 編譯,安裝7、 重新編譯應用程序需要的源文件是 v4lcap_class_2410_270.tar.bz2。在該目錄temp 目錄解壓該文件,并進入到注意這里依賴的庫,是經(jīng)過修改的 jpeg 庫rootvm-dev v4lcap# vi Makefile JPEG_DIR=/opt/develop/lyj/temp/lib_jpeg/jpeg_mem/jpeg-6b/_installall:main.oarm-linux-gcc-I$(JPEG_DIR)/include -L$(JPEG_DI
15、R)/lib-o v4lcap-sicmain.o fb.o jpeg.o spcav4l.o -ljpeg main.o:fb.o jpeg.oarm-linux-gcc-I$(JPEG_DIR)/include -L$(JPEG_DIR)/lib -c main.c fb.o:fb.c fb.harm-linux-gcc -c fb.c jpeg.o:jpeg.c jpeg.h spcav4l.oarm-linux-gcc-I$(JPEG_DIR)/include -L$(JPEG_DIR)/lib-c jpeg.crootvm-dev jpeg-6b# make ;make instal
16、l需要注意的是,這時的 jpeg 庫就編譯好了,之后的應用程序在使用該庫的時候,需要在編譯的時候指向該目錄,也就是/opt/develop/lyj/temp/lib_jpeg/jpeg_mem/jpeg-6b/_install紅色前面的可以不相同注意這里和前面是不同的。一定不要rootvm-dev jpeg-6b# mkdir -p _install/bin rootvm-dev jpeg-6b# mkdir -p _install/lib rootvm-dev jpeg-6b# mkdir -p _install/include rootvm-dev jpeg-6b# mkdir -p _i
17、nstall/man/man1 rootvm-dev jpeg-6b# The name of your C compiler:CC= gcc 該成 CC=arm-linux-gcc (根據(jù)你自己交叉編譯器的位置修改) # library (.a) file creationdAR= ar rc 該成 AR= arm-linux-ar rc (同上)# second stn .a creation (use touch if not needed) AR2= ranlib 該成 AR2= arm-linux-ranlib (同上)rootvm-dev jpeg-6b#將該文件的內(nèi)容修改:./c
18、onfigure-prefix=$PWD/_install-exec-prefix=$PWD/_install-enable-shared-enable-sic并在命令行直接執(zhí)行:rootvm-dev jpeg-6b# ./configure -prefix=$PWD/_install-exec-prefix=$PWD/_install -enable-shared -enable-sic然后就進入配置過程8、 修改完 Makefile 文件之后,直接編譯就可以得到 v4lcap 文件,這個效率還是很高的,實測可以達到十幾幀就可以執(zhí)行了,五、移植 spcview,配置 1、 從目錄。頭spca
19、view 源碼,將其解壓并進入源碼2、 修改 Makefile 文件3、 保存并退出,編譯程序4、 將spcaview-20061208 文件夾中的http-java-applet 文件夾的內(nèi)容拷貝到/var/www/下,將生成的 spcaserv到開發(fā)板上。六、測試1、 首先搭建好 boa 的配置環(huán)境重做根文件系統(tǒng),將boa 需要的配置文件添加到根文件系統(tǒng)的/etc 目錄下或者使用已經(jīng)做好的根文件系統(tǒng) root.cramfs將光盤中的runtime 中的 var 目錄在 linux 下打包傳送到開發(fā)板上。加壓后將其內(nèi)容拷貝到開發(fā)板的/var 目錄下運行 boa 不提示錯誤,并在進程中有該進程
20、/mnt/yaffs/web./boa /mnt/yaffs/webpsUidVmSize Sd 1 root520 SinitrootSWkeventdrootSWN ksoftirqd_CPU0rootSWkswapdrootSWbdflushrootSWkupdatedrootSWmtdblockdrootSWkhubd31 bin372 Sportmaprootvm-dev spcaview-20061208# make spcaservrootvm-dev spcaview-20061208# vi Makefile CC=arm-linux-gccCPP= arm-linux-g+
21、 Spcaserv:$(OBJSERVER)$(CC) $(SERVFLAGS) O spcaserv $(OBJSERVER) $(SERVLIBS)rootvm-dev# tar -vxzf spcaview-20061208.tar.gz rootvm-dev# lsbakdriverruntimespcaview-20061208spcaview-20061208.tar.gzrootvm-dev#spcav4l.o:spcav4l.c spcav4l.harm-linux-gcc-cspcav4l.cclean:rm -rf*.ov4lcap此時確保你的網(wǎng)線連接正確,這時在 IE 瀏
22、覽器中輸入開發(fā)板的 ip 地址就可以看到如下的界面如果你的電腦上沒有安裝 java 虛擬機的話,他會提示你安裝虛擬機,安裝光盤中的jre-6u10-windows-i586-p-s.exe 文件就可以了。2、 建立節(jié)點 mknod /dev/0 c 81 0(如何內(nèi)核已經(jīng)將頭驅(qū)動靜態(tài)編譯,設(shè)備系統(tǒng)中已經(jīng)存在該設(shè)備節(jié)點,此步驟可以略過)。3、 運行程序/mnt/yaffs/web./spcaserv -d /dev/0 -s 320 x240 -f jpg size width: 320 height: 240Spcaview ver: 1.1.7 date: 06:11:2006 (C) mx
23、haard.fr/dev/0Camera found: Generic Vimicro 303bVIDIOCGPICT brightnes=32768 hue=0 color=0 contrast=32768 whiteness=0depth=24 palette=4Bridge found: ZC301-2 is_spca SPCA505 is_spca SPCA506 is_spca SPCA501 is_spca SPCA508 is_spca SPCA504 is_spca SPCA500 is_spca SPCA504Bis_spca SPCA53337 root600 Sinetd
24、root852 S-shroot756 S-shroot756 S-shroot756 S-sh90 nobody840 S./boa106 root692 Rps /mnt/yaffs/web(當然也可以改為其它的格式)此時刷新一下 IE 就可以看到的了is_spca SPCA504C is_spca SPCA561 is_spca SPCA536 is_spca SN9C102 is_spca ZR364XX is_spca ZC301-2quality 1 autoexpo 1 Timeframe 0StreamId: 0Cameratry palette 21 depth 8Availablepalette 21try palette 19196 depth 65535Couldnt set palettetry 1075923708 Damned second try failt
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025醫(yī)療機構(gòu)耗材采購協(xié)議樣本
- 2025年社區(qū)基本公共衛(wèi)生服務(wù)知識培訓試題及答案
- 2025循環(huán)借款合同范本
- 2025-2030中國文創(chuàng)IP授權(quán)市場定價體系與侵權(quán)監(jiān)測技術(shù)發(fā)展
- 2025年衛(wèi)生管理正副高級衛(wèi)生高級資格理論考試試題庫(含答案)
- 2025-2030中國家政服務(wù)行業(yè)技術(shù)裝備升級與智慧家居融合趨勢
- 江蘇省南通市第一中學2026屆高二化學第一學期期末達標測試試題含答案
- 2025年公共文明基本常識知識試題庫填空題問答題附答案
- 2025關(guān)于國際商事合同糾紛案例解析
- 2025年術(shù)前病例討論(制度)考核試題及答案
- 駕駛員安全培訓考試試題及答案
- 《禮儀規(guī)范教程》 課件 概述篇 以禮相待 第一課 禮儀的概述
- 2025年新疆焊工理論考試題庫
- 2025年工會考試真題附答案
- 儀器對標管理辦法
- 2025年山東省輔警招聘考試考試試題庫含答案詳解
- 典當管理辦法銀監(jiān)
- 2025年中醫(yī)藥產(chǎn)業(yè)發(fā)展現(xiàn)狀與市場前景研究報告
- 開放式公園日常管理課件
- 加油站設(shè)備管理課件
- 班組安全建設(shè)與管理成果
評論
0/150
提交評論