|
硬件应该没有没问题,因为在linux下显示正常。我把寄存器初始化发上来,你帮我看看,谢谢。
s2410LCD->rLCDCON1 = (2 << 8) | // TFT LCD panel,16bpp TFT,ENVID=off
(MVAL_USED << 7) |
(3 << 5) |
(12 << 1) | 0;
s2410LCD->rLCDCON2 = (VBPD << 24) |
(LINEVAL_TFT << 14) |
(VFPD << 6) |(VSPW);
s2410LCD->rLCDCON3 = (HBPD << 19) |
(HOZVAL_TFT << 8) |(HFPD);
s2410LCD->rLCDCON4 = (MVAL << 8) |(HSPW);
s2410LCD->rLCDCON5 = (1 << 11) |
(1 << 10) |
(1 << 9) |
(1 << 8) |
(0 << 7) |
(1 << 3) |
(1 << 0); //FRM5:6:5,HSYNC and VSYNC are inverted
s2410LCD->rLCDSADDR1 =( (FRAMEBUF_DMA_BASE >> 22)<<21)|M5D(FRAMEBUF_DMA_BASE>>1);
s2410LCD->rLCDSADDR2 =M5D( (FRAMEBUF_DMA_BASE+(LCD_XSIZE_TFT*LCD_YSIZE_TFT*2))>>1 );
s2410LCD->rLCDSADDR3 =(((LCD_XSIZE_TFT-LCD_XSIZE_TFT)/1)<<11)|(LCD_XSIZE_TFT/1);
s2410LCD->rLCDINTMSK |=(3); // MASK LCD Sub Interrupt
s2410LCD->rLPCSEL &=(~7); // Disable LPC3600
s2410LCD->rTPAL=0; // Disable Temp Palette
s2410LCD->rLCDCON1 |= 1; |
|