新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于ARM處理器S3C2440的無線監(jiān)控系統(tǒng)設(shè)計

基于ARM處理器S3C2440的無線監(jiān)控系統(tǒng)設(shè)計

作者: 時間:2015-04-11 來源:網(wǎng)絡(luò) 收藏

  (2)創(chuàng)建項目。根據(jù)WinCE無線監(jiān)控系統(tǒng)的要求,在定制系統(tǒng)的過程中選擇合適的組件來實現(xiàn)。其中包括的組件有:支持應(yīng)用程序開發(fā)的MFC組件和支持網(wǎng)絡(luò)的相關(guān)組件等。

本文引用地址:http://m.butianyuan.cn/article/272369.htm

  (3)編譯項目:點擊菜單“Build OS”→“Sysgen”開始編譯項目。

  (4)下載運行時映像,調(diào)試成功后啟動。編譯成功后會在目WinCES00PBWorkspacestestlRelDirsmdk2 440_V4I_Release下生成nk.bin和nk.nb0等文件,將nk.nb0下載到硬件平臺上運行。

  4 驅(qū)動程序的開發(fā)

  4.1 攝像頭驅(qū)動的開發(fā)

  攝像頭驅(qū)動開發(fā)是設(shè)計中的一個難點,也是一個關(guān)鍵部分。由于攝像頭采集的視頻數(shù)據(jù)可以當(dāng)作數(shù)據(jù)流來處理,所以對于攝像頭的驅(qū)動將采用流式接口的方法來開發(fā)。

  (1)在Platform Builder中打開前面定制的操作系統(tǒng)工程,然后在新建一個WIN32 DLL項目,添加2個C++的源文件,即:camera.cpp和IIc.cpp,其中camer—a.cpp包含驅(qū)動的入口函數(shù)DLLMain();驅(qū)動的前綴為“CIS”,IIc.cpp包含通過ICC接口對攝像頭相關(guān)寄存器進行配置的函數(shù)。

  (2)根據(jù)前面的硬件電路和OV9650芯片的工作時序,通過編寫流接口的CIS_Init函數(shù)實現(xiàn)OV9650初始化。主要包括以下3步:調(diào)用InterruptInitialize(SYSINTR_CAM,CameraEvent,NULL,0)函數(shù)通知系統(tǒng)注冊中斷;調(diào)用CreateEvent()函數(shù)創(chuàng)建一個CameraEvent事件;調(diào)用CreateThread()函數(shù)創(chuàng)建CameraThread線程。在Camera Capture Thread服務(wù)函數(shù)中調(diào)用WaitForSingleObject(CameraEvent,Dis—play Time)函數(shù)等待Camera Event事件的發(fā)生。此事件由與其關(guān)聯(lián)的SYSINTR_CAM中斷來觸發(fā)。此外還有其它流接口函數(shù)(CIS_IOControl等)也可以以類似的方法實現(xiàn)。

攝像頭相關(guān)文章:攝像頭原理

上一頁 1 2 3 下一頁

關(guān)鍵詞: ARM S3C2440

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