因为想要做一个跟随的项目,需要将实时图片以每秒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上,发现,如果摄像头面前有东西在动,图像就会花(出现了断层,就像是照相的时候手抖就会花)
这个要怎么解决。
、
还有呢,就是我觉得这种用单片机传,速度慢并且分辨率还不高,大家有没有比较好的方式作图传。航拍是怎么传的。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
首先,你必须要用带FIFO的摄像头,串口的打印速度很慢,跟不上摄像头的速度,利用FIFO就能解决这个问题,我建议你把这个程序拿过来看看,就是论坛里有一个24l01做图传的程序。然后的话,他的做法是在帧中断来的时候写入FIFO,然后下一个帧中断来的时候禁止写。你用一个数组不断地去接收,分多次用串口跟着打印。
一周热门 更多>