freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于嵌入式linux與s3c2410平臺(tái)視頻采集-全文預(yù)覽

  

【正文】 的數(shù)據(jù)記錄到校正數(shù)組中,為以后計(jì)算轉(zhuǎn)換因子使用。 avg = ((long)vt + (long)vb) / 2。 diff = abs(vl vr)。 vl = abs(TouchPanel_Point[0].y TouchPanel_Point[1].y)。本項(xiàng)目中,五個(gè)校正點(diǎn)的坐標(biāo)分別設(shè)置為 (20, 20), (20, 219), (299, 219), (299, 20), (119, 159)。 //Y 方向偏移量 U8 scale。 該數(shù)據(jù)結(jié)構(gòu)的定義如下: typedef struct { U32 xFactor。所謂校正是指根據(jù)觸摸屏和 LCD 顯示屏對(duì)應(yīng)點(diǎn)的電壓值和坐標(biāo)的比例關(guān)系計(jì)算出一組轉(zhuǎn)換因子,該因子反映了觸摸屏上的電壓值和 LCD 顯示屏上坐標(biāo)的對(duì)應(yīng)關(guān)系。ts, sizeof(ts_event_t))。 觸摸屏數(shù)據(jù)的讀取 打開觸摸屏設(shè)備之后,用戶就可以通過 read()函數(shù)讀取觸摸屏的數(shù)據(jù)。下面將北京理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 21 詳細(xì)介紹這幾個(gè)部分具體內(nèi)容: 打開觸摸屏設(shè)備 在每次使用觸摸屏設(shè)備時(shí),首先都要打開該設(shè)備。 設(shè)備釋放 在使用完觸摸屏設(shè)備之后還要釋放其占有的系統(tǒng)資源以及釋放數(shù)據(jù)緩沖區(qū)的內(nèi)容,避免殘留的數(shù)據(jù)影響設(shè)備下一次的正常使用。 } init_waitqueue_head(amp。 if (result) { printk(1init_module error from irq %d\n, result)。 } // 申請(qǐng)觸摸屏設(shè)備硬件中斷 result=0。 return ENODEV。初始化主要任務(wù)包括注冊(cè)觸摸屏設(shè)備、申請(qǐng)觸摸屏硬件中斷、初始化設(shè)備寄存器、清空數(shù)據(jù)緩沖區(qū)等等。asp_interrupt()函數(shù)的流程如圖 31 所示: 圖 31 觸摸屏硬件中斷服務(wù)子程序流程圖 根據(jù)中斷服務(wù)類型 , 作出相應(yīng)處理清除數(shù)據(jù)緩沖區(qū)啟動(dòng)自動(dòng)校正清楚觸摸屏標(biāo)志屏蔽觸摸屏下壓中斷使能觸摸屏抬起中斷觸摸屏下壓中斷關(guān)閉自動(dòng)采樣功能屏蔽數(shù)據(jù)中斷清楚觸摸屏標(biāo)志喚醒等待進(jìn)程觸摸屏彈起中斷觸摸屏數(shù)據(jù)中斷清楚觸摸屏標(biāo)志自動(dòng)校正模式 ?校正處理啟動(dòng)自動(dòng)采樣讀取所有硬件數(shù)據(jù) ?硬件緩存中還有數(shù)據(jù) ?從硬件緩沖區(qū)讀取一個(gè)數(shù)據(jù)校正數(shù)據(jù)寫入軟件緩沖區(qū)是關(guān)閉自動(dòng)校正否是否是否喚醒等待進(jìn)程退出寫入最后一個(gè)數(shù)據(jù)清除硬件數(shù)據(jù)緩沖區(qū)北京理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 19 在中斷處理子程序中,系統(tǒng)調(diào)用 read_pen_fifo()從設(shè)備的硬件緩沖區(qū)中讀出一 個(gè)觸摸屏點(diǎn)擊數(shù)據(jù)的各項(xiàng)數(shù)值,然后調(diào)用 asp_post_process()使用 ASP設(shè)備對(duì)各項(xiàng)數(shù)值進(jìn)行轉(zhuǎn)換,最后將轉(zhuǎn)換之后的數(shù)值使用 add_x_y()函數(shù)存放到上節(jié)中提到的驅(qū)動(dòng)程序的數(shù)據(jù)緩沖區(qū)中。 4) 筆 FIFO 滿中斷( IRQ 號(hào)為 33); 5) 筆觸中斷( IRQ 號(hào)為 46)。 2) 筆數(shù)據(jù)比較(抬筆)中 斷 ( IRQ 號(hào)為 9)。 NEXTI()宏的實(shí)現(xiàn)如下: defineNEXTI(i) {i = (i == BUFLEN 1) ? 0 : i + 1。 該數(shù)據(jù)緩沖區(qū)以循環(huán)隊(duì)列的方式實(shí)現(xiàn)。 //觸摸屏壓力值 PENUP = 0x0000, PENDOWN = 0xffff unsigned short x。 觸摸屏校正思路 在觸摸屏驅(qū)動(dòng)程序中使用數(shù)據(jù)結(jié)構(gòu) ts_event_t 來保存每次點(diǎn)擊觸摸屏所返回的數(shù)據(jù)。絕對(duì)坐標(biāo)系統(tǒng)的特點(diǎn)是每一次定位坐標(biāo)與上一次定位坐標(biāo)沒有關(guān)系,每次觸摸的數(shù)據(jù)通過校準(zhǔn)轉(zhuǎn)為屏幕上的坐標(biāo),不管在什么情況下,觸摸屏這套坐標(biāo)在同一點(diǎn)的輸出數(shù)據(jù)是穩(wěn)定的?,F(xiàn)在有的開發(fā)板廠商已 經(jīng)可以提供觸摸屏的驅(qū)動(dòng)接口,但是由于觸摸屏的尺寸大小以及一些具體參數(shù)的設(shè)置失誤,造成基于觸摸屏操作的圖形界面坐標(biāo)不準(zhǔn),也就是說觸摸屏讀出的點(diǎn)的物理坐標(biāo)和實(shí)際 LCD 屏幕的像素坐標(biāo)不 相符 , 就無法正確使用所需要的應(yīng)用程序。 /*關(guān)閉文件 */ return 0。 /* 綠色的色深 */ *(fbp + location + 2) = 200。 y = 100。 由此便可直接操作大小為 screensize,起始地址為 fbp 的內(nèi)存區(qū)域,在LCD上直接顯示圖像、圖形、文字等,例如執(zhí)行 memset( fbp, 0, screensize)將進(jìn)行清屏操作。 exit(3)。finfo)) { printf(Error reading fixed information\n)。 北京理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 14 FrameBuffer 設(shè)備是運(yùn)行在 Linux 控制臺(tái)上的一個(gè)優(yōu)秀的圖形接口,他幾乎支持所有的硬件,提供了統(tǒng)一的 API 接口,很好地實(shí)現(xiàn)了硬件無關(guān)性,他可以直接操作顯存,而且還留有提供圖形加速功能的接口,運(yùn)行時(shí)不需要 root權(quán)限; FrameBuffer 的設(shè)備節(jié)點(diǎn)是 /dev/fb*,用戶若要使用他,需要在編譯內(nèi)核時(shí)選中 FrameBuffer,其簡(jiǎn)單的使用程序如下: struct fb_var_screeninfo vinfo。在單幀的基礎(chǔ)上,利用 值確定采集完畢攝像頭幀緩沖區(qū)幀數(shù)據(jù)進(jìn)行 循環(huán)的次數(shù)。grab_ buf)函數(shù),若調(diào)用成功, 則激活設(shè)備真正開始一幀圖像的截取,是非阻塞的。該函數(shù)成功時(shí)返回映像內(nèi)存區(qū)的指針, 失敗 時(shí)返回值為 1。 =320。 利用 mmap()方式視頻裁取具體進(jìn)行操作如下。 完成以上初始化設(shè)備工作后,就可以對(duì)視頻圖像截取了,有兩種方法:一種是 read()直接讀??;另外一種 mmap()內(nèi)存映射。 if(ioct1(grab_fd,VIDIOCSPICT,amp。該函數(shù)成功返回后,這些信息從內(nèi)核空間拷貝到用戶程序空間 grab_cap 各成員分量 中,使用 printf 函數(shù)就可得到各成員分量信息,例如printf(maxheight=%d,)獲得最大垂直分辨率的大小。這里說明一下 ioctl(int fd,int 北京理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 12 cmd,?) 函數(shù),它在用戶程序中用來控制 I/O 通道,其中, fd 代表設(shè)備文件描述符, cmd 代表用戶程序?qū)υO(shè)備的控制命令,省略號(hào)一般是一個(gè)表示類型長(zhǎng)度的參數(shù),也可沒有。 //獲得文件的信息 munmap(void *start,size_tlength)。 struct voide_mbuf grab_vm; 這些數(shù)據(jù)結(jié)構(gòu)都是由 Video4Linux 支持的,它們的用途如下: *video_capability 包含攝像頭的基本信息,例如設(shè)備名稱、支持的最大最小分辨率、信號(hào)源信息等,分別對(duì)應(yīng)著結(jié)構(gòu)體中 成員變量 name[32]、maxwidth、 maxheight、 minwidth、 minheight、 channels(信號(hào)源個(gè)數(shù) )、 type等; *voide_picture 包含設(shè)備采集圖像的各種屬性,如 brightness(亮度 )、hue(色調(diào) )、 contrast(對(duì)比度 )、 whiteness(色度 )、 depth(深度 )等; *video_mmap 用于內(nèi)存映射; *voido_mbuf 利用 mmap 進(jìn)行映射的幀信息,實(shí)際上是輸入到攝像頭存儲(chǔ)器緩沖中的幀信息,包括 size(幀的大?。?、 frames(最多支持 的幀數(shù))、offsets(每幀相對(duì)基址的偏移)。本設(shè)計(jì)編寫采集程序是在安裝 Linux 操作系 統(tǒng)的宿主機(jī) PC機(jī)上進(jìn)行的,下面是具體論述。在系統(tǒng)平臺(tái)上對(duì) USB口數(shù)碼攝像頭驅(qū)動(dòng),首先把 USB控制器驅(qū)動(dòng)模塊靜 態(tài)編譯進(jìn)內(nèi)核,使平臺(tái)中支持 USB 接口,再在需要使用攝像頭采集時(shí),使用 insmode 動(dòng)態(tài)加載其驅(qū)動(dòng)模塊,這樣攝像頭就可正常工作了,接著進(jìn)行了下一步對(duì)視頻流的采集編程。對(duì)于 USB 口攝像頭,其驅(qū)動(dòng)程序中需要提供基本的 I/O 操作接口函數(shù) open、 read、 write、 close 的實(shí)現(xiàn)。 北京理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 10 USB口數(shù)碼攝像頭的驅(qū)動(dòng)實(shí)現(xiàn) 在 Linux 下,設(shè)備驅(qū)動(dòng)程序可以看成 Linux 內(nèi)核與外部設(shè)備之間的接口。這個(gè)標(biāo)準(zhǔn)定義了一套接口,內(nèi)核、驅(qū)動(dòng)、應(yīng)用程序以這個(gè)接口為標(biāo)準(zhǔn)進(jìn)行通信。上層軟件部分我參考了 vidcat, vgrabber, w3cam, gqcam 這幾種軟件的操作過程,重點(diǎn)參照了 vidcat 進(jìn)行了 V4L 編程,使用了 和 中的函數(shù),經(jīng)過交叉編譯,在實(shí)驗(yàn)板上實(shí)現(xiàn)了實(shí)時(shí)圖像采集的 功能 。然后再加相應(yīng)的攝像頭驅(qū)動(dòng)程序。而在Linux 下要使系統(tǒng)所掛接的外部設(shè)備正常工作,必須加載相應(yīng)的驅(qū)動(dòng)程序。軟件部分的搭建主要依賴于以下三個(gè)部分: ① Boatloader:可以從 SAMSUNG 公司的官方網(wǎng)站獲取,經(jīng)過交叉編譯生成映像文件,然后通過 JTAG 接口將映像燒寫到目標(biāo)板,實(shí)現(xiàn)引導(dǎo)程序的裝載。然后,保存成文件的形式 并 運(yùn)行移植到平臺(tái)上的圖像處理程序,對(duì)緩沖的圖像數(shù)據(jù)直接進(jìn)行相關(guān)處理 。該平臺(tái)采用 Samsung 公司的處理器 S3C2410。對(duì)于嵌入式 Linux,宿主機(jī) PC上應(yīng)安裝 Linux 系統(tǒng)。這種方式通常不適于嵌入式系統(tǒng)的軟件開發(fā),因?yàn)閷?duì)于嵌入式系統(tǒng)的開發(fā),它沒有足夠的資源在本機(jī)(即嵌入式系統(tǒng)平臺(tái))運(yùn)行開發(fā)工具和調(diào)試工具。 Linux 的動(dòng)態(tài)模塊加載,使 Linux 的裁減極為方便 ,高度模塊化的部件使添加非常容易。 4) 嵌入式 Linux 的圖形環(huán)境與桌面系統(tǒng)相比簡(jiǎn)陋的多,對(duì)中文的支持也不夠完善,對(duì)于某些手持?jǐn)?shù)字設(shè)備,這方面還有許多工作要做。這些工作包括: 1) 嵌入式系統(tǒng)中的揮發(fā)性 /非揮發(fā)性存儲(chǔ)器容量受到嚴(yán)格的限制,為適應(yīng)系統(tǒng)對(duì)尺寸的要求,需要剪裁嵌入式 Linux 的內(nèi)核。 6) 對(duì)多種網(wǎng)絡(luò)協(xié)議的完美支持。 5) 整個(gè)系統(tǒng)是免費(fèi)的,只要遵守 GPL 規(guī)則,任何人都可以使用、修改甚至銷售 Linux,全世界有無數(shù)個(gè)人和組織在不斷的完善 Linux,有眾多的計(jì)算機(jī)廠商提供 Linux 相關(guān)的產(chǎn)品和服務(wù)。 Linux 是按照 POSIX 標(biāo)準(zhǔn)編寫的,許多源代碼借鑒了 UNIX。自由軟件的由一個(gè)標(biāo)準(zhǔn)組織控制,全世界范圍軟件人員并行開發(fā)的方式造就了 Linux 可剪裁的內(nèi)核結(jié)構(gòu),而可剪裁性恰恰是將 Linux 與嵌入式系統(tǒng)緊密聯(lián)系在一起 的紐帶,另一方面嵌入式系統(tǒng)對(duì)成本的嚴(yán)格限制也使得具備開放特征的 Linux 超越其它諸如 Vxwork、 pSOS、Neculeus 和 Windowss CE 等強(qiáng)勁競(jìng)爭(zhēng)對(duì)手成為市場(chǎng)占有率第一的嵌入式操作系統(tǒng)。 ” 自由軟件的資深作家、 《 新黑客詞典 》 的編輯 Eric S. Raymond 認(rèn)為,開放源碼的 開發(fā)方式 天生就要比傳 統(tǒng)的自頂向下設(shè)計(jì)方法優(yōu)越。 GPL 是GNU通用公共許可證的縮寫, Linux 操 作系統(tǒng)以及與它有關(guān)的大量軟件是在 GPL的推動(dòng)下開發(fā)和發(fā)布的。 Linux 的開發(fā)方式 Linux 是基于 GPL(GNU General Public License)的 opensource 軟件。 ? / 子目錄包含了內(nèi)核的連網(wǎng)代碼。如: I386,ARM 等。 Linux 源代碼的結(jié)構(gòu) Linux 用來支持各種體系結(jié)構(gòu)的源代碼包含大約 4500 個(gè) C 語(yǔ)言程序,存放在 270 個(gè)左右的子目錄下,總共大約包含 200 萬行代碼,大概占用 58MB 磁盤空間。最開始的 Linux 是用匯編語(yǔ)言編寫的。 Linux 是如今的桌面系統(tǒng)領(lǐng)域中,唯一能做到與 Windows 相抗衡的操作系統(tǒng)。美國(guó)汽車大王福特公司的高級(jí)經(jīng)理曾宣稱,“福特出售的‘計(jì)算能力’已超過了 IBM”。 隨著網(wǎng)絡(luò)技術(shù)、信息技術(shù)和計(jì)算機(jī)技術(shù)的飛速發(fā)展,視頻監(jiān)控系統(tǒng)的發(fā)展趨勢(shì)必然是全面數(shù)字化、網(wǎng)絡(luò)化,加上現(xiàn)在微處理器性能 的大大提高,基于嵌入式網(wǎng)絡(luò)視頻監(jiān)控技術(shù)應(yīng)用而生,它的主要原理是:嵌入式服務(wù)端采用微處理器和嵌入式操作系統(tǒng),結(jié)合網(wǎng)絡(luò)技術(shù),將采集來的視頻圖像經(jīng)過壓縮處理,傳輸?shù)骄W(wǎng)絡(luò),實(shí)現(xiàn)網(wǎng)絡(luò)視頻監(jiān)控。 Moving target detection。USB 攝像頭 北京理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 3 Abstract The paper is based on an embedded Linux Digital Video Monitoring System. Video Monitoring System is an important part of the security system, it is a an integrated system which has a stronger ability to prevent from danger . Using embedded systems to realize remote video mo
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1