STM32F767摄像头实验,OV5640

2019-07-20 12:46发布

STM32F767摄像头实验(使用的ov5640)中,源程序为:
void rgblcd_dcmi_rx_callback(void)
{  
        u16 *pbuf;
        if(DMA2_Stream1->CR&(1<<19))//DMAê1ó&#195;buf1,&#182;áè&#161;buf0
        {
                pbuf=(u16*)dcmi_line_buf[0];
        }else                                                 //DMAê1ó&#195;buf0,&#182;áè&#161;buf1
        {
                pbuf=(u16*)dcmi_line_buf[1];
        }        
        LTDC_Color_Fill(0,curline,lcddev.width-1,curline,pbuf);//DM2Dì&#238;3&#228;
        if(curline<lcddev.height)curline++;
}

自己添加了中间变量RGB565_data数组后,程序如下:
u16 RGB565_data[600]={0};  //这里的600为lcd宽度
void rgblcd_dcmi_rx_callback(void)
{  
        u16 *pbuf;
        u16 ii=0;
        if(DMA2_Stream1->CR&(1<<19))//DMAê1ó&#195;buf1,&#182;áè&#161;buf0
        {
                pbuf=(u16*)dcmi_line_buf[0];
        }else                                                 //DMAê1ó&#195;buf0,&#182;áè&#161;buf1
        {
                pbuf=(u16*)dcmi_line_buf[1];
        }        

        for(ii=0;ii<600;ii++)
                RGB565_data[ii]=*(pbuf+ii);
        LTDC_Color_Fill(0,curline,lcddev.width-1,curline,RGB565_data);

        if(curline<lcddev.height)
                curline++;
}

此时LCD上花屏了,不是摄像头捕获的视频,该程序只引入了u16 RGB565_data[600]数组,求各位解答,谢谢!!!

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