android 触摸防抖,一种触摸屏防抖优化方法、系统及触摸屏终端与流程

db14fd242919bcb320509b233c033b76.gif

本发明涉及触摸屏技术领域,尤其涉及一种触摸屏防抖优化方法、系统及触摸屏终端。

背景技术:

随着电子信息产业的快速发展,触摸屏作为具有人机交互功能的智能产品,应用面极为广泛,但其存在着较多的触摸抖动问题。现有的去抖动方法是判断当前触点坐标与其前一个触点坐标的距离是否小于或等于阈值,借此判断当前的触点坐标是否发生抖动,如果发生抖动就将当前的触点坐标丢弃,这种方法极易造成画线不连续的问题;此外,以电阻触摸屏为例,普通去抖动方法只是通过延时采样剔除散点来解决,然而触摸屏越大,分布的杂散电容也越大,切换通道到稳定采样的时间也会越长,再使用上述方法就必须加大延时时间,必定会严重降低响应速率和ADC的使用效率,不能保证ADC采样的数据的准确性。

技术实现要素:

针对上述存在的技术问题,本发明提供了一种触摸屏防抖优化方法、系统及触摸屏终端,所述触摸屏防抖优化方法包括以下步骤:连续获取触摸屏当前触点的坐标,对获取的坐标按照坐标值从小到大或从大到小排序,筛选排序得到序列两端的特定个数采样点的抖动坐标,去除抖动坐标;所述特定个数是触摸屏电容达到充电饱和前的采样点的个数。

优选地,还包括对去除抖动坐标后的触点坐标进行低通滤波;

优选地,多次获取触摸屏当前触点的坐标的具体步骤包括:

A1、识别触点信号,触发中断程序;

A2、切换坐标轴;

A3、ADC进行采样;

A4、采样结束,切换至另一坐标轴,ADC再次进行采样;

A5、再次采样结束,跳出中断程序;

A6、执行A1-A5。

优选地,所述触摸屏电容达到充电饱和前的采样点的个数为1~3个。

所述触摸屏防抖优化系统,包括获取模块,用于多次获取触摸屏当前触点的坐标;排序模块,用于对获取的坐标进行排序;筛选模块,用于筛选排序所得序列两端的特定个数的抖动坐标,并去除抖动坐标,所述获取模块、排序模块和筛选模块依次相连。

所述排序模块的排序是将采样按坐标值从大到小依次递减排序或从小到大依次递增排序。

所述筛选模块筛选的特定个数是触摸屏电容达到充电饱和前的采样点的个数。

所述触摸屏终端,包括前述触摸屏防抖优化系统。

本发明解决了现有技术中未经排序筛选直接剔除抖动点所造成的画线不连续的问题,同时提升了触摸屏的响应速率和ADC的使用效率,此外利用低通滤波,更好地保证了输出信号的连续性,实现了对触摸屏数据的优化。

附图说明

图1为触摸屏防抖优化方法的流程图;

图2为触摸屏防抖优化方法的另一种流程图;

图3为触摸屏防抖优化系统的结构框图;

图4为触摸屏防抖优化系统的另一种结构框图;

图5为触摸屏终端的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

实施例1

图1为触摸屏防抖优化方法的流程图。

步骤101,多次获取触摸屏当前触点的坐标,步骤102,对获取的坐标进行排序,步骤103,筛选排序所得序列两端的特定个数的抖动坐标,步骤104,去除抖动坐标。其中,所述的多次获取触摸屏当前触点的坐标的具体步骤包括:

A1、识别触点信号,触发中断程序;

A2、切换坐标轴;

A3、ADC进行多次采样;

A4、再次切换至另一坐标轴,ADC再次进行多次采样;

A5、跳出中断程序;

A6、当产生触点中断时,执行A1-A5。

以四线电阻屏为例,触点信号的识别,是根据检测特定引脚,如INT引脚的电平状态实现的;ADC进行的多次采样原理如下,对X轴(水平轴)给电压,Y-(竖直轴一端)悬空,测Y+(竖直轴另一端)处电压。此时Y+处相当于X轴按下位置的抽头点,X轴坐标即为X_Pos=Vadc/Vx*X_Length。式中X_Pos为实际触点位置,Vadc为ADC采样电压,Vx为X轴上的整个压降,X_Length代表X轴的长度。通过切换坐标轴后多次采样的方法,延长坐标轴电压稳定时间,以降低电容充放电带来的干扰。

对获取的坐标排序,包括从大到小依次递减排序或从小到大依次递增排序。

由于多次采样时坐标轴并未切换,所以触摸屏电容将在特定个数采样点后达到饱和充电,如果触点中断产生,会有特定个数的采样点发生漂移现象,故将特定个数确定为触摸屏电容达到充电饱和前的采样点的个数。

在另一种实施例中,如图2所示,还包括步骤201,对去除抖动坐标后的触点坐标进行低通滤波,滤波原理如下:

y[n]=a*x[n]+(1-a)*y[n-1],其中y[n]为本次滤波结果,x[n]为本次采样值,y[n-1]为上次滤波结果,a为滤波系数,a的数值的大小可以通过实际采集的数据通过画图的方式调节。

实施例2

图3为触摸屏防抖优化系统的结构框图。

触摸屏防抖优化系统,包括获取模块301,用于多次获取触摸屏当前触点的坐标;排序模块302,用于对获取的坐标进行排序;筛选模块303,用于筛选排序所得序列两端的特定个数的抖动坐标,并去除抖动坐标。其中,排序模块的排序包括从大到小依次递减排序或从小到大依次递增排序。筛选模块筛选的特定个数为至少1个,至多3个。

在另一种实施例中,如图4所示,还包括低通滤波模块401,用于对去除抖动坐标后的触点坐标进行低通滤波。

其中,所述低通滤波模块可以是一级递归滤波器,滤波原理如下:

y[n]=a*x[n]+(1-a)*y[n-1],其中y[n]为本次滤波结果,x[n]为本次采样值,y[n-1]为上次滤波结果,a为滤波系数,a的数值的大小可以通过实际采集的数据通过画图的方式调节。

实施例3

图5是触摸屏终端的结构框图。

触摸屏终端包括了上述触摸屏防抖优化系统。

本发明方案所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括由以上技术特征任意组合所组成的技术方案。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/574829.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 基于数据库资源的多语言实现...

以前的开发平台里,是用xml语言包实现了多语言功能,现在新的平台里进行了调整,把多语言包资源放在数据库表里实现了。 我们系统预留了多语言的配置全局变量、可以通过配置这个参数达到切换多语言的目的 我们在选项管理里增加一个多语言选择的选…

C语言第一节 C语言程序与开发工具

开发工具的选择 可以用来写代码的工具:记事本、UltraEdit、Vim、Xcode等 选择Xcode的原因:苹果官方提供的开发利器、简化开发过程、有高亮显示功能 使用Xcode新建一个C程序的源代码文件(拓展名为.c或者.C) 打开Xcode 新建文件 选择…

列表视图

列表视图 分类: SharePoint入门2014-10-14 00:10 298人阅读 评论(0) 收藏 举报SharePointlist view使用View,可以按照特定的要求和条件展示List/Library里面的条目。View可以做一下设定来显示数据: 1. 显示哪些属性(column) 2. 属性…

鸿蒙系统下载 绿色,PGWARE PcMedik

