用例程的CAMERA 程序 我最初是想将照片先存到外部SRAM,然后经过处理再送LCD显示,
在OV_9655init函数里将
DMA_InitStructure.DMA_Memory0BaseAddr = FSMC_LCD1_ADDRESS;这句改成了
DMA_InitStructure.DMA_Memory0BaseAddr = Bank1_SRAM3_ADDR;//0x68000000
再在主函数里加上SRAM初始化
SRAM_Init();
最后添加DCMI中断程序 在程序里面将相机数据送LCD显示
//显示照片 320*240转240*320 [COL , ROW ]=[320-ROW, COL]
for(row=0;row
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
DMA_InitStructure.DMA_Memory0BaseAddr = Bank1_SRAM3_ADDR;//0x68000000
是从0x68000000开始的, 我是从0x68000000+320*240*5之后定义的DATABUFF, 这之间隔了320*240*5个字节了,应该不会不够吧。而且 如果不够的话 图片也应该是连续的分布在DATABUFF ,怎么会中间一段DATABUFF没有数据
有可能和数据对其有关,另外buf的大小是320*240,是不是只分配了一半,图片如果是16位的,应该是320*240*2
#define DATABUFF0 Bank1_SRAM3_ADDR+320*240*5 //
开始地址离Bank1_SRAM3_ADDR都有320*240*5个字节了 ,够图片缓存了
而且如果按你的说法,我在DATABUFF7也有照片数据
#define DATABUFF7 Bank1_SRAM3_ADDR+320*240*12
这都离照片存储的起始地址有320*240*12个字节了 那这图片得多大
再说了,就算它有这么大,那图像数据也应该是连续的啊!也就是说应该在
BUFF0到BUFF7都有图像数据 而我的BUFF4 5 6三个地方是没有数据的 版主赶紧发挥一下您的高智商,教教我怎么办
这万一在很远很远的地方也有图像数据 那我就惨啦
一周热门 更多>