OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2338|回复: 5

STM32驱动OV7670,初始化不成功

[复制链接]

1

主题

8

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2019-1-29
在线时间
5 小时
发表于 2019-1-29 14:26:46 | 显示全部楼层 |阅读模式
1金钱
大佬们来帮忙解决也行,用例程跑程序,初始化ov7670失败
unsigned char wrOV7670Reg(unsigned char regID, unsigned char regDat) {
    startSCCB();
    if (0 == SCCBwriteByte(0x42)) {
        stopSCCB();
        return (0);
    }
    delay_us(100);
    if (0 == SCCBwriteByte(regID)) {
        stopSCCB();
        return (0);
    }
    delay_us(100);
    if (0 == SCCBwriteByte(regDat)) {
        stopSCCB();
        return (0);
    }
    stopSCCB();

    return (1);
}

再红色字的地方就跳出了返回0了

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2019-1-29
在线时间
5 小时
 楼主| 发表于 2019-1-29 14:29:02 | 显示全部楼层
我是用STM32F030C8T6做主控芯片的
这里是端口配置
/*
-----------------------------------------------
   功能: 初始化模拟SCCB接口
   参数: 无
返回值: 无
-----------------------------------------------
*/
void SCCB_GPIO_Config(void) {
    GPIO_InitTypeDef GPIO_InitStructure;
    /* Enable GPIOA  clock */
    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);
    GPIO_InitStructure.GPIO_Pin = SCCB_SIC_BIT | SCCB_SID_BIT;   
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;         
    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;         
    GPIO_Init(GPIOB, &GPIO_InitStructure);                  
}

void SCCB_SID_GPIO_OUTPUT(void) {
    GPIO_InitTypeDef GPIO_InitStructure;
    /* Enable GPIOA  clock */
    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);
    GPIO_InitStructure.GPIO_Pin = SCCB_SID_BIT;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOB, &GPIO_InitStructure);
}

void SCCB_SID_GPIO_INPUT(void) {
    GPIO_InitTypeDef GPIO_InitStructure;
    /* Enable GPIOA  clock */
    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);
    GPIO_InitStructure.GPIO_Pin = SCCB_SID_BIT;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;
    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
//     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOB, &GPIO_InitStructure);
}
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2019-1-29
在线时间
5 小时
 楼主| 发表于 2019-1-29 14:29:48 | 显示全部楼层
#define SCCB_SIC_BIT     GPIO_Pin_6    //端口第7位
#define SCCB_SID_BIT     GPIO_Pin_7     //端口第8位

#define SCCB_SIC_H()     GPIOB->BSRR = SCCB_SIC_BIT;  //对端口A特定位的设置        ,这里设置高
#define SCCB_SIC_L()     GPIOB->BRR =  SCCB_SIC_BIT;  //这里设置低

#define SCCB_SID_H()     GPIOB->BSRR = SCCB_SID_BIT;  //同上
#define SCCB_SID_L()     GPIOB->BRR =  SCCB_SID_BIT;
/**/
#define SCCB_SID_IN      SCCB_SID_GPIO_INPUT();
#define SCCB_SID_OUT     SCCB_SID_GPIO_OUTPUT();


#define SCCB_SID_STATE     GPIOB->IDR&0x40
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2019-1-29
在线时间
5 小时
 楼主| 发表于 2019-1-29 14:31:48 | 显示全部楼层
这个是逻辑分析仪,得出的时序
QQ截图20190129143047.png
回复

使用道具 举报

头像被屏蔽

18

主题

184

帖子

0

精华

禁止发言

积分
258
金钱
258
注册时间
2019-1-10
在线时间
10 小时
发表于 2019-1-29 14:59:03 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2019-1-29
在线时间
5 小时
 楼主| 发表于 2019-1-29 15:58:17 | 显示全部楼层
顶一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-23 13:12

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表