新手入门
- 积分
- 27
- 金钱
- 27
- 注册时间
- 2013-5-6
- 在线时间
- 0 小时
|

楼主 |
发表于 2013-5-6 20:39:12
|
显示全部楼层
ov7670读数据
cinfo=jpeg_create_compress();//创建JPEG压缩文件
cinfo->image_width=320;
cinfo->image_height=240;
cinfo->output=0;//数据输出到NULL;
jpeg_set_default(cinfo);//设置默认参数
jpeg_start_compress(cinfo);//开始压缩,写压缩文件头信息
jj=0;
i=0;
while(cinfo->next_line<cinfo->image_height)
{
for(i=0;i<cinfo->image_width;i++)//读取一行
{
FIFO_RCLK=0;
FIFO_RCLK=1;
color = (FIO1PIN >> 8) & 0xFF00; //--- 先读高8位 ---
FIFO_RCLK=0;
FIFO_RCLK=1;
color |= ((FIO1PIN >> 16) & 0x00FF);//--- 再读低8位 ---
// Set_Cursor(240-cinfo->next_line,i);
// color=rd_dat();
cinfo->inbuf[jj++]=((color&0xf800)>>8);//(color&0x001f)*8;r
cinfo->inbuf[jj++]=((color>>5)&0x003f)*4;//((color&0x07e0)>>3); g
cinfo->inbuf[jj++]=((color&0x001f)<<3);//(color>>11)*8;b
}
cinfo->next_line++;
//当数据填满时压缩并输出数据(填满16行)
if(cinfo->next_line%cinfo->inbuf_height==0)
{
jj=0;
jint_process_rows(cinfo);//在这里压缩
memset((void*)(cinfo->inbuf),0,cinfo->inbuf_size);//清空输入缓冲区
}
}
jpeg_finish_compress(cinfo); |
|