新手上路
- 积分
- 27
- 金钱
- 27
- 注册时间
- 2016-4-17
- 在线时间
- 2 小时
|

楼主 |
发表于 2016-4-17 21:51:46
|
显示全部楼层
附程序代码:
u8 ov2640_jpg_photo(u8 *pname)
{
FIL* f_jpg;
u8 res=0;
u32 bwr;
u16 i;
u8* pbuf;
u16* pfill = (u16*)jpeg_data_buf;
ov2640_mode=1;
sw_ov2640_mode(); //ÇD»»ÎaOV2640Ä£ê½
dcmi_rx_callback=jpeg_dcmi_rx_callback;//»Øμ÷oˉêy
DCMI_DMA_Init((u32)jpeg_buf0,(u32)jpeg_buf1,jpeg_dma_bufsize,DMA_MemoryDataSize_HalfWord,DMA_MemoryInc_Enable);//DCMI DMAÅäÖÃ(Ë«»o3åÄ£ê½)
OV2640_RGB565_Mode(); //ÇD»»ÎaJPEGÄ£ê½
OV2640_ImageWin_Set(0,0,1600,1200);
OV2640_OutSize_Set(480,360);//ÅÄÕÕ3ß′çÎa1600*1200
DCMI_Start(); //Æô¶ˉ′«êä
while(jpeg_data_ok!=1); //μè′yμúò»Ö¡í¼Æ¬2é¼ˉíê
jpeg_data_ok=2; //oöÂÔ±¾Ö¡í¼Æ¬,Æô¶ˉÏÂò»Ö¡2é¼ˉ
while(jpeg_data_ok!=1); //μè′yμú¶tÖ¡í¼Æ¬2é¼ˉíê
jpeg_data_ok=2; //oöÂÔ±¾Ö¡í¼Æ¬,Æô¶ˉÏÂò»Ö¡2é¼ˉ
while(jpeg_data_ok!=1); //μè′yμúèyÖ¡í¼Æ¬2é¼ˉíê,μúèyÖ¡,2ű£′æμ½SD¿¨è¥.
DCMI_Stop(); //í£Ö1DMA°áÔË
ov2640_mode=0;
LCD_Color_Fill(0, 0, 480-1, 360-1, pfill+16);
jpeg_data_len=0;
OV2640_RGB565_Mode(); //RGB565Ä£ê½
DCMI_DMA_Init((u32)&LCD->LCD_RAM,0,1,DMA_MemoryDataSize_HalfWord,DMA_MemoryInc_Disable);//DCMI DMAÅäÖÃ
return res;
}
void jpeg_dcmi_rx_callback(void)
{
u16 i;
u32 *pbuf;
pbuf=jpeg_data_buf+jpeg_data_len;//Æ«òÆμ½óDD§êy¾YÄ©Î2
if(DMA2_Stream1->CR&(1<<19))//buf0òÑÂú,Õy3£′|àíbuf1
{
for(i=0;i<jpeg_dma_bufsize;i++)pbuf[i]=jpeg_buf0[i];//¶áè¡buf0àïÃæμÄêy¾Y
jpeg_data_len+=jpeg_dma_bufsize;//Æ«òÆ
}else //buf1òÑÂú,Õy3£′|àíbuf0
{
for(i=0;i<jpeg_dma_bufsize;i++)pbuf[i]=jpeg_buf1[i];//¶áè¡buf1àïÃæμÄêy¾Y
jpeg_data_len+=jpeg_dma_bufsize;//Æ«òÆ
}
} |
|