还记得上章节演示程序的帧率么?不到1FPS!下面我们开始优化,寻找成就感。
一:首先把wm_main.c中设置的默认主频从80MHZ改为240MHZ。恢复满血状态。
帧率提升到1.8fps左右。有效果,但不多。
二:我们再来观察ili9488的接口时序
图中可知:
1、CS引脚在发送数据期间全程保持低电平。
2、D/C引脚,也就是RS引脚,决定是写命令还是写数据。
3、每发送一次数据(并口,DB0-15一次发送16bit),WR引脚跳变一次。
好了,我们再看发送命令函数
以清屏操作为例,LCD_Clear中每个像素执行一次写数据。
void LCD_Clear(u16 color)
{
u16 i,j;
LCD_Address_Set(0,0,lcddev.width-1,lcddev.height-1);//设置显示范围
for(i=0;i<lcddev.width;i++)
{
for(j=0;j<lcddev.height;j++)
{
LCD_WR_DATA(color);
}
}
}
而每个数据都执行一次完整的引脚跳变。
//写LCD数据
//data:要写入的值
void LCD_WR_DATA(