新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于3G網絡的汽車防盜報警系統設計方案

        基于3G網絡的汽車防盜報警系統設計方案

        作者: 時間:2012-09-07 來源:網絡 收藏

        流接口驅動程序的主要任務是把外設的使用傳遞給應用程序,這是通過把設備表示為文件系統的一個特殊文件實現。應用程序通過文件系統的API函數調用流接口函數,然后流接口驅動程序調用本機驅動或者通過設備管理器與系統內核或外圍打交道。

        2.1 攝像頭驅動程序的流接口函數的實現

        開發攝像頭驅動程序涉及到一組標準的流接口驅動程序的函數,如CAM_Init()、CAM_Deinit()、CAM_Open()、CAM_Read()等,這些函數是接口驅動程序的DLL接口,其中CAM_Init()、CAM_Open()、CAM_Read()和CAM_IOControl()最為重要。下面對這些重要函數進行詳細介紹。

        (1)CAM_Init()

        CAM_Init()函數是通過設備管理器提供的ActiveDeviceEx()函數調用。在設備初始化時通過ActiveDeviceEx()將設備句柄信息寫入DriversActive下面,當應用程序初始化時,注冊表的地址將以Context參數形式傳給CAM_Init(),利用RegOpenKeyEx()、RegQueryValueEx()等函數執行打開和讀寫注冊表操作,等執行成功后返回USB設備的句柄信息等。驅動程序的部分源代碼:

        (2)CAM_Open()

        在對設備進行讀操作之前,首先要先通過執行CeratFile()來調用CAM_Open()打開設備,CAM_Open()所需的第一個參數是應用程序初始化時由CAM_Init()返回的設備句柄等信息,然后將設備關閉的事件設為無信號狀態。

        下面是部分源碼:

        111.jpg

        部分源碼

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 泸西县| 麻江县| 盐池县| 莱芜市| 凤台县| 临邑县| 陕西省| 突泉县| 中西区| 广东省| 麻栗坡县| 盘山县| 湖北省| 南岸区| 潞西市| 壤塘县| 义马市| 九台市| 亳州市| 平乡县| 定结县| 罗定市| 运城市| 石泉县| 灌云县| 拜城县| 武宁县| 宜川县| 台安县| 延川县| 新乡县| 顺义区| 长岛县| 民勤县| 应用必备| 信阳市| 监利县| 舞钢市| 天全县| 洪雅县| 广州市|