转载自:http://jazka.blog.51cto.com/809003/719130

本文分析从应用程序启动到开始预览整个过程中,驱动代码的执行流程。开发环境是WinCE6.0+Android6410开发板。
一、驱动的加载,参考博文http://jazka.blog.51cto.com/809003/707027。
二、通过CAM_IOControl接口操作各种属性,下面的步骤中也会不断调用该接口,此处不细谈。
三、打开各个Pin接口并进行流实例化。
调用PIN_Open打开对应的Pin接口,主要有Preview、Still、Capture三种接口,每次打开之后调用PIN_IOControl中的IOCTL_STREAM_INSTANTIATE完成流实例化。具体执行的函数是CPinDevice :: StreamInstantiate。
四、设置各个Pin的视频流格式。

五、初始化Sensor状态,包括Camera时钟、GPIO、复位等设置,之后设置Capture的状态为PAUSE。

六、管理Pin的Buffer,由用户层分配

七、跟第五步执行流程类似,只是设置的PAUSE状态是Still和Preview。
八、同样跟第五步类似,不同的是设置Preview为RUN的状态,从SetSensorState开始执行的内容就不一样了。

九、添加Buffer到驱动的队列中

十、响应中断,开始处理接收到的图像数据(以Preview为例)

转载于:https://www.cnblogs.com/hao507/articles/2816365.html

【转载】WinCE6.0 Camera驱动源码分析(二)相关推荐

  1. java jdbc(mysql)驱动源码分析_JAVA JDBC(MySQL)驱动源码分析(二)

    本文系转载,地址:http://blog.csdn.net/brilliancezhou/article/details/5425687 上一篇中分析了Class.forName("com. ...

  2. Apollo 2.0 框架及源码分析(一) | 软硬件框架

    原文地址:https://zhuanlan.zhihu.com/p/33059132 前言 如引言中介绍的,这篇软硬件框架多为现有消息的整合加一些个人的想法.关于 Apollo 介绍的文章已经有许多, ...

  3. (转)Linux设备驱动之HID驱动 源码分析

    //Linux设备驱动之HID驱动 源码分析 http://blog.chinaunix.net/uid-20543183-id-1930836.html HID是Human Interface De ...

  4. 【Camera专题】Camera驱动源码全解析_下

    系列文章 1.手把手撸一份驱动 到 点亮 Camera 2.Camera dtsi 完全解析 3.Camera驱动源码全解析上 4.Camera驱动源码全解析下 上篇文章分析了C文件函数的实现,本文继 ...

  5. 《MySQL 8.0.22执行器源码分析(3.2)关于HashJoinIterator》

    在本文章之前,应该了解的概念: 连接的一些概念.NLJ.BNL.HashJoin算法. 目录 关于join连接 probe行保存概念 Hashjoin执行流程(十分重要) HashJoinIterat ...

  6. LCD驱动源码分析(s3cfb.c)

    1.驱动源码分析大致思路 (1)分析LCD驱动首先需要分析内核的帧缓冲子系统,因为LCD驱动就是按照帧缓冲子系统提供的注册接口来注册的: (2)内核帧缓冲子系统参考博客:<Linux 帧缓冲子系 ...

  7. 通用USB设备驱动源码分析

    通用USB设备驱动源码分析 Author:aaron 前段时间写了篇<qualcomm usb modem驱动小结>的文章, 描述了自己如何为高通的一个usb modem设备写驱动的过程, ...

  8. linux网卡驱动源码分析(一)

    linux网卡驱动源码分析(一) linux struct linux内核 网络 descriptor resources 转自http://blog.csdn.net/ustc_dylan/arti ...

  9. linux打印源码,Linux打印机驱动源码分析.pdf

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp计算机&nbsp>&nbsplinux/Unix相关 Linux打印机驱动源码分析.pdf1 ...

最新文章

  1. HDU - 3974 Assign the task (DFS建树+区间覆盖+单点查询)
  2. [CommunityServer]看RBAC的一方景象
  3. 【算法】剑指 Offer 12. 矩阵中的路径
  4. vue怎么实现右键二级菜单_vue中如何自定义右键菜单详解
  5. 沾化区php学校,推进校地合作 助力产教融合:滨州市技术学院与沾化经济开发区举行签约仪式...
  6. java什么是自动类型转换_java自动类型转换
  7. hp proliant dl380从U盘启动按哪个键
  8. 关闭或者开启Windows defender防火墙
  9. matlab kmeans 质心,KMeans_SPD_Matrices
  10. 机器学习笔记(四)聚类
  11. VS 利用Picture Control的Bitmap属性显示一张图片
  12. python椭圆曲线加密算法_ECC椭圆曲线加密学习笔记
  13. sql语句使数据指数增长
  14. 关于微信的APP支付、公众号(服务号)支付,商户问题
  15. JAVA房产中介预约看房系统毕业设计 开题报告
  16. STP 问题处理方法
  17. W3150A+评估板--EVB-PIC24用户手册(四)硬件设计指南
  18. 聚划算成清仓专用 问题产品充斥
  19. polystyrene beads Profiling的一些设置
  20. linux 无法安全移除u盘,U盘无法安全移除?5招轻松搞定

热门文章

  1. 华为笔试题-磁盘容量排序
  2. Ubuntu server中静态IP配置
  3. 分布式锁实现原理与最佳实践
  4. mysql分组随机取数据_MySql分组后随机获取每组一条数据的操作
  5. 第一个Netty应用
  6. 关于webservlet 请求异步处理,链接未关闭出现的bug
  7. 北京金融局、通州区政府与蚂蚁金服战略合作 共防系统性金融风
  8. 初识数据中心Mesos
  9. 利用python自动清除Android工程中的多余资源
  10. Bootstrap3.0学习第二十六轮(JavaScript插件——图片轮播)