pcmedik,一款可以优化你的电脑,让pc发挥更大的性能,大大减少死机的事件。pcmedik操作简单,其优化过程只需三个步骤:①选择一个本机当前正在使用的操作系统。②选择本机使用的cpu类型。③点击[优化&#xff…

Android Audio Play Out Channel

1: 7嘴8舌 扬声器, 耳机, 和听筒 就是通过: audiomanager.setmode(AudioManager.MODE_IN_COMMUNICATION)audiomanager.setSpeakerhponeOn(boolean value).这两个来设置.不过有的好像不支持的. 米手机上切换 扬声器和听筒不能切换 Android AudioTrack音频播放分析 音频资源在播…

redis 缓存 @class: 会有 $hibernateproxy_微信亿级在线点赞系统,用Redis如何实现?

点赞功能大家都不会陌生,像微信这样的社交产品中都有,但别看功能小,想要做好需要考虑的东西还挺多的,如海量数据的分布式存储、分布式缓存、多 IDC 的数据一致性、访问路由到机房的算法等等。图片来 Pexels本文介绍大型社交平台点…

查询hive表_大数据中Hive与HBase的区别与联系

二者区别Hive:Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能。Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑。hive需要用到hdfs…

查询使用NoLock

当我们在操作数据库的时候,无论是查询还是修改数据库的操作我们都习惯使用using(var dbnew XXXDB()){},但是如果仅仅是做查询,最好是使用NoLock,因为NoLock使用的是共享锁,可以减少死锁发生的机率。 从上图中代码可以看…

端午粽香html5游戏,《快乐端午粽飘香》亲子活动教案

《快乐端午粽飘香》亲子活动教案过端午节是我国两千多年来的习惯,为了让幼儿更好地了解端午节,感受端午节丰富的文化内涵,激发初步的爱国主义情感,丰富生活经验,应届毕业生考试网小编特意为大家整理了《快乐端午粽飘香…

d3js绘制y坐标轴_【ggplot2】 设置坐标轴

基本箱线图library(ggplot2)bp ggplot(PlantGrowth, aes(xgroup, yweight)) geom_boxplot()bp反转 x轴 与 y轴bp coord_flip()离散型数据的坐标轴改变坐标轴中各项目的顺序 > 特别注意, 离散数据的坐标轴中数据做为 factor 变量处理,他的位置取决于 level的顺序# 手动设置…

html页面判断是否登录,egg(103)--egg之定义公共的中间件判断用户是否登录以及去结算页面制作...

判断用户是否登录中间件app/middleware/userauth.jsmodule.exports (options, app) > {return async function init(ctx, next) {//判断前台用户是否登录 如果登录可以进入 ( 去结算 用户中心) 如果没有登录直接跳转到登录var userinfo ctx.service.cookies.get(userinfo)…

计算机应用的时间地点意义,计算机应用在教学中的作用

计算机应用在教学中的作用微课已成为当前我国教育信息化发展的重点和热点。在如今的数字化“微”时代,微课将成为一种新的教学模式和学习方式。下面是小编搜集整理的相关内容的论文,欢迎大家阅读参考。摘要:随着我国科技和技术的不断发展&…

启继承父位在什么时候_为什么少儿口才现在越来越受到家长们的重视

情商口才是个人素养、能力和智慧的一种综合反映,随着社会的发展,少年儿童的早期教育越来越受到家长的重视,特别是在培养孩子的语言表达能力中,更多的家长开始寻求各种方法来锻炼孩子的语言表达能力。源自于美国教育演说家卡耐基的…

x光肺部分割数据集_吴恩达发布了大型X光数据集,斯坦福AI诊断部分超越人类 | AAAI 2019...

数栗子 发自 凹非寺量子位 报道 | 公众号 QbitAI最近,吴恩达的斯坦福团队发布了一个叫做CheXpert的大型数据集,论文中选了AAAI 2019。它包含了224,316张标注好的胸部X光片,以及放射科医师为每张胸片写的病理报告。虽然,像从前NIH发…

【Qt之Quick模块】6. QML语法详解_1 基础语法与三种导入语句

前言 通过以上1-5文档的介绍,Quick与QML的概念及QML语法、类型、文件作用等已叙述个大概,接下来是对QML语法进行展开来说。 其实,学习任何一门语言或者做任何一件事情,并不用一开始就要求尽善尽美,做个无懈可击&…

datagrip将一个数据库中的数据_跨平台数据库管理神器DataGrip,用上就爱不释手...

原文链接:https://www.ffeeii.com/2041.htmlDataGrip是Jetbrains旗下众多优秀的效率生产工具之一。下载地址:https://www.jetbrains.com/datagrip/DataGrip是多引擎数据库环境,支持几乎常见的数据库类型:PostgreSQL、MySQL、Oracl…

idea下拉项目_推荐几款非常好用的IDEA插件(香)

每天进步一点点,坚持下去,你总是会不一样的。加油!最近在整理Java常用的一些基础、ZooKeeper、Spring全家桶、源码、Dubbo、Elasticsearch、Redis、MySql、RabbitMQ、Kafka、Linux 、微服务等技术栈。持续更新中,欢迎点上面后端架…

ora 00900 已编译但有错误_技术分享|万万没想到!编译错误竟然还没灭绝???

CodeWisdom-技术分享万万没想到!编译错误竟然还没灭绝???复旦大学CodeWisdom团队的代码分析和挖掘小组针对开源软件项目持续集成过程中出现的编译错误,进行了大规模的经验研究。该研究分析了常见的编译错误类型、修复代…

用计算机心如止水,计算机网络数据链路层

1、数据链路层使用的信道类型:点对点信道(1对1)广播信道(1对多),如:集线器、交换机2、链路与数据链路:链路:点对点的物理线路段,中间无任何其他交换结点数据链路:通信协议 软件 硬件(一般用适…

easyui tree动态加载_动态路由:Gin vs SpringMVC

这两天在接触Gin,对它的动态路由功能比较感兴趣,特意做了笔记,顺便跟SpringMVC作下对比。1.简介Gin是使用Go/golang语言实现的HTTP Web框架。接口简洁,性能极高。截止1.4.0版本,包含测试代码,仅14K,其中测试代码9K左右,也就是说框架源码仅5K左…