bf6811a_initial-11[1].27.2007.c

来自「比亚迪玻璃配BF6811AIC初始化代码」· C语言 代码 · 共 607 行 · 第 1/5 页

C
607
字号
	           RS =1;
                   NWR=1;
                   NRD=0;
                   *(buffer+i*160+2*j)=P3;  //first 8bit
                   NRD=1;
	           NCS=1;
                  }

                  {P3=0xff;
                   NCS=0;
	           RS =1;
                   NWR=1;
                   NRD=0;
                   *(buffer+i*160+2*j+1)=P3;//second 8bit
                   NRD=1;
	           NCS=1;
                  }
          }
}
//---------------display off--------------
void display_off()
{
        
       init_setting(0x00,0x0B,0x00,0x00); //GD,SDT,CE,DIV,RTN             ;DIV=1,frame=100Hz 
       init_setting(0x00,0x07,0x00,0x36);  //GON="1",DTE="1",D1-0="10"
       delay_X1ms(50);                     //wait 2 frames or more
       init_setting(0x00,0x07,0x00,0x26);  //GON="1",DTE="0",D1-0="10"
       delay_X1ms(50);                     //wait 2 frames or more
       init_setting(0x00,0x5B,0x00,0x04);  //OFF VCL    
       init_setting(0x00,0x07,0x00,0x04);  //GON="0",DTE="0",D1-0="00"
       init_setting(0x00,0x10,0x00,0x40);  //SAP3-0="000"             
       init_setting(0x00,0x12,0x00,0x00);  //PON="0"
       init_setting(0x00,0x13,0x00,0x00);  //VCOMG="0"
       init_setting(0x00,0x10,0x00,0x00);  //AP3-0="000"
                     
        
}
//--------------display_on----------------
void display_on()
{
	init_setting(0x00,0x00,0x00,0x01);    //OSD_EN=1, start OSC
        delay_X1ms(10);
        init_setting(0x00,0x10,0x01,0x44);    //SAP=000 source buffer stop ,BT=001 6 -4,AP=100  1.0 current ,DK=1 step up 1 off
        init_setting(0x00,0x11,0x00,0x00);    //DC1=000 fosc/16 ,DC0=000 fosc/8 , VC=000 vci1=1*vci=2.8V        
        init_setting(0x00,0x12,0x00,0x00);    //PON=0   step up 2 off , VRH=0000 vgam1out =1.33 * REGP (smallest)
        init_setting(0x00,0x13,0x00,0x00);    //VCOMG=0 VCOML to VSSD ,VCM=00000 VCOMH=VGAM1OUT*0.4 ,VDV=00000 VCOMA =0.6 * VGAM1OUT ,
        init_setting(0x00,0x5B,0x00,0x04);    //OFF VCL
        init_setting(0x00,0x12,0x00,0x10);    //PON=1 step up 2 ON (ON VGL)
        delay_X1ms(50);                       //delay_X1ms 50 ms
        init_setting(0x00,0x10,0x01,0x40);    //DK=0 step up 1 ON 
        delay_X1ms(100);
        init_setting(0x00,0x10,0x00,0x40);    //BT=000 6 -5 
        delay_X1ms(10);     
        init_setting(0x00,0x12,0x00,0x14);    //VRH=0100 VGAM1OUT=1.75 *REGP
        init_setting(0x00,0x13,0x2d,0x09);    //VCM=01001 VCOMH = 0.58 *VGAM1OIUT ,VDV=01101 VCOMA=0.99 *VGAM1OUT,VCOMG=1 VCOML = 1.0~ (VCL+0.5)
        delay_X1ms(10);
        init_setting(0x00,0x10,0x60,0x40);    //SAP=100 source current 1	
        init_setting(0x00,0x07,0x00,0x05);    //GON=0 DTE=0  GATE all to VGH ,D1-0=01 souure buffer out VSSD
        delay_X1ms(50);
        init_setting(0x00,0x07,0x00,0x25);    //GON=1DTE=0  GATE all to VGL         
        init_setting(0x00,0x5B,0x00,0x00);    //ON VCL
        delay_X1ms(50);
        init_setting(0x00,0x07,0x00,0x27);    //D1-0=11 source buffer normal display 
        delay_X1ms(50);
        init_setting(0x00,0x07,0x00,0x37);    //GON=1 DTE=1 GATE display normal 
	delay_X1ms(10);
        write_command(0x00);
        write_command(0x22);
        delay_X1ms(10);
}
//--------------enter sleep---------------
void enter_sleep()
{
       init_setting(0x00,0x0B,0x00,0x00); //GD,SDT,CE,DIV,RTN             ;DIV=1,frame=100Hz 
       init_setting(0x00,0x07,0x00,0x36);  //GON="1",DTE="1",D1-0="10"
       delay_X1ms(50);                     //wait 2 frames or more
       init_setting(0x00,0x07,0x00,0x26);  //GON="1",DTE="0",D1-0="10"
       delay_X1ms(50);                     //wait 2 frames or more
       init_setting(0x00,0x5B,0x00,0x04);  //OFF VCL    
       init_setting(0x00,0x07,0x00,0x04);  //GON="0",DTE="0",D1-0="00"
       init_setting(0x00,0x10,0x00,0x40);  //SAP3-0="000"             
       init_setting(0x00,0x12,0x00,0x00);  //PON="0"
       init_setting(0x00,0x13,0x00,0x00);  //VCOMG="0"
       init_setting(0x00,0x10,0x00,0x00);  //AP3-0="000"             
       delay_X1ms(10);
       init_setting(0x00,0x10,0x00,0x02);  //SLP="1", enter sleep
       delay_X1ms(10);
}
//--------------exit sleep----------------
void exit_sleep()
{
	init_setting(0x00,0x10,0x00,0x00);  //SLP="0", exit sleep
	delay_X1ms(10);
        init_setting(0x00,0x00,0x00,0x01);    //OSD_EN=1, start OSC
        delay_X1ms(10);
        init_setting(0x00,0x10,0x01,0x44);    //SAP=000 source buffer stop ,BT=001 6 -4,AP=100  1.0 current ,DK=1 step up 1 off
        init_setting(0x00,0x11,0x00,0x00);    //DC1=000 fosc/16 ,DC0=000 fosc/8 , VC=000 vci1=1*vci=2.8V        
        init_setting(0x00,0x12,0x00,0x00);    //PON=0   step up 2 off , VRH=0000 vgam1out =1.33 * REGP (smallest)
        init_setting(0x00,0x13,0x00,0x00);    //VCOMG=0 VCOML to VSSD ,VCM=00000 VCOMH=VGAM1OUT*0.4 ,VDV=00000 VCOMA =0.6 * VGAM1OUT ,
        init_setting(0x00,0x5B,0x00,0x04);    //OFF VCL
        init_setting(0x00,0x12,0x00,0x10);    //PON=1 step up 2 ON (ON VGL)
        delay_X1ms(50);                       //delay_X1ms 50 ms
        init_setting(0x00,0x10,0x01,0x40);    //DK=0 step up 1 ON 
        delay_X1ms(100);
        init_setting(0x00,0x10,0x00,0x40);    //BT=000 6 -5 
        delay_X1ms(10);     
        init_setting(0x00,0x12,0x00,0x14);    //VRH=0100 VGAM1OUT=1.75 *REGP
        init_setting(0x00,0x13,0x2d,0x09);    //VCM=01001 VCOMH = 0.58 *VGAM1OIUT ,VDV=01101 VCOMA=0.99 *VGAM1OUT,VCOMG=1 VCOML = 1.0~ (VCL+0.5)
        delay_X1ms(10);
        init_setting(0x00,0x10,0x60,0x40);    //SAP=100 source current 1	
        init_setting(0x00,0x07,0x00,0x05);    //GON=0 DTE=0  GATE all to VGH ,D1-0=01 souure buffer out VSSD
        delay_X1ms(50);
        init_setting(0x00,0x07,0x00,0x25);    //GON=1DTE=0  GATE all to VGL         
        init_setting(0x00,0x5B,0x00,0x00);    //ON VCL
        delay_X1ms(50);
        init_setting(0x00,0x07,0x00,0x27);    //D1-0=11 source buffer normal display 
        delay_X1ms(50);
        init_setting(0x00,0x07,0x00,0x37);    //GON=1 DTE=1 GATE display normal 
	delay_X1ms(10);
        write_command(0x00);
        write_command(0x22);
        delay_X1ms(10);

⌨️ 快捷键说明

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