• 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);    
    //}    
    
    } 
  • 相关阅读:
    Allegro PCB转换成PADS方法
    Altium Designer只显示某一层,隐藏其他层
    DCDC功率电感(Inductor)选型
    DDR布线教程
    DDR地址、容量计算、Bank理解
    DDR3中的ODT(On-die termination)
    LINUX文件系统操作指令之四
    linux系统之间通过nfs网络文件系统挂载设置方法
    linux消息队列编程实例
    system()函数
  • 原文地址:https://www.cnblogs.com/einstein-2014731/p/4497319.html
Copyright © 2020-2023  润新知