我的lcd :
1. 8 bit single scan display mode (STN)
2. 12 BPP for STN, color mode
3. 屏幕,图片大小320 * 240 no visual
4. ......
我的设置为
LCDCON1 = (8<<8)|(0<<7)|(2<<5)|(4<<1)|1;
LCDCON2 = (0<<24)|((240-1)<<14)|(0<<6)|(0<<0);
LCDCON3 = (0<<19)|((320*3/8-1)<<8)|(1<<0);
LCDCON4 = (13<<8)|(0<<0);
LCDCON5 = 0x0a;
LCDSADDR1 = ((fb_startaddr >> 22) << 21) | ((fb_startaddr >> 1) & 0x1FFFFF);
LCDSADDR2 = ((fb_startaddr + 320*240*3/2) >> 1) & 0x1FFFFF;
(其中,LCDSADDR1,LCDSADDR2,为相应地址里头的数据,fb_startaddr为我要把数据加载到的内存地址)。
LCDSADDR3 =0;(没有虚拟)
出现的问题是:显示出来的数据,是从地址fb_startaddr开始的,但是这个地址里头的数据是从显示屏中部某个地方开始的开始的,图像两边也有错位,不知道如何解决,望各位帮忙。