小弟不想dma直接 DCMI------LCD, 偏要 DCMI---sxx----LCD,因为俺想把ss1用wifi发走。可是为什么DCMI---sxx----LCD是花屏呢。。。
根据例程改的。
u16 sxx[1024]
OV2640_RGB565_Mode();
My_DCMI_Init();
DCMI_DMA_Init((u32)&sxx,1,DMA_MemoryDataSize_HalfWord,DMA_MemoryInc_Enable);/// 设定从DCMI到 sxx, 从 摄像头实验来的
OV2640_OutSize_Set(lcddev.width,lcddev.height);
DCMI_CaptureCmd(ENABLE);
while(1)
{
MYDMA_Enable(DMA2_Stream1,128); /////使能一次传输.
while(1)
{
if(DMA_GetFlagStatus(DMA2_Stream1,DMA_FLAG_TCIF1)!=RESET)///////一次传输完成
{
for(i=255;i>=0;i--)//////考虑到先传输的在后面,后传输的在前面,同时 32 位 到 16位, 故从128增加到256
{
LCD->LCD_RAM=sxx[i];////////然后就花屏了
}
break;
}
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
把物理过程分解开,一步步查。
这应用比较复杂,高手也不可能快速完成。
一周热门 更多>