WINCE5.0+2443 camera中断不能进来的缘由

2022年01月13日 阅读数:7
这篇文章主要向大家介绍WINCE5.0+2443 camera中断不能进来的缘由,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。


由于项目须要,我须要调试和完成WINCE5.0+2443系统和驱动的功能,在调试camera驱动的时候,发现一个很郁闷的问题,就是camera的中断一直进不来,由于我以前在WINCE6.0+2443系统中已实现了camera中断了,而WINCE5.0和WINCE6.0下的camra驱动架构基本同样,但是为何camera中断一直会进不来呢?分析以下:架构

1.       中断ISR对camera中断设置不正确。ide

在OEMInterruptHandler()函数中加入调试信息,只是定时获取到IRQ_TIMER4,说明camera中断真的是没有进来,但为何呢?我把须要设置camera中断的设置都安装6.0下的同样设置了,可为何camera中断仍是进不来呢?针对这种可能性目前找不到缘由,就分析下面的缘由吧函数

2.       Camera控制器没有配置好。调试

但是我基本上是把6.0下的camera驱动所有搬过来的,可是6.0下面的camera驱动是ok了,因此只能接着分析下面的缘由了。开发

3.       Camera sensor IC TVP5150没有正常power on博客

其实刚开始最不怀疑是这个缘由引发的,但找不到解决问题的办法,因此就又回来分析这个缘由。为何不相信是供电引发camera中断进不来呢?由于device.exe加载camera驱动的时候,我在camera的初始函数中对TVP5150进行写和读寄存器,写进去和读出来的寄存器的值是彻底同样的,说明在初始化的时候对TVP5150进行供电(是经过GPL8对TVP5150供电)的,但后来想一想,会不会是其余驱动改变了GPL8的配置和电平的状态呢?由于WINCE5.0+2443的bsp包是从一个开发板拿过来用的,以前驱动的动做和GPIO口的分配和配置我还不是很清楚,因此就在整个BSP包经过source insight软件来查看是否是其余驱动改变了GPL8的配置,真的发现是一个在camera驱动加载以后才加载的驱动把GPL8由输出为高电平改成输入了,因此就把这部分如今这个驱动用不到的这部分代码注释掉,从新update系统,camera中断就进来了。it


之因此写下这篇博客,是由于本身之后还会可能遇到相似这样的问题,以此来加深本身的影响,避免犯一样的错误。class


 ​