通过双缓存DMA传输将摄像头采集到的RGB565(480*500)数据存储在SRAM中,再将SRAM数据输出到LCD,显示黑屏??

2019-07-20 23:08发布

程序如上,第一张为设置DMA双缓存模式,外设到内存,内存0为&testsram,内存1为&testsram[120000]
     因为480*500=240000个半字,而DMA传输最多大小为65535,如果传输为字,那么也只是65535*4=262140字节=131070半字<240000;
     所以采用双缓存模式,一次60000次,字传输格式,即60000*4=240000,刚好满足需要
第二张为将SRAM数据传输到LCD程序

请问原子哥以及论坛中的朋友,程序哪里出错了????

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
惊为天人
1楼-- · 2019-07-21 00:19
将DMA双缓存库函数改为寄存器配置就好了。。。。。。。
惊为天人
2楼-- · 2019-07-21 05:23
不好意思,第二图有误,FSMC_SRAM_WriteBuffer;改为FSMC_SRAM_ReadBuffer; 问题依然存在。。。。
惊为天人
3楼-- · 2019-07-21 08:25
图像如图所示,只显示一半,而且显示的一半颜 {MOD}严重失真。。。。。。
惊为天人
4楼-- · 2019-07-21 10:33
 精彩回答 2  元偷偷看……
惊为天人
5楼-- · 2019-07-21 15:38
本帖最后由 惊为天人 于 2016-3-17 09:26 编辑

原子哥,我的怎么@正点原子 只显示一半。。。。。。。
luyongyun
6楼-- · 2019-07-21 19:17
请问楼主,你的SRAM是外部的吗?我也是DCMI到外部SRAM,然后帧中断用LCD_WriteRAM(*p++)一个个点写进LCD,但是却是花屏,什么都没有,我估计可能摄像头的数据根本没有DMA进SRAM

一周热门 更多>