(急求解答)摄像头 ov2640与sdio冲突 SDIO无法初始化

2019-07-20 21:45发布

大家好,我直接阐述一下问题!1,单独SDIO初始化没有问题,TF卡可以进行正常的工作,
2,单独对摄像头进行初始化没有问题,摄像头可以进行正常工作
3,先对摄像头进行初始化,然后再对SDIO进行初始化,再SDIO初始化的时候就会出现错误,无法完成初始化
4,先对SDIO进行初始化,然后再对OV2640进行初始化,摄像头可以正常工作,但是再对SDIO进行操作时候会死机。

其中第3对摄像头的初始化 我只是用I2C对摄像头进行寄存器的配置,还没有涉及管脚复用的那一块(我复用了SDIO_D0(DCNI_D2)   SDIO_D1(DCNI_D2)  ),这样SDIO都会初始化错误。请问大家是什么原因!急求答案,谢谢



u8 OV2640_Init(void)
{
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
蒙子
1楼-- · 2019-07-22 01:31
 精彩回答 2  元偷偷看……
lvehe
2楼-- · 2019-07-22 04:52
你这样当然没有效果。具体方法见原子的例程,问之前还是多翻翻资料,仔细看原子的教程
蒙子
3楼-- · 2019-07-22 08:31
lvehe 发表于 2016-5-30 21:56
你这样当然没有效果。具体方法见原子的例程,问之前还是多翻翻资料,仔细看原子的教程

//void sw_ov2640_mode(void)
//{
//        OV2640_PWDN=0;//OV2640 Power Up
//        //GPIOC6/8/9/11切换为 DCMI接口
//        GPIO_PinAFConfig(GPIOC,GPIO_PinSource6,GPIO_AF_DCMI);  //PC8,AF13  DCMI_D2
//        GPIO_PinAFConfig(GPIOC,GPIO_PinSource8,GPIO_AF_DCMI);  //PC8,AF13  DCMI_D2
//        GPIO_PinAFConfig(GPIOC,GPIO_PinSource9,GPIO_AF_DCMI);  //PC9,AF13  DCMI_D3
//        GPIO_PinAFConfig(GPIOC,GPIO_PinSource11,GPIO_AF_DCMI); //PC11,AF13 DCMI_D4
//}
////切换为SD卡模式
//void sw_sdcard_mode(void)
//{
//        OV2640_PWDN=1;//OV2640 Power Down
//        //GPIOC6/8/9/11切换为 SDIO接口
//                GPIO_PinAFConfig(GPIOC,GPIO_PinSource6,GPIO_AF5_SPI3);  
//        GPIO_PinAFConfig(GPIOC,GPIO_PinSource8,GPIO_AF_SDIO);  //PC8,AF12
//        GPIO_PinAFConfig(GPIOC,GPIO_PinSource9,GPIO_AF_SDIO);//PC9,AF12
//        GPIO_PinAFConfig(GPIOC,GPIO_PinSource11,GPIO_AF_SDIO);
//}
我参考了原子的例子,我这样理解的,每次使用摄像头之前 sw_ov2640_mode()就切换为DCMI模式,使用完之后DCMI_STOP()+_sdcard_mode切换回SDIO模式!这样理解对不对?
zhangyuman
4楼-- · 2019-07-22 10:20
你是用的原子的摄像头吗? 我也遇到了这个问题 同样的程序 用原子的摄像头模块就可以  用其他的SD卡就初始化不了
czdspeed
5楼-- · 2019-07-22 14:47
楼主,如果分时复用不行的话,你要不直接把摄像头的几个引脚映射到PE0~PE3.我看了开发板这几个引脚就是和按键有点冲突,不过对你的项目影响应该不大。我之前做开发用了两个iis引脚和jtag有冲突,也是重新映射解决问题的。
czdspeed
6楼-- · 2019-07-22 14:51
 精彩回答 2  元偷偷看……

一周热门 更多>