📄 lcdlib.c
字号:
/*****************************************
NAME: lcdlib.c
DESC: lcd configuration low-level codes
HISTORY:
2002.03.13:draft ver 0.0
*****************************************/
#include <string.h>
#include "2410addr.h"
//#include "2410lib.h"
#include "def.h"
//#include "option.h"
//#include "24xslib.h"
#include "lcdlib.h"
//TFT 320240
U32 (*frameBuffer8BitTft320240)[SCR_XSIZE_TFT_320240/4];
U32 (*frameBuffer16BitTft320240)[SCR_XSIZE_TFT_320240/2];
void Lcd_Init320240()
{
frameBuffer8BitTft320240=(U32 (*)[SCR_XSIZE_TFT_320240/4])LCDFRAMEBUFFER;
rLCDCON1=(CLKVAL_TFT_320240<<8)|(MVAL_USED<<7)|(3<<5)|(11<<1)|0;
// TFT LCD panel,8bpp TFT,ENVID=off
rLCDCON2=(VBPD_320240<<24)|(LINEVAL_TFT_320240<<14)|(VFPD_320240<<6)|(VSPW_320240);
rLCDCON3=(HBPD_320240<<19)|(HOZVAL_TFT_320240<<8)|(HFPD_320240);
rLCDCON4=(MVAL<<8)|(HSPW_320240);
rLCDCON5=(1<<11)|(1<<9)|(1<<8); //FRM5:6:5,HSYNC and VSYNC are inverted
rLCDSADDR1=(((U32)frameBuffer8BitTft320240>>22)<<21)|M5D((U32)frameBuffer8BitTft320240>>1);
rLCDSADDR2=M5D( ((U32)frameBuffer8BitTft320240+(SCR_XSIZE_TFT_320240*LCD_YSIZE_TFT_320240/1))>>1 );
rLCDSADDR3=(((SCR_XSIZE_TFT_320240-LCD_XSIZE_TFT_320240)/2)<<11)|(LCD_XSIZE_TFT_320240/2);
rLCDINTMSK|=(3); // MASK LCD Sub Interrupt
rLPCSEL&=(~7); // Disable LPC3600
rTPAL=0; // Disable Temp Palette
}
void Lcd_EnvidOnOff(int onoff)
{
if(onoff==1)
rLCDCON1|=1; // ENVID=ON
else
rLCDCON1 =rLCDCON1 & 0x3fffe; // ENVID Off
}
void Lcd_PowerEnable(int invpwren,int pwren)
{
//GPG4 is setted as LCD_PWREN
rGPGUP=rGPGUP&(~(1<<4))|(1<<4); // Pull-up disable
rGPGCON=rGPGCON&(~(3<<8))|(3<<8); //GPG4=LCD_PWREN
//Enable LCD POWER ENABLE Function
rLCDCON5=rLCDCON5&(~(1<<3))|(pwren<<3); // PWREN
rLCDCON5=rLCDCON5&(~(1<<5))|(invpwren<<5); // INVPWREN
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -