⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd.c

📁 ADS开发的BOOTLOADER,针对2410,是某培训班出的!
💻 C
字号:
#include "2410addr.h"
#include "lcd.h"              
#include "uart.h" 
#define LCDBUFFER   (0x33500000)
#define Xline        (240)
#define Yline       (320)

unsigned short int  *buffer;

void LCDINIT ()

{
uart_send("bbb");

/*初始化 IO*/
rGPCCON=0xaaaaaaaa;
rGPCDAT=0x0;
rGPCUP=0xffffffff;
rGPDCON=0xaaaaaaaa;
rGPDDAT=0x0;
rGPDUP=0xffffffff;

/*设置内存缓冲区*/
buffer=(unsigned short int*)LCDBUFFER;



rGPGCON|=(3<<8);
rGPGUP=0xffff;
rGPGDAT=0x0;
/*设置LCD寄存器*/
rLCDCON1=(7<<8)|(0<<7)|(3<<5)|(12<<1)|0;
rLCDCON2=(2<<24)|((Yline-1)<<14)|(2<<6)|4;
rLCDCON3=(8<<19)|((Xline-1)<<8)|8;
rLCDCON4=(13<<8)|6;
rLCDCON5=(1<<11)|(0<<9)|(0<<8)|(0<<6)|(1<<3)|1;




rLCDSADDR1=(((unsigned int )LCDBUFFER>>22)<<21)|(((unsigned int )LCDBUFFER>>1)&0x1fffff);
rLCDSADDR2=(((LCDBUFFER>>1)&0x1fffff)+(Xline*2*Yline))>>1;
rLCDSADDR3=(0<<11)|(Xline);
rDITHMODE=0x12210;
rLCDINTMSK=0x3;
rLPCSEL&=0;
rTPAL=0;
}



void Lcd_envid(int onoff)
{if (onoff==1)
{uart_send("ccc");
rLCDCON1|=1;
  }else 
  {uart_send("ddd");
  rLCDCON1&=~(1);
  }
}
/*画点*/
void Pixel(int x,int y,  unsigned short int c)
{unsigned short int * a;

if (x<Xline&&x>0&&y<Yline&&y>0)
 
 
{ a=((unsigned short int *)LCDBUFFER+(240*y+x)*2);
 
 *a=c;
 
 }
 }


/*画垂直线*/
void line1(int x1,int y1,int y2 , unsigned  short int c)
{while(y1<=y2)
	{
		Pixel(x1,y1++,c);
	 }
}


/*画水平线*/
void line2(int x1,int x2,int y1, unsigned short int c)
{while(x1<=x2)
	{
		Pixel(x1++,y1,c);
	 }

}


/*清屏*/
void fill(unsigned short  int c)
{int x,y;
uart_send("EEE");
for(y=0;y<Yline;y++)
{for(x=0;x<Xline;x++)
{Pixel(x,y,c);
}
}
}




void LCD_TEST(int argc, char**argv)
{uart_send("aaa\n\r");
LCDINIT();
Lcd_envid(1);
fill(0x00ff);
}



















⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -