zoukankan      html  css  js  c++  java
  • 触摸屏

    函数及思路讲解:

    1.对于LCD_Init();

    void LCD_Init(void)
    {
        LCD_GPIO_Config();
        LCD_FSMC_Config();
        
        LCD_Rst();
        LCD_REG_Config();
    }

    主要对FSMC总线配置定义,及对LCD初始化寄存器配置

    2.Lcd_GramScan(2);

    设置液晶GRAM的扫描方向  

    void Lcd_GramScan( uint16_t option )
    {    
        switch(option)
        {
            case 1:
            {/* 左上角->右下脚      显示中英文时用的是这种模式 */
                LCD_ILI9341_CMD(0x36); 
                LCD_ILI9341_Parameter(0xC8);   
                LCD_ILI9341_CMD(0X2A); 
                LCD_ILI9341_Parameter(0x00);    /* x start */    
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x00);  /* x end */    
                LCD_ILI9341_Parameter(0xEF);
    
                LCD_ILI9341_CMD(0X2B); 
                LCD_ILI9341_Parameter(0x00);    /* y start */  
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x01);    /* y end */   
                LCD_ILI9341_Parameter(0x3F);
                        
            }break;
            case 2:
            {/* 左下角->右上角      显示摄像头图像时用的是这种模式 */    
                LCD_ILI9341_CMD(0x36); 
                LCD_ILI9341_Parameter(0x68);    
                LCD_ILI9341_CMD(0X2A); 
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x01);
                LCD_ILI9341_Parameter(0x3F);    
    
                LCD_ILI9341_CMD(0X2B); 
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0xEF);            
            }break;
            case 3:
            {/* 右下角->左上角      显示BMP图片时用的是这种模式 */
                LCD_ILI9341_CMD(0x36); 
                LCD_ILI9341_Parameter(0x28);    
                LCD_ILI9341_CMD(0X2A); 
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x01);
                LCD_ILI9341_Parameter(0x3F);    
    
                LCD_ILI9341_CMD(0X2B); 
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0xEF);            
            }break;
            case 4:
            {/* 左下角->右上角      显示BMP图片时用的是这种模式 */
                LCD_ILI9341_CMD(0x36); 
                LCD_ILI9341_Parameter(0x48);    
                LCD_ILI9341_CMD(0X2A); 
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0xEF);    
    
                LCD_ILI9341_CMD(0X2B); 
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x00);
                LCD_ILI9341_Parameter(0x01);
                LCD_ILI9341_Parameter(0x3F);            
            }break;
        }
        
        /* write gram start */
        LCD_ILI9341_CMD(0x2C);
    }

    3.SPI_FLASH_Init();(我们将触摸到的值存在25Q16中,当然我们可以不用)可结合SPI文理解

    4.Touch_Init();

    触摸屏数据的传输我们用模拟SPI

    当然对于是否检测到触摸,当触摸屏有触摸动作的时候PENIRQ会变为低电平,我们利用外部中断进行检测

    5.Palette_Init(); 去色板初始化函数

    6.我们谨记,串口中断对扫描速率的影响是很大的

    当我们编译USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);

     屏幕的刷屏速率慢许多

  • 相关阅读:
    【.Net】多语言查看MSDN
    【.Net】 显示星期字符串
    【.Net】 判断时间字符串正确性
    【.Net】 实现窗口拖动
    【.Net】 Winform 单例运行实例
    Kendo 计算字段
    Kendo UI 的 k-template
    UpdatePanel中用后台CS代码调用JS代码,先执行控件事件,后触发JS
    SQL常用
    Node.js 安装
  • 原文地址:https://www.cnblogs.com/Ph-one/p/4126884.html
Copyright © 2011-2022 走看看