1、简介
TP IC芯片的ESD防护等级为±2KV. 整机时,根据整机的密封及导流能力,可达最高防护等级4:接触±8KV, 空气±15KV. 冬天,人体容易产生大量静电,如脱毛衣时,
容易对电子设备产生影响,导致工作不正常。TP/LCD因为处于设备表层,属于受影响较大的模块之一。为了降低影响,ESD_Check机制是目前常用的手段。
ESD_Check概念:当芯片受外部干扰,工作不正常时,如TP报点或LCD显示异常,芯片会进入“重生”模式:reset.
2、方式: 目前主流方式有2种:
方案1:内核起一个周期性线程,读tp ic固定寄存器,如果值多次无变化,则判断固件异常,reset;
优秀代表: Focal
方案2:内核起一个周期性线程,同时固件周期性拉中断更新一个timer值,如果内核线程判断timer更新超时,则判断为固件异常,
reset. 优秀代表:Nova
2.1: focal
2.1.1代码流程:
2.1.2关键数据结构:
2.1.3蓝领:
5: TDDI IC, LCD reset之后,TP恢复默认设置(本功能已废止,LCD直接走suspend/resume流程)
/* 6. Get Chip ID */
hardware_reset = get_chip_id(ts_data); //读chip_id失败,直接reset
-> fts_esdcheck_tp_reset(ts_data);
/* 7. get Flow work cnt: 0x91 If no change for 5 times, then ESD and reset */
if (!hardware_reset) {
hardware_reset = get_flow_cnt(ts_data);
}
注意:
a:有触摸事件时,不触发esd检测机制;
b: 目前focal默认推荐的机制最长需要6秒的时间能定位一个esd问题,并触发reset.
2, Nova
2.1 概述 固件周期性拉中断,如,1s, 从固件中读取到的值中判断是esd/触摸中断,走不同流程。
2.1.1 驱动流程
2.1.2 中断处理函数
2.1.2.1 固件固定地址如果上报了0xFD, 0xFE,则判断为固件异常,直接reset;
2.1.2.2 固件固定地址如果上报了0x77,为esd事件,走esd流程,并退出中断;
2.1.3 蓝领
2.1.3.1
Esd每隔1s拉一次中断,实时更新irq_timer;
2.1.3.2
Delayed_work 每隔1.5s判断 irq_timer是否超过1.5s没有更新,如果是,则断定为发生了esd事件,走固件更新流程。
注意:
a:有触摸时,固件不拉esd中断,每个触摸事件,也会更新 irq_timer;
b:没有触摸时,默认最长3s可以定位一次esd事件并reset
小小心得:
从tp esd事件的检测流程上看,默认情况,nvt效率比focal最少高一倍,但多了触发int的开销。从设备的角度看,只有IC/固件最清楚自己是否有异常,因此由IC端来判断是否要reset,更合理。
欢迎使用Markdown编辑器
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。
新的改变
我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:
- 全新的界面设计 ,将会带来全新的写作体验;
- 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
- 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
- 全新的 KaTeX数学公式 语法;
- 增加了支持甘特图的mermaid语法1 功能;
- 增加了 多屏幕编辑 Markdown文章功能;
- 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
- 增加了 检查列表 功能。
功能快捷键
撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
查找:Ctrl/Command + F
替换:Ctrl/Command + G
合理的创建标题,有助于目录的生成
直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC
语法后生成一个完美的目录。
如何改变文本的样式
强调文本 强调文本
加粗文本 加粗文本
标记文本
删除文本
引用文本
H2O is是液体。
210 运算结果是 1024.
插入链接与图片
链接: link.
图片:
带尺寸的图片:
居中的图片:
居中并且带尺寸的图片:
当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。
如何插入一段漂亮的代码片
去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片
.
// An highlighted block
var foo = 'bar';
生成一个适合你的列表
- 项目
- 项目
- 项目
- 项目
- 项目1
- 项目2
- 项目3
- 计划任务
- 完成任务
创建一个表格
一个简单的表格是这么创建的:
项目 | Value |
---|---|
电脑 | $1600 |
手机 | $12 |
导管 | $1 |
设定内容居中、居左、居右
使用:---------:
居中
使用:----------
居左
使用----------:
居右
第一列 | 第二列 | 第三列 |
---|---|---|
第一列文本居中 | 第二列文本居右 | 第三列文本居左 |
SmartyPants
SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:
TYPE | ASCII | HTML |
---|---|---|
Single backticks | 'Isn't this fun?' |
‘Isn’t this fun?’ |
Quotes | "Isn't this fun?" |
“Isn’t this fun?” |
Dashes | -- is en-dash, --- is em-dash |
– is en-dash, — is em-dash |
创建一个自定义列表
-
Markdown
- Text-to- HTML conversion tool Authors
- John
- Luke
如何创建一个注脚
一个具有注脚的文本。2
注释也是必不可少的
Markdown将文本转换为 HTML。
KaTeX数学公式
您可以使用渲染LaTeX数学表达式 KaTeX:
Gamma公式展示 Γ ( n ) = ( n − 1 ) ! ∀ n ∈ N \Gamma(n) = (n-1)!\quad\forall n\in\mathbb N Γ(n)=(n−1)!∀n∈N 是通过欧拉积分
Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=∫