新手上路
- 积分
- 29
- 金钱
- 29
- 注册时间
- 2020-4-3
- 在线时间
- 9 小时
|
1金钱
工程参照原子战舰版f103ov2640例程 代码如下void ov2640_jpg_photo(void)
{
u32 i=0;
u32 jpeglen=0;
u8 *pbuf;
u32 j=0;
for(i=0;i<10;i++) //丢弃10帧,等待OV2640自动调节好(曝光白平衡之类的)
{
while(OV2640_VSYNC==1);
while(OV2640_VSYNC==0);
}
while(OV2640_VSYNC==1) //开始采集jpeg数据
{
// printf("帧开始\r\n");
while(OV2640_HREF)
{
while(OV2640_PCLK==0);
// printf("pcld==0\r\n");
//i=OV2640_DATA;
ov2640_framebuf[jpeglen]=OV2640_DATA;
printf("%0X ",OV2640_DATA);
// printf("出口\r\n");
while(OV2640_PCLK==1);
jpeglen++;
// printf("0\r\n");
}
}
// if(jpeglen!=0)
// { printf("jpeg data size:%d\r\n",jpeglen); //串口打印JPEG文件大小
// pbuf=(u8*)ov2640_framebuf;
// for(i=0;i<jpeglen;i++)//查找0XFF,0XD8
// {
// if((pbuf[i]==0XFF)&&(pbuf[i+1]==0XD8))break;
// }
// if(i==jpeglen)
// {
// printf("没有找到0xFF,0xD8\r\n");
// }
// else //找到了
// {
// pbuf+=i;//偏移到0XFF,0XD8处
// for(j=0;j<jpeglen-i;j++)
// {
// printf("0x%02X,",*(pbuf+j));
// }
// }
// }
}
由于找不到帧头程序一直卡在没有找到0xFF,0xD8里,我注释掉 显示所有数据 感觉接收到的数据很奇怪
|
|