touchscreem
<触摸屏种类>
常见
电阻式触摸屏
电容式触摸屏
不常见
红外线技术触摸屏
表面声波触摸屏
适量压力传感触摸屏
<原理分析>
电阻式触摸屏
如图所示,在屏幕的上下和左右加上一个5V电压,将这个5V根据屏幕的长度分成不同的电压值,只要将屏幕的上下接触,就可以检测出该点是电压,然后除以总的电压5V就可以找出其中的比例,这样就可以确定该点的X,Y了。
电容屏:
给工作屏一个很低的电压,手指接触屏幕时,手指将吸收走一步分电流,这个电流将从触模屏 的四个角流出,理论上流经这四个电极的电流与距离成比例,根据这个原理来确定触摸点的X,Y
<驱动程序设计>
初始化:
AD时钟初始化
AD转化控制寄存器
用于初始化AD转化时钟
控制字详情:
ADCLK = PCLK/(value+1) &&ADCLK<2MHz
中断屏蔽
TC中断
AD中断是总的中断
AD转换中断
支持TC中断(touch screen)和ADC中断(模数转换中断)
中断屏蔽寄存器:
控制字详情
子中断屏蔽寄存器
子中断控制字
进入等待中断模式
ADC状态寄存器:
等待中断模式详情;
TC中断处理:
启动XY坐标自动转化
触摸屏AD控制器
控制字详情(使能xy自动轴转换)
AD转化控制寄存器
控制字详情(使能AD转化)
等待转化完成
AD转换控制寄存器
控制字详情(结束转换标志位)
获取坐标
AD转化数据寄存器0
数据存储位
AD转化数据寄存器1
数据存储位
清除中断
进入等待TC中断模式
触摸屏AD转换状态寄存器
状态字详情(检测按下还是弹起)
清除弹起中断
进入等待模式
touchscreem的更多相关文章
随机推荐
- 微服务深入浅出(11)-- SpringBoot整合Docker
添加Dockerfile 在目录src/main/resources目录下店家Dockerfile文件: From java MAINTAINER "Eric"<eric.l ...
- Django rest framwork-CMDB API实战
一.序列化 serializers.py from rest_framework import serializers from web_manage import models class Asse ...
- 2016.6.1——Min Stack
Min Stack 本题收获: 1.可以利用两个栈操作. 2.栈的基本操作. 题目: Design a stack that supports push, pop, top, and retrievi ...
- pymongo的几个操作
# -*- coding: utf-8 -*- # @Time : 2018/9/11 17:16 # @Author : cxa # @File : mongotest.py # @Software ...
- 数据结构之队列(Python 版)
数据结构之队列(Python 版) 队列的特点:先进先出(FIFO) 使用链表技术实现 使用单链表技术,在表首尾两端分别加入指针,就很容易实现队列类. 使用顺序表list实现 # 队列类的实现 cla ...
- 泛型 for to/in 遍历 PK 效率;TEnumerator、TEnumerable
再使用泛型的时候,经常需要用到遍历功能: 只要继承了 TEnumerator 或 TEnumerable 这两个抽象类的 都具有遍历功能. 当然没有继承这两个抽象类的 也具有使用 for in 来遍历 ...
- HDU 2819 Swap(行列式性质+最大匹配)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2819 题目大意:给你一个n*n的01矩阵,问是否可以通过任意交换整行或者整列使得正对角线上都是1. ...
- 静态链接库(lib)、动态链接库(dll)与动态链接库的导入库(lib)
静态链接库与动态链接库相对应.动态链接库的导入库不同于以上两种库. 1.静态链接库(lib) 程序编译一般需经编辑.编译.连接.加载和运行几个步骤.在我们的应用中,有一些公共代码是需要反复使用 ...
- ubuntu 休眠后窗口边缘出现花边的解决方案
可以确定是nvidia显卡的问题,详细的解决方案请参见:这里 临时的解决方案: compize --replace 永久性的解决方案: sudo add-apt-repository ppa:grap ...
- sublime text配置fcitx输入法
sublime text配置fcitx输入法 环境:Fedora20 输入法:fcitx sublime text:version 3 安装fcitx输入法 这个看前面教程 编译sublime-imf ...