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

📄 4042e.c

📁 s3c44b0的应用程序
💻 C
字号:
//*****************************************************
//LCD Function program
//Author:Carson Lee
//Date:2006.6.15
//*****************************************************
#include "..\inc\44blib.h"
#include "..\inc\44b.h"
#include "..\inc\def.h"

extern int WriteCmd(unsigned short RegAddress);
extern int WriteData(unsigned short RegData);
extern int Lcd_Delay(unsigned short t);
extern int Reset(void);


//void DisplayDMA(void);

//unsigned char const picture[77824];
unsigned char picture[40960];


void Display(void)
{	
	int i,j,k;
	unsigned int   temp=0;
   	
	WriteCmd(0x30);
	WriteCmd(0x15);
	WriteData(0x0);	
	WriteData(127);
	WriteCmd(0x75);
	WriteData(0x00);
	WriteData(127);
	
  	WriteCmd(0x5c);
  //	while(1)
  //	{	
  
   	for(i=0;i<128;i++)
      for(j=0;j<128;j++)
      	{
         WriteData(0xf8); 
         WriteData(0x00);          
       	}      
 /*   Lcd_Delay(60000);
    Lcd_Delay(60000);
    Lcd_Delay(60000);*/
    Lcd_Delay(60000);
    Lcd_Delay(60000);
 
    for(i=0;i<128;i++)
      for(j=0;j<128;j++)
    	{
         WriteData(0x07); 
         WriteData(0xe0);           
       	}  
       	    
  /*  Lcd_Delay(60000);
    Lcd_Delay(60000);
    Lcd_Delay(60000);*/
    Lcd_Delay(60000);
    Lcd_Delay(60000);
   
 	for(i=0;i<128;i++)
       for(j=0;j<128;j++)
     	{
         WriteData(0x00); 
         WriteData(0x1f);           
        }      
 /*	Lcd_Delay(60000);
 	Lcd_Delay(60000);
 	Lcd_Delay(60000);*/
 	Lcd_Delay(60000);
 	Lcd_Delay(60000);

 /*
 // rI_ISPC=BIT_ZDMA0;
 // rINTMSK=~(BIT_GLOBAL | BIT_ZDMA0); 
for(k=0;k<17;k++)    
{  
 ReadMap(picture,k);
 Lcd_Delay(60000);
 DisplayDMA();
 Lcd_Delay(60000);
 }
 */

/* for(k=0;k<60;k++)           
   {
   ReadMap(picture,k);
       
   for(temp=0;temp<01;temp++)   
    for(i=0;i<128;i++)
      for(j=0;j<128;j++)
     { WriteData(picture[256*i+j*2]);
      WriteData(picture[256*i+j*2+1]);

      }  
     Lcd_Delay(60000);
 	Lcd_Delay(60000);
 	Lcd_Delay(60000);
 	Lcd_Delay(60000);
 	Lcd_Delay(25000);
       	
   
 // }                  

  }*/

}

