/*QG-9664KSWAG01*/
/*SSD1305*/
                   
/*¸±³جت½*/   
void write_i(unsigned char ins)
{
	
   DC=0;
   CS=0;
   WR=1;
   P1=ins;       /*inst*/
   WR=0;
   WR=1;
   CS=1;
}

void write_d(unsigned char dat)
{ 
   DC=1;
   CS=0;
   WR=1;
   P1=dat;       /*data*/
   WR=0;
   WR=1;
   CS=1;
}


void delay(unsigned int i)							
{
   	while(i>0)
   	{
		i--;
   	}
}


                   
void  ssd1305()
{
       write_i(0xA4);    /*display off*/ 
      
       write_i(0x02);    /*set lower column address*/       
       write_i(0x11);    /*set higher column address*/       

       write_i(0x40);    /*set display start line*/ 
      
       write_i(0x2E);    /*stop horzontal scroll*/     
  
       write_i(0x81);    /*contract control*/
       write_i(0x32);    /*128*/  
     
       write_i(0xA1);    /*set segment remap*/ 
    
              

       write_i(0xA6);    /*normal / reverse*/  
     
       write_i(0xA8);    /*multiplex ratio*/
       write_i(0x3F);    /*duty = 1/64*/  
     
       write_i(0xC8);    /*Com scan direction*/   
    
       write_i(0xD3);    /*set display offset*/
       write_i(0x40);       

       write_i(0xD5);    /*set osc division*/
       write_i(0xF0);          

       write_i(0xD9);    /*set pre-charge period*/
       write_i(0Xf1);      
 
       write_i(0xDA);    /*set COM pins*/
       write_i(0x12);      
 
       write_i(0xdb);    /*set vcomh*/
       write_i(0x34);       

       write_i(0x8d);    /*set charge pump disable*/
       write_i(0x14);      
 
       write_i(0xAF);    /*display ON*/                     

}

