当前位置: 首页 > news >正文

触摸屏

函数及思路讲解:

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);

 屏幕的刷屏速率慢许多

 

转载于:https://www.cnblogs.com/Ph-one/p/4126884.html

相关文章:

  • 超频真的不难!G3258超频4.5GHz全攻略
  • 《将博客搬至51CTO》
  • 小K(wifi)插座剖解
  • WIFI模块对比介绍
  • linux学习笔记《一.烧写篇_android》
  • 串口WIF简单I调试
  • CRC32是什么?
  • 指数增长的领域
  • va_start和va_end使用详解
  • STM32组合设备实现USB转双串口
  • ESP8266调试笔记
  • android驱动学习---led实验
  • 什么叫二级域名
  • 电源方案集
  • STM32.ADC
  • Facebook AccountKit 接入的坑点
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • JavaScript服务器推送技术之 WebSocket
  • Java超时控制的实现
  • JAVA多线程机制解析-volatilesynchronized
  • Kibana配置logstash,报表一体化
  • Laravel5.4 Queues队列学习
  • Linux中的硬链接与软链接
  • React-redux的原理以及使用
  • 从PHP迁移至Golang - 基础篇
  • 从地狱到天堂,Node 回调向 async/await 转变
  • 基于webpack 的 vue 多页架构
  • 微信小程序填坑清单
  • 一些关于Rust在2019年的思考
  • 移动端解决方案学习记录
  • 译自由幺半群
  • 在Mac OS X上安装 Ruby运行环境
  • 追踪解析 FutureTask 源码
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • ​520就是要宠粉,你的心头书我买单
  • #define MODIFY_REG(REG, CLEARMASK, SETMASK)
  • (13)Latex:基于ΤΕΧ的自动排版系统——写论文必备
  • (145)光线追踪距离场柔和阴影
  • (39)STM32——FLASH闪存
  • (poj1.2.1)1970(筛选法模拟)
  • (笔记)Kotlin——Android封装ViewBinding之二 优化
  • (二)Pytorch快速搭建神经网络模型实现气温预测回归(代码+详细注解)
  • (附源码)springboot美食分享系统 毕业设计 612231
  • (七)理解angular中的module和injector,即依赖注入
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (推荐)叮当——中文语音对话机器人
  • (一)VirtualBox安装增强功能
  • (转)Linux NTP配置详解 (Network Time Protocol)
  • (转载)虚函数剖析
  • ***php进行支付宝开发中return_url和notify_url的区别分析
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .CSS-hover 的解释
  • .java 指数平滑_转载:二次指数平滑法求预测值的Java代码
  • .net CHARTING图表控件下载地址