救命啊,板子是mini2440,lcd是sony3.5寸的,裸机跑lcd程序,
#define GLOBAL_CLK 1
#include <stdlib.h>
#include <string.h>
#include "def.h"
#include "option.h"
#include "2440addr.h"
#include "2440lib.h"
#include "2440slib.h"
#include "mmu.h"
#include "profile.h"
#include "memtest.h"
#define high (320-1)
#define wide (240-1)
volatile unsigned long lcd_buffer[320][240];
void Main()
{
int x,y,n,m;
rGPCUP=0xffffffff;
rGPCCON=0xaaaa02a8;
rGPDUP=0xffffffff;
rGPDCON=0xaaaaaaaa;
rGPGCON|=3<<8;
rLCDCON1=( 1<<8)|(3<<5)|(12<<1);
rLCDCON2=(2<<24)|(high<<14)|(2<<6);
rLCDCON3=(28<<19)|(wide<<8)|(1<<0);
rLCDCON4=1<<0;
rLCDCON5=(1<<11)|(1<<9)|(1<<8)|(1<<6)|(1<<3);
rLCDSADDR1=((((unsigned long)lcd_buffer)>>22)<<21)|((((unsigned long)lcd_buffer)>>1)&0x001fffff);
rLCDSADDR2=((unsigned long)(lcd_buffer+240*320*2))>>1;
rLCDCON1|=1;
rGPGDAT|=1<<4;
/* for(y=0;y<320;y++)
{
for(x=0;x<240;x++)
{
lcd_buffer[y][x]=0xffff;
}
}
/* for(n=10000;n>0;n++)
for(m=40;m>0;m++)
;*/
for(y=0;y<320;y++)
{
for(x=0;x<240;x++)
{
lcd_buffer[y][x]=0xffff;
}
}
}
总是上下闪烁,参数调到想吐了,大侠救命啊