void LCD_init(void)
{  
  Reset(); 
	WriteCmd(0x30);//EXT = 0

    WriteCmd(0x04);
    WriteData(0x3e);
    
	WriteCmd(0x94);//sleep out

	
	WriteCmd(0xd1);//OSC on

	
	WriteCmd(0xca);//display control
	WriteData(0x00);//CL dividing ratio = 0
	
	WriteData(0x1f);//duty
	
	WriteData(0x00);//N-Line
	WriteCmd(0xbb);//com scan direc. = 0~65 / 131~66
	WriteData(0x01);
    WriteCmd(0x31);//EXT = 1

    
	WriteCmd(0x32);//OSC freq
    WriteData(0x07);//booster effic.
  	WriteData(0x01);//bias
    	
    
    WriteData(0x00);//vcomL
    	
	WriteCmd(0x30);//EXT = 0
	
	WriteCmd(0x81);//EC control
	WriteData(0x05);
   
	WriteData(0x04);//vop[8:6]
    	
	WriteCmd(0x20);//power control
	WriteData(0x0b);//D0 = regulator / D1 = follwer / D3 = booster
    	
    WriteCmd(0x07);
    WriteData(0x19);//mode_select_1001e
    	
	WriteCmd(0x31);//EXT = 1
	
	WriteCmd(0xcd);
	WriteData(0x00);//EEPROM Enable
   	Lcd_Delay(1000);
   	Lcd_Delay(1000); 	
   	 	
   	 	
	WriteCmd(0xfd);//EEPROM read

	Lcd_Delay(1000);
	Lcd_Delay(1000);
	
    
	WriteCmd(0xcc);//EEPROM disable
	WriteCmd(0x30);//EXT = 0
	
    WriteCmd(0xa7);//inverse display

	WriteCmd(0xbc);//data scan direc.
	WriteData(0x00);//address direc.
	
	WriteData(0x01);//BGR
	
	WriteData(0x01);//gray scale
	WriteCmd(0xaf);//display on

	
	WriteCmd(0x15);//column range
	WriteData(0x00);//start
	
	WriteData(127);//end
	WriteCmd(0x75);//page range
	WriteData(0x00);//start
	
	WriteData(127);//end
	
    WriteCmd(0x31);//EXT = 1
   
	WriteCmd(0x34); //dither on
   
   /*Reset(); 
	WriteCmd(0x30);
    WriteCmd(0x04);
    WriteData(0x3e);
    
	WriteCmd(0x31);
	
	WriteCmd(0xf4);
	
	
	WriteData(0x58);//VCO_mode

	WriteCmd(0x30);
	
    WriteCmd(0x94);
    
	WriteCmd(0xd1);
   
    
    	
	WriteCmd(0xca);
	
	
	WriteData(0x00);//VCO_mode
   
	WriteData(0x1f);//vcomH
    	
	
	WriteData(0x1a);//vcomL
    	
    WriteCmd(0x31);
 
    	
	WriteCmd(0xf3);
	
	
	WriteData(0x00);//mode_select_3
 
   	 	
	WriteCmd(0x30);
	
    
	WriteCmd(0xbb);
	
	WriteData(0x00);
	
	
	WriteCmd(0x31);
	
	WriteCmd(0x32);
	WriteData(0x00);
	
	WriteData(0x01);
	
	WriteData(0x00);
	
	
    WriteCmd(0x30);
   
	WriteCmd(0x81);
	WriteData(0x05);
	WriteData(0x04);
	
	WriteCmd(0x20);
	WriteData(0x0b);
	WriteCmd(0x60);
	
	Lcd_Delay(6000);
	WriteCmd(0x31);
	WriteCmd(0xcd);
	WriteData(0x00);
	Lcd_Delay(6000);
	WriteCmd(0xfd);
	Lcd_Delay(6000);
	WriteCmd(0xcc);
	WriteCmd(0x30);
	WriteCmd(0xa6);//a7
	WriteCmd(0xbc);
	WriteData(0x03);
	WriteData(0x01);
	WriteData(0x01);
	WriteCmd(0xaf);
	WriteCmd(0x15);
	WriteData(0x04);
	WriteData(131);
	WriteCmd(0x75);
	WriteData(0x04);
	WriteData(131);
	WriteCmd(0x31);
	WriteCmd(0x20);
	WriteData(0x00);
	WriteData(0x02);
	WriteData(0x04);
	WriteData(0x06);
	WriteData(0x08);
	WriteData(0x10);
	WriteData(0x12);
	WriteData(0x14);
	WriteData(0x16);
	WriteData(0x18);
	WriteData(0x20);
	WriteData(0x22);
	WriteData(0x24);
	WriteData(0x26);
	WriteData(0x28);
	WriteData(0x30);
	WriteCmd(0x21);
	WriteData(0x00);
	WriteData(0x02);
	WriteData(0x04);
	WriteData(0x06);
	WriteData(0x08);
	WriteData(0x10);
	WriteData(0x12);
	WriteData(0x14);
	WriteData(0x16);
	WriteData(0x18);
	WriteData(0x20);
	WriteData(0x22);
	WriteData(0x24);
	WriteData(0x26);
	WriteData(0x28);
	WriteData(0x30);
	WriteData(0x04);
	WriteData(0x06);
	WriteData(0x08);
	WriteData(0x10);
	WriteData(0x12);
	WriteData(0x14);
	WriteData(0x16);
	WriteData(0x18);
	WriteData(0x20);
	WriteData(0x22);
	WriteData(0x24);
	WriteData(0x26);
	WriteData(0x28);
	WriteData(0x30);
	WriteCmd(0x22);
		WriteData(0x00);
	WriteData(0x02);
	WriteData(0x04);
	WriteData(0x06);
	WriteData(0x08);
	WriteData(0x10);
	WriteData(0x12);
	WriteData(0x14);
	WriteData(0x16);
	WriteData(0x18);
	WriteData(0x20);
	WriteData(0x22);
	WriteData(0x24);
	WriteData(0x26);
	WriteData(0x28);
	WriteData(0x30);
	WriteCmd(0x23);
	WriteData(0x00);
	WriteData(0x02);
	WriteData(0x04);
	WriteData(0x06);
	WriteData(0x08);
	WriteData(0x10);
	WriteData(0x12);
	WriteData(0x14);
	WriteData(0x16);
	WriteData(0x18);
	WriteData(0x20);
	WriteData(0x22);
	WriteData(0x24);
	WriteData(0x26);
	WriteData(0x28);
	WriteData(0x30);
	WriteCmd(0x30);*/
	
	
	

}


⌨️ 快捷键说明

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