亿加合和智能车制作

标题: 摄像头的I2C配置不成功程序卡主进不了主循环??? [打印本页]

作者: SZT    时间: 2015-4-11 22:36
标题: 摄像头的I2C配置不成功程序卡主进不了主循环???
在蓝宙电子科技买了捕食者摄像头,按照给的资料与K60接好引脚将例程下载进去后发现程序一直卡在I2C的配置那里,一直配置不成功所以没进主循环。之前问过有人说带金边的摄像头已经不用I2C配置了,有新的资料?不过我去蓝宙官方下载还是一样的。有哪位大侠能指出错误在哪里,还是真的有新的资料??有的话不妨给个链接(下面是程序卡住的位置和我买的摄像头)
[attach]76071[/attach][attach]76072[/attach]

作者: 、痕迹    时间: 2015-4-11 22:51
我记得昨天看过一个同样的帖子..有人说新版的这个摄像头不需要配置iic了
作者: SZT    时间: 2015-4-11 23:03
、痕迹 发表于 2015-4-11 22:51
我记得昨天看过一个同样的帖子..有人说新版的这个摄像头不需要配置iic了

你用的是不是这个摄像头?

作者: zhou1994    时间: 2015-4-11 23:07
我头几天用了这个摄像头。的确不用配置就可以用。
作者: SZT    时间: 2015-4-11 23:09
zhou1994 发表于 2015-4-11 23:07
我头几天用了这个摄像头。的确不用配置就可以用。

我把这一段I2C配置程序屏蔽掉后串口还是没有输出读到的AD值。兄台可否发个程序给我?QQ:1248300875@qq.com
我用的是鹰眼[attach]76076[/attach]

作者: zhou1994    时间: 2015-4-11 23:17
SZT 发表于 2015-4-11 23:09
我把这一段I2C配置程序屏蔽掉后串口还是没有输出读到的AD值。兄台可否发个程序给我?QQ:
我用的是鹰眼
...

工程文件太大了。我网速慢。不过只要你的中断没问题。io对了,就应该有数据了。

作者: SZT    时间: 2015-4-11 23:31
zhou1994 发表于 2015-4-11 23:17
工程文件太大了。我网速慢。不过只要你的中断没问题。io对了,就应该有数据了。

我把I2C屏蔽后程序,程序在while里面但是检测不到场采集标志位DMA_Over_Flg =1,所以一直没进去数据发送数据,正在找什么原因[attach]76077[/attach]网速不会这么坑吧,压缩文件后发个邮件都不行??

作者: SZT    时间: 2015-4-11 23:44
zhou1994 发表于 2015-4-11 23:17
工程文件太大了。我网速慢。不过只要你的中断没问题。io对了,就应该有数据了。

不用了,应该是杜邦线的问题,解决了

作者: zhou1994    时间: 2015-4-11 23:45
SZT 发表于 2015-4-11 23:31
我把I2C屏蔽后程序,程序在while里面但是检测不到场采集标志位DMA_Over_Flg =1,所以一直没进去数据发送数 ...

也不全是工程文件大的问题了。是因为我的底层是自己写的,现在还不好发出来了void PORTD_IRQHandler(){  if(PORTD_ISFR & 0x2000)            //PTD13触发中断,采集的行中断
    {  
        PORTD_ISFR  |= 0x2000;         //写1清中断标志位
       if(Sample_Flag==0) return;

        if((LinCout%(480/DATALINE)==0)&&(LinADCout<=DATALINE))//DATALINE   100 //采样行数
        {                                                                                         //DATACOUNT   140 采样点数
          DMA_PORTx2BUFF_Init (DMA_CH4, (void *)&PTE_BYTE0_IN, ADdata[LinADCout], PTD12, DMA_BYTE1, DATACOUNT, DMA_rising_keepon);
          DMA_EN(DMA_CH4);                                    //使能通道CHn 硬件请求      (这样才能继续触发DMA传输)
          DMA_IRQ_EN(DMA_CH4) ;                             //允许DMA通道传输
          LinADCout ++ ;
        }
        LinCout++;

         if(LinADCout==DATALINE)
         {
           LinADCout=0;
           DMA_DIS(DMA_CH4);
           DisableInterrupts;
           DMA_Over_Flg = 1 ;
         }
    }

    if(PORTD_ISFR & 0x4000)         //PTD14触发中断,采集的场中断。
    {  ;
        PORTD_ISFR  |= 0x4000;       //写1清中断标志位
        LinCout = 0 ;
        LinADCout=0;
        Sample_Flag=1;   
    }
}照着这个引脚配置好中断,我的就行



作者: SZT    时间: 2015-4-12 20:49
zhou1994 发表于 2015-4-11 23:45
也不全是工程文件大的问题了。是因为我的底层是自己写的,现在还不好发出来了void PORTD_IRQHandler(){   ...

嗯嗯,好的,谢谢





欢迎光临 亿加合和智能车制作 (http://www.znczz.com/) Powered by Discuz! X3.2