ili9322_init.c

来自「The attached zip includes a c code for i」· C语言 代码 · 共 132 行

C
132
字号

	
void ILI9322_init(void) 
{
	
  SPI_INIT(0,0x02,0x36);
  Delay_ms(100);
  SPI_INIT(0,0x01,0x16);
  Delay_ms(100);
  SPI_INIT(0,0x10,0xA7);
  Delay_ms(100);
  SPI_INIT(0,0x11,0x57);
  Delay_ms(100);
  SPI_INIT(0,0x12,0x73);
  Delay_ms(100);
  SPI_INIT(0,0x13,0x72);
  Delay_ms(100);
  SPI_INIT(0,0x14,0x73);
  DDelay_ms(100);
  SPI_INIT(0,0x15,0x55);
  Delay_ms(100);
  SPI_INIT(0,0x16,0x17);
  Delay_ms(100);
  SPI_INIT(0,0x17,0x62);
  Delay_ms(100);
  SPI_INIT(0,0x0A,0x09);
  Delay_ms(100);             //wait 10~80 frames cycle
}




/* 
==========================================================================
SPI function
==========================================================================
*/
void SPI_INIT(unsigned char Write,unsigned char ADDR,unsigned char DATA)
{
	int ACK=0x01;
	unsigned char i,j=0,Data1,Addr,a=0x80,b=0x40;
	i= Write;
	Addr=ADDR;
	Data1=DATA;
	
		
	
	  *(Byte_IO*)IO_P0 = SPDA_HI|SPCK_HI|SPENA_HI;
	  Delay1(10);
	  *(Byte_IO*)IO_P0 = SPDA_HI|SPCK_HI|SPENA_LO;
	  Delay1(4);
	  if (i==0)
	  {
	  	*(Byte_IO*)IO_P0 = SPDA_LO|SPCK_LO|SPENA_LO;  //write
	    Delay1(4);
	    *(Byte_IO*)IO_P0 = SPDA_LO|SPCK_HI|SPENA_LO;
	    Delay1(4);
	  }
	  else
	  {
	  	 
	  	*(Byte_IO*)IO_P0 = SPDA_HI|SPCK_LO|SPENA_LO;  //read
	    Delay1(4);
	    *(Byte_IO*)IO_P0 = SPDA_HI|SPCK_HI|SPENA_LO;
	    Delay1(4);
	 	}  
	  
	for(j=7;j>0;)
	  {
	  	
	  	if((Addr & b)>0)
	  	{
	  	*(Byte_IO*)IO_P0 = (SPDA_HI|SPCK_LO|SPENA_LO);
	  	Delay1(4); 
	  	 
	  	*(Byte_IO*)IO_P0 = (SPDA_HI|SPCK_HI|SPENA_LO);
	  	Delay1(4); 
	  	
	  	}
	  	else
	  	{
	  	*(Byte_IO*)IO_P0 = (SPDA_LO|SPCK_LO|SPENA_LO);
	  	Delay1(4); 
	  	 
	  	*(Byte_IO*)IO_P0 = (SPDA_LO|SPCK_HI|SPENA_LO);
	  	Delay1(4); 
	  		
	  	}
	  	b=b>>1;
	   	j--;
	  	   	  
	  }
	  
	  for(j=8;j>0;)
	  {
	  	
	  	if((Data1 & a)>0)
	  	{
	  	*(Byte_IO*)IO_P0 = (SPDA_HI|SPCK_LO|SPENA_LO);
	  	Delay1(4); 
	  	 
	  	*(Byte_IO*)IO_P0 = (SPDA_HI|SPCK_HI|SPENA_LO);
	  	Delay1(4); 
	  	
	  	}
	  	else
	  	{
	  	*(Byte_IO*)IO_P0 = (SPDA_LO|SPCK_LO|SPENA_LO);
	  	Delay1(4); 
	  	 
	  	*(Byte_IO*)IO_P0 = (SPDA_LO|SPCK_HI|SPENA_LO);
	  	Delay1(4); 
	  		
	  	}
	  	a=a>>1;
	   	j--;
	  	   	  
	  }
	  
	  *(Byte_IO*)IO_P0 = SPCK_LO|SPENA_LO;
	  	Delay1(4); 
	  *(Byte_IO*)IO_P0 = SPCK_HI|SPENA_HI;
	  	Delay1(4); 
	  *(Byte_IO*)IO_P0 = SPCK_HI|SPENA_LO;
	  	Delay1(4);  	  	
}





⌨️ 快捷键说明

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