<strike id="kiyse"></strike>
  • <tr id="kiyse"></tr>
  • <strike id="kiyse"></strike><samp id="kiyse"><tbody id="kiyse"></tbody></samp>
    <strike id="kiyse"><s id="kiyse"></s></strike>
    <tr id="kiyse"></tr>
    <noframes id="kiyse"><code id="kiyse"></code></noframes>
    <th id="kiyse"></th>
    <samp id="kiyse"></samp>
  • <th id="kiyse"><s id="kiyse"></s></th>
  • 基于WinCE的視頻采集應(yīng)用方案

     2009-3-11              

            嵌入式系統(tǒng)是一種以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),其軟硬件可配置、可裁減,對(duì)功能、可靠性、成本、體積、功耗有嚴(yán)格約束的專用計(jì)算機(jī)系統(tǒng)。它結(jié)合了先進(jìn)的計(jì)算機(jī)技術(shù)、半導(dǎo)體技術(shù)、電子技術(shù)以及各個(gè)行業(yè)的具體應(yīng)用,被看作技術(shù)密集、不斷創(chuàng)新的知識(shí)集成系統(tǒng)。近幾年來(lái)以軟硬件相結(jié)合為顯著特征、以消費(fèi)電子類為主導(dǎo)的智能設(shè)備以超乎人們想象的速度獲得了前所未有的發(fā)展,與此同時(shí),在工控領(lǐng)域也得到快速發(fā)展,在這個(gè)過程中,微軟公司也是首當(dāng)其沖,其推出的Microsoft Windows CE是一個(gè)開放的、可裁減的、32位的實(shí)時(shí)操作系統(tǒng)和其他桌面版窗口操作系統(tǒng)相比,具有可靠性好、實(shí)時(shí)性高、內(nèi)核體積小的特點(diǎn),所以被廣泛用于各種嵌入式智能設(shè)備的開發(fā),如工業(yè)控制、信息家電、移動(dòng)通信、個(gè)人電子消費(fèi)品等各個(gè)領(lǐng)域,是當(dāng)今應(yīng)用最多、增長(zhǎng)最快的嵌入式操作系統(tǒng)。

     

            EM9000 ARM嵌入式主板采用高端的ARM9芯片EP9315,特別針對(duì)工控系統(tǒng)中TFT彩色顯示智能終端的應(yīng)用需求進(jìn)行了精心的優(yōu)化設(shè)計(jì)(同時(shí)支持觸摸屏)。作為一款已加載了WinCE工控主板,EM9000嵌入式主板可以支持客戶在其上采用通用的微軟開發(fā)工具,如eVC、VS2005,直接進(jìn)行應(yīng)用程序的開發(fā),從而以更快的速度把產(chǎn)品推向市場(chǎng)。另一方面,EM9000嵌入式主板的所有通訊接口均配置了標(biāo)準(zhǔn)的WinCE驅(qū)動(dòng)程序,客戶在應(yīng)用程序開發(fā)中并不需要了解EM9000嵌入式主板內(nèi)部的詳細(xì)技術(shù)情況,而直接調(diào)用WinCE的標(biāo)準(zhǔn)API函數(shù),就可高效快速的操作EM9000的各個(gè)通訊接口,有效降低了客戶進(jìn)行嵌入式系統(tǒng)產(chǎn)品開發(fā)的門檻和風(fēng)險(xiǎn)。同時(shí),EM9000作為一款EP9315開發(fā)板,內(nèi)置了協(xié)處理器,可以進(jìn)行復(fù)雜的浮點(diǎn)運(yùn)算,可以運(yùn)用在需要進(jìn)行高速?gòu)?fù)雜運(yùn)算的特殊場(chǎng)合。

     

            攝像頭(CAMERA)又稱為電腦相機(jī)、電腦眼等,它作為一種視頻輸入設(shè)備,被廣泛的運(yùn)用于個(gè)人電腦視頻和實(shí)時(shí)監(jiān)控等方面。然而,作為嵌入式的WinCE操作系統(tǒng)卻因?yàn)槿鄙贁z像頭的驅(qū)動(dòng)而不能采用這種視頻采集方案。為了更好的服務(wù)英創(chuàng)的客戶,經(jīng)過公司團(tuán)隊(duì)的努力,解決了這個(gè)難題,可以為貴公司提供低成本的攝像頭解決方案。

     

            我們?yōu)閿z像頭訂制了專門的API函數(shù),提供了使用例程。你可以參照英創(chuàng)提供的例程,迅速編寫出適合自己領(lǐng)域的產(chǎn)品。

     

            如果有需求,可以來(lái)電垂詢,我們將根據(jù)你的需求,提供最佳的解決方案。

     

            表中列出了攝像頭的主要API函數(shù)。根據(jù)這些API函數(shù)就可以很方便的完成視頻采集程序設(shè)計(jì)。下面列出了主要的API函數(shù)和參數(shù)說明。

     

            // Name : capInitCamera

            // Initialize driver and get current available cameras number.

            // Return : The number, of the available cameras, indicates success.

            int capInitCamera(void);

     

            // Name : capGetCurrentVersion

            // Get the current driver version information.

            // Return : The length, in characters, of the copied string,

            // not including the terminating null character, indicates success.

            int capGetCurrentVersion(

                    int index, // [IN] Camera index, 0 - first

                    insigned char *pBufOut, // [OUT] Long pointer to the buffer that will receive the text

                    int lenOut, // [IN] Specifies the maximum number of characters to copy to the buffer, including the NULL character.

                    // If the text exceeds this limit, it is truncated.

            );

     

            // Name : capGetVideoFormat

            // Get the current video format.

            // Return : Zero indicates success.

            int capGetVideoFormat(

                    int index, // [IN] Camera index

                    int *pFormat, // [OUT] Long pointer to the buffer that will receive the video format, VIDEO_PALETTE_RGB565 - VIDEO_PALETTE_JPEG

                    int *pSizeMode, // [OUT] Long pointer to the buffer that will receive the size mode, VIDEO_SIZE_VGA - VIDEO_SIZE_SIF

            );

     

            // Name : capSetVideoFormat

            // Set video format.

            // Return : Zero indicates success.

            int capSetVideoFormat(

                    int index, // [IN] Camera index

                    int format, // [IN] Video format, VIDEO_PALETTE_RGB565 - VIDEO_PALETTE_JPEG

                    int sizeMode, // [IN] Size mode, VIDEO_SIZE_VGA - VIDEO_SIZE_SIF

            );

     

            // Name : capGrabFrame

            // Grab a frame from driver.

            // Return : The length, in bytes, of the copied video frame data, indicates success.

            int capGrabFrame(

                    int index, // [IN] Camera index

                    unsigned char *pFrameBuf, // [OUT] Long pointer to the buffer that will receive the video frame

                    unsigned int bufferLen, // [IN] Specifies the maximum number of bytes to copy to the buffer

            );

     

            // Name : capGetLastJpeg

            // Get a last JPEG frame from driver.

            // Return : The length, in bytes, of the copied JPEG frame data, indicates success.

            int capGetLastJpeg(

                    int index, // [IN] Camera index

                    unsigned char *pFrameBuf, // [OUT] Long pointer to the buffer that will receive the video frame

                    unsigned int bufferLen, // [IN] Specifies the maximum number of bytes to copy to the buffer

            );

     

            // Name : capStartCamera

            // Start camera to capture video.

            // Return : Zero indicates success.

            int capStartCamera(

                    int index, // [IN] Camera index

            );

     

            // Name : capStopCamera

            // Stop camera to capture video.

            // Return : Zero indicates success.

            int capStopCamera(

                    int index, // [IN] Camera index

            );

     

            // Name : capCloseCamera

            // Close all available camera.

            // Return : Void.

            void capCloseCamera(void);

     

            // Name : capGetPciture

            // Get a last bitmap and jpeg from driver

            // Return : Zero indicates success.

            int capGetPicture(

                    int index, // [IN] Camera index

                    unsigned char *pFrameBuf, // [OUT] Long pointer to the buffer that will receive the video frame

                    unsigned int bufferLen, // [IN] Size, in bytes, of the buffer pointed to by pFrameBuf

                    unsigned char *pJpgBuf, // [OUT] Long pointer to the buffer that will receive the jpeg picture

                    unsigned int jpgLen, // [IN] Size, in bytes, of the buffer pointed to by pJpgBuf

                    PDWORD pdwActualOut, // [OUT] Pointer to an array of the return lengths

            );

    蜜桃精品免费久久久久影院| 精品视频在线免费观看| 亚洲午夜精品在线| 中文精品久久久久人妻| 国内精品一区二区三区最新| 91精品国产一区| 亚洲精品无码久久久影院相关影片| 成人精品视频一区二区| 91探花国产综合在线精品| 亚洲中文字幕久久精品无码APP | 久久夜色撩人精品国产av | 亚洲精品乱码久久久久蜜桃| 久久国产乱子免费精品| 久久精品这里只有精99品| 国产日韩精品一区二区在线观看| 99精品国产一区二区三区2021| 久久99精品一久久久久久| 综合国产精品第一页| vvvv99日韩精品亚洲| 狠狠入ady亚洲精品| 亚洲精品无码av片| 久久夜色精品国产噜噜亚洲a| 色国产精品一区在线观看| 久久se精品一区精品二区| 久久精品国产99国产精品| 国产成人精品一区在线| 国产精品第100页| 久久久无码精品午夜| www.999精品视频观看免费| 精品国产VA久久久久久久冰 | 人妻AV一区二区三区精品 | 精品国产高清久久久久久小说 | 久久久久四虎国产精品| 三上悠亚日韩精品| 久久精品国产精品亜洲毛片| 亚洲午夜成人精品电影在线观看| 国产精品伦子一区二区三区| 日韩成人精品日本亚洲| 国产精品亚洲二区在线| 国产精品久久久久久福利| 四虎永久在线精品免费影视 |