STM32F767+ov5640

2019-07-20 12:52发布

在STM32F767+ov5640实验中,本人打算将DMA中的一行行数据暂存下来,对一幅图片进行图像处理后,整体发送回去。但是现在把程序改成这样,LCD上面显示的图像不正确了,请各位大神指导!!!

#define jpeg_line_size        2*1024       
u32 dcmi_line_buf[2][jpeg_line_size];       

void rgblcd_dcmi_rx_callback(void)
{  
        //u16 *pbuf;
        u32 i=0;
        u32 data[jpeg_line_size];
        if(DMA2_Stream1->CR&(1<<19))
        {
                //pbuf=(u16*)dcmi_line_buf[0];
                for(i=0;i<lcddev.width/2;i++)
                {
                        data[i]=dcmi_line_buf[0][i];
                }
        }else                                
        {
                //pbuf=(u16*)dcmi_line_buf[1];
                for(i=0;i<lcddev.width/2;i++)
                {
                        data[i]=dcmi_line_buf[1][i];
                }
        }
        //LTDC_Color_Fill(0,curline,lcddev.width-1,curline,pbuf);
        //if(curline<lcddev.height)curline++;
       
        LTDC_Color_Fill(0,curline,lcddev.width-1,curline,(u16 *)data);
        if(curline<lcddev.height)curline++;
}
注释部分是源程序代码

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。