初级会员

- 积分
- 95
- 金钱
- 95
- 注册时间
- 2013-6-1
- 在线时间
- 37 小时
|
5金钱
请教一下原子哥及群里的高手,怎样采用DMA读取外部Flash的数据呢?提高LCD显示图片的速度呢?
下面是我写的一个程序主函数(在原子哥的SPI读写外部FLASH的程序基础上稍做了修改);在此之前flash中已经烧录好图片(320*240)的数据了;
使用该程序的SPI功能也将图片数据从外部的FLASH读取出来并且在TFTLCD成功显示出来了;但是,由于是每次从FLASH中读一部分数据,
然后再在LCD上显示,每次都有一个SPI的数据读取的等待时间,造成了LCD显示图片时给人一种图片是明显扫出来的感觉(大约有0.6秒);
请问,能否采用DMA读取外部Flash的数据或其他的办法,提高LCD显示图片的速度呢?
#define SIZE 320
#define Doublesize SIZE*2
u8 datatemp[Doublesize];
int main(void)
{
u8 i;
LCD_init();
SPI_Flash_Init();
LCD_SetCursor(0, 319, 0, 239);
for(i=0;i<240;i++)
{
SPI_Flash_Read(datatemp, i*Doublesize, Doublesize);
LCD_tuhuashow(0, i, SIZE, datatemp);
}
while(1);
}
|
|