STM32关于OV7670图传问题

2019-08-17 07:20发布

因为想要做一个跟随的项目,需要将实时图片以每秒1到2帧的速度无线传输到电脑上,我想的是用OV7670采集图像(分辨率320*240),但是遇到了些问题:
一、我想用sip_WIFI  于是先用W25q16模拟了一下spi的速度,然后发现,基本上我一帧图像需要几秒才能写入一帧,我想问一下是怎么回事,我把SPI分频设的2分频,照理说不应该这么慢,而且我为了避免w25q16反复擦除,我都是直接写一次,也就是写2k就换一页,按理说会快一点。但是结果还是很慢。
[mw_shl_code=c,true]void SPI_SENDPACK(void)
{
    u32 j;
    u32 i;

    if(ov_sta)//有帧中断更新?
    {
        OV7670_RRST=0;                                //开始复位读指针
        OV7670_RCK_L;
        OV7670_RCK_H;
        OV7670_RCK_L;
        OV7670_RRST=1;                                //复位读指针结束
        OV7670_RCK_H;
        for(j=0; j<75; j++)
        {
            for(i=0; i<2048; i++)//1k个像素点
            {
                OV7670_RCK_L;
                camera_pack=GPIOC->IDR&0XFF;        //读数据
                OV7670_RCK_H;
            }
             W25QXX_Write(camera_pack,FLASH_SIZE-100*4096+j*4096,SIZE);
        }
                ov_sta=0;
        ov_frame++;
    }
}[/mw_shl_code]




二、我在写入之后,在把它读出来,写到lcd上,发现,如果摄像头面前有东西在动,图像就会花(出现了断层,就像是照相的时候手抖就会花)

这个要怎么解决。


还有呢,就是我觉得这种用单片机传,速度慢并且分辨率还不高,大家有没有比较好的方式作图传。航拍是怎么传的。


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
cqutliuxin
2019-08-18 00:11
fkpeak 发表于 2017-4-5 09:59
楼主,我想要查看摄像头一帧图像数据的值,比如说通过串口打印,该怎么做?

首先,你必须要用带FIFO的摄像头,串口的打印速度很慢,跟不上摄像头的速度,利用FIFO就能解决这个问题,我建议你把这个程序拿过来看看,就是论坛里有一个24l01做图传的程序。然后的话,他的做法是在帧中断来的时候写入FIFO,然后下一个帧中断来的时候禁止写。你用一个数组不断地去接收,分多次用串口跟着打印。

一周热门 更多>