STM32 ~ ili9341 横屏驱动代码

void ili9341_Initializtion(void)
{
 

  u16 i;
    RCC->APB2ENR|=1<<3;    //使能PORTB时钟
    GPIOB->CRH&=0XFFF0FFFF;
    GPIOB->CRH|=0X00030000;//PB.12推挽输出
    GPIOB->ODR|=1<<12;      //PB.12输出高
   LCD_X_Init();  //初始化连接LCD彩色液晶屏上的管脚,比如这里连接的是FSMC总线
        
        ILI9341_RESX_H;
        Delay_ms(1);
        ILI9341_RESX_L;
        Delay_ms(12);
        ILI9341_RESX_H;
        Delay_ms(122);
//        
        LCD_ILI9341_CMD(0xCF);
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_Parameter(0x81);
        LCD_ILI9341_Parameter(0x30);
        LCD_ILI9341_CMD(0xED);
        LCD_ILI9341_Parameter(0x64);
        LCD_ILI9341_Parameter(0x03);
        LCD_ILI9341_Parameter(0x12);
        LCD_ILI9341_Parameter(0x81);
        LCD_ILI9341_CMD(0xE8);
        LCD_ILI9341_Parameter(0x85);
        LCD_ILI9341_Parameter(0x10);
        LCD_ILI9341_Parameter(0x78);
        LCD_ILI9341_CMD(0xCB);
        LCD_ILI9341_Parameter(0x39);
        LCD_ILI9341_Parameter(0x2C);
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_Parameter(0x34);
        LCD_ILI9341_Parameter(0x02);
        LCD_ILI9341_CMD(0xF7);
        LCD_ILI9341_Parameter(0x20);
        LCD_ILI9341_CMD(0xEA);
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_CMD(0xB1);
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_Parameter(0x1B);
        LCD_ILI9341_CMD(0xB6);
        LCD_ILI9341_Parameter(0x0A);
        LCD_ILI9341_Parameter(0xA2);
        LCD_ILI9341_CMD(0xC0);
        LCD_ILI9341_Parameter(0x35);
        LCD_ILI9341_CMD(0xC1);
        LCD_ILI9341_Parameter(0x11);
        LCD_ILI9341_CMD(0xC5);
        LCD_ILI9341_Parameter(0x45);
        LCD_ILI9341_Parameter(0x45);
        LCD_ILI9341_CMD(0xC7);
        LCD_ILI9341_Parameter(0xA2);
        LCD_ILI9341_CMD(0xF2);
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_CMD(0x26);
        LCD_ILI9341_Parameter(0x01);
        LCD_ILI9341_CMD(0xE0);
        LCD_ILI9341_Parameter(0x0F);
        LCD_ILI9341_Parameter(0x26);
        LCD_ILI9341_Parameter(0x24);
        LCD_ILI9341_Parameter(0x0B);
        LCD_ILI9341_Parameter(0x0E);
        LCD_ILI9341_Parameter(0x09);
        LCD_ILI9341_Parameter(0x54);
        LCD_ILI9341_Parameter(0xA8);
        LCD_ILI9341_Parameter(0x46);
        LCD_ILI9341_Parameter(0x0C);
        LCD_ILI9341_Parameter(0x17);
        LCD_ILI9341_Parameter(0x09);
        LCD_ILI9341_Parameter(0x0F);
        LCD_ILI9341_Parameter(0x07);
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_CMD(0xE1);
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_Parameter(0x19);
        LCD_ILI9341_Parameter(0x1B);
        LCD_ILI9341_Parameter(0x04);
        LCD_ILI9341_Parameter(0x10);
        LCD_ILI9341_Parameter(0x07);
        LCD_ILI9341_Parameter(0x2A);
        LCD_ILI9341_Parameter(0x47);
        LCD_ILI9341_Parameter(0x39);
        LCD_ILI9341_Parameter(0x03);
        LCD_ILI9341_Parameter(0x06);
        LCD_ILI9341_Parameter(0x06);
        LCD_ILI9341_Parameter(0x30);
        LCD_ILI9341_Parameter(0x38);
        LCD_ILI9341_Parameter(0x0F);
        LCD_ILI9341_CMD(0x36);     //set the model of scanning
        LCD_ILI9341_Parameter((1<<5)|(0<<6)|(1<<7)|(1<<3)); //左横屏
        //LCD_ILI9341_Parameter((1<<5)|(1<<6));右横屏幕
        //LCD_ILI9341_Parameter(0x08); 竖屏幕
        LCD_ILI9341_CMD(0x2B);     //set the page address 横屏幕设置
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_Parameter(0xEF);
        LCD_ILI9341_CMD(0x2A);    //set the column address
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_Parameter(0x00);
        LCD_ILI9341_Parameter(0x01);
        LCD_ILI9341_Parameter(0x3F);
//        LCD_ILI9341_CMD(0x2A);     //set the page address 竖屏幕设置
//        LCD_ILI9341_Parameter(0x00);
//        LCD_ILI9341_Parameter(0x00);
//        LCD_ILI9341_Parameter(0x00);
//        LCD_ILI9341_Parameter(0xEF);
//        LCD_ILI9341_CMD(0x2B);    //set the column address
//        LCD_ILI9341_Parameter(0x00);
//        LCD_ILI9341_Parameter(0x00);
//        LCD_ILI9341_Parameter(0x01);
//        LCD_ILI9341_Parameter(0x3F);        
        LCD_ILI9341_CMD(0x3A);
        LCD_ILI9341_Parameter(0x55); //16pixel
        LCD_ILI9341_CMD(0x11);
        Delay_ms(120);
        LCD_ILI9341_CMD(0x29);
        LCD_ILI9341_CMD(0x2C);
//while(1)
//{
//    {
//        u32 i;
//        for(i=0;i<(320*240);i++)
//        {
//            LCD_ILI9341_Parameter(Blue);
//        }
//    }    
//    Delay_ms(1000);
//    {
//        u32 i;
//        for(i=0;i<(320*240);i++)
//        {
//            LCD_ILI9341_Parameter(Red);
//        }
//    }    
//    Delay_ms(1000);
//    {
//        u32 i;
//        for(i=0;i<(320*240);i++)
//        {
//            LCD_ILI9341_Parameter(Green);
//        }
//    }    
//    Delay_ms(1000);    
//}    

} 

 

posted @ 2015-05-12 14:54  Burden  阅读(4173)  评论(0编辑  收藏  举报