LPC1788 SDRAM数据冲突问题
在玩LPC1788单片机的坛友不知道有没有注意到,当TFT正常显示的情况下(前提是用SDRAM做显存),这时如果写入数据至SDRAM中如shuzu[]={1,2,3,4,5,6,7,8,9},SDRAM中保存的数据不一定会是这些数;当TFT显示关闭后再写入数据至SDRAM中,数据全部正确。所以我认为可能是SDRAM数据读写冲突了,TFT显示就是SDRAM不停的再读写数据,这时你再去写入的话,势必SDRAM数据冲突,这个问题具体有没有可解决的方法?望坛子里的大侠们出招(我目前的情况:我在SD卡里存了图片数据和字库,开机时要把数据全部写入至SDRAM中,已提高刷新速度,前提是写入数据时TFT要显示的。) 做乒乓缓存了吗 big_cat 发表于 2016-5-25 14:38
做乒乓缓存了吗
你好,你说的乒乓缓存是给我解释下吗,我不是很懂哎{:smile:} 片选没做好?还是互斥问题没做好? 在TFT正常显示的情况下,我从NAND FLASH读出数据至SDRAM和从SD卡读出数据至SDRAM现象一样,都会有个别数据不正确,如读出的是一幅图片数据,则图片会有很多杂点。当显示关闭的情况下再写入数据就全部正常的 TFT显示就是SDRAM不停的再读写数据
->TFT显示会写SDRAM吗? LO单片机VE 发表于 2016-5-25 14:49
你好,你说的乒乓缓存是给我解释下吗,我不是很懂哎
我也是以前看的一点,不一定正确。原理就是在SDRAM中开两块显示缓冲区,分别是1区和2区。工作时的过程是1区数据读取到LCD,用于刷新当前页面。此时CPU向2区写入下一次刷新的数据。当下一次数据刷新时,2区数据读取到LCD,CPU向1区写入新的数据。两个缓冲区交替更新数据和刷新LCD显示。 lusson 发表于 2016-5-25 15:11
TFT显示就是SDRAM不停的再读写数据
->TFT显示会写SDRAM吗?
我用的是EMWIN(UC GUI),比如我的显存(SDRAM)地址是0xA0C00000,而我将要显示的图片数据放在(SDRAM)地址0xA0E00000开始处,通过函数GUI_DrawBitmap(&bmp480272,0,0)进行显示。我的理解是后台SDRAM自己数据在不停交换的,当然我的理解也不一定完全正确的{:tongue:} big_cat 发表于 2016-5-25 15:24
我也是以前看的一点,不一定正确。原理就是在SDRAM中开两块显示缓冲区,分别是1区和2区。工作时的过程是1 ...
那是双缓存吧 zhangyun2743 发表于 2016-5-26 13:01
那是双缓存吧
本质是双缓存。 一般做双缓存
页:
[1]