Windows集成笔设备一般是指屏(数字化仪/笔数字化转换器)和笔(笔传感器)构成的整体。屏、笔、主机之间的连接包含了屏与笔的连接、屏与主机的连接、笔与主机的连接,集成笔的主要功能由屏与笔的连接和屏与主机的连接来实现,笔与主机的连接可以实现一些可选的扩展功能。

屏与主机的连接

屏通过USB或I2C或SPI(或其他能够提供兼容的HID驱动的总线),使用HID连接到主机上。

在微软的一些文档中,会把数字化仪(屏)和笔传感器(笔)组合在一起叫做集成笔设备。在物理层上,和主机连接的是屏(标准笔设备,不包含笔和主机的蓝牙连接)

  • Pen Reports用于实现书写和向主机传递笔的唯一标识符
  • Mouse Reports用于在Win10以前的系统上显示鼠标光标
  • Device Certification Status
  • Latency Mode用于主机通知集成笔设备何时进入高延迟(低功耗)模式

    笔与主机的连接

    笔通过蓝牙使用HID连接到主机上,主要实现触觉反馈、提笔检测、快捷按键功能。

  • Stylus Identifier用来传递笔的唯一标识符。触摸屏也会给主机传递笔的唯一标识符,因此主机系统可以将笔与触摸屏的输入报告关联起来
  • Haptic Parameters/Waveform/Configuration用于实现触觉反馈(即某些操作会使笔身振动)
  • Keyboard Reports用于实现提笔检测和快捷按钮
    • 放入/取出笔槽时报告WIN+CTRL+F19/WIN+CTRL+F20的键盘组合按键
    • 单击/双击/长按快捷按钮时报告WIN+F20/WIN+F19/WIN+F18的键盘组合按键

笔与主机的蓝牙无缝配对

Surface pro8和pro11的笔看标签应该是同一个型号的,两支笔在两个平板上都能自动连接(放入充电槽或者靠近屏都可以),已经有笔连接的情况下,另一支笔也可以自动连接。

hp的笔也是mpp协议的,在surface上可以书写,但不能自动连接。

把surface的笔放在旁边,然后用hp的笔在surface上书写,不能自动连接上surface的笔,这说明笔需要发送某些信息才能够触发自动连接。(笔靠近屏时可以通过mpp协议发送信息给屏,通过屏传递给系统,放入充电槽时怎么发送给系统?通过NFC传递给充电槽,由充电槽传递给系统?)

实现笔与系统的蓝牙无缝配对需要相关的设备实现Microsoft Bluetooth Out-of-Band集合(这是Vendor-defined类型的集合,usage_page为0xFFF4,usage_id为0x01)。该集合应由屏或充电槽实现。

Device Capability Report用于主机向设备报告自己是否支持无缝配对,并获取设备是否支持无缝配对

Device Bluetooth Report用于向主机报告笔的蓝牙参数

Host Bluetooth Report用于主机向设备提供自己的蓝牙参数

Pairing Key Report用于主机向指定的笔发送蓝牙配对密钥

无缝配对的一般流程:

笔与屏的连接

笔与屏之间没有一一对应的连接关系,只要符合约定的电气传输的协议就能够进行通信。笔输出的是经过编码的高压打码信号,触摸屏按照约定的协议对主动笔的信号进行采样和解码,得到笔尖位置、压力等信息。用于约定笔和触摸屏之间电气信号的交互流程、时序、频点等信息的就是主动笔协议(也就是说,协议没有定义触摸屏/主动笔如何跟系统交互),目前使用比较广泛的是微软主导的MPP协议和谷歌主导的USI协议。

笔到触摸屏的通信使用笔尖的编码脉冲,触摸屏到笔的通信使用整屏的编码脉冲

主动式电容笔和被动式电容笔的最大区别在于,主动式电容笔的内部电路会通过电极向触摸屏发送电信号,从而实现更高性能的书写。主动式电容笔并不会以无线传输的方式与触摸屏或系统进行通信。和被动式电容笔的基本原理一样,触摸屏需要通过检测它和笔尖之间的电信号来识别触摸。区别在于,使用被动式电容笔时,电信号是触摸屏-笔尖-人-地通路产生的,需要较粗的笔尖来产生电信号,而使用主动式电容笔时,电信号是笔的内部电路产生后通过笔尖电极传输到触摸屏的,笔尖可以做到很细。

MPP历史版本

  • mpp1.51:支持单个传输电极并提供 1024 级压力灵敏度
  • mpp2.0:支持两个传输电极以实现倾斜功能,并将压力灵敏度提高到 2048 级
  • mpp2.5:支持触摸和显示驱动程序集成(TDDI)
  • mpp2.6:添加了蓝牙和触觉反馈功能(通过带上行的笔协议实现触觉反馈跟mpp有关,通过蓝牙实现触觉反馈跟mpp无关)

参考链接

MPP_2.0_TC.pdf

应用于电容笔的双协议切换方法_参考网

Windows 笔无缝配对实施指南_ Microsoft Learn

触觉笔实施指南_Microsoft Learn

集成笔设备所需的 HID 顶级集合_Microsoft Learn

Windows集成笔设备的更多相关文章

  1. Windows 数字化器类输入设备--笔设备分析(1)(原创)

    一.前言: 参考microsoft公司的链接:https://developer.microsoft.com/zh-cn/windows/hardware 将对Windows数字化器类输入设备--笔设 ...

  2. 没有了SA密码,无法Windows集成身份登录,DBA怎么办?

    一同事反馈SQL无法正常登录了,以前都是通过windows集成身份验证登录进去的(sa密码早忘记了),今天就改了服务器的机器名,现在无论如何都登录不进去. SQL登录时如果采用windows集成身份验 ...

  3. Windows集成认证全过程

    开发环境:win7旗舰版,vs2013 服务器环境:windows server 2008 R2 IIS7.5 目的:在局域网搭建一个网站,用户必须使用域帐号登录网站访问 Step 1: 创建proj ...

  4. [转]没有了SA密码,无法Windows集成身份登录,DBA怎么办?

    没有了SA密码,无法Windows集成身份登录,DBA怎么办?  原文:http://www.cnblogs.com/i6first/p/3512779.html 一同事反馈SQL无法正常登录了,以前 ...

  5. 配置ArcGIS Server使用Windows AD Windows集成身份认证

    1.配置 ArcGIS Server 以使用 Windows Active Directory 用户和角色. 2.填写Windows域账号凭证,对账号的要求如下: 需要能读取域中的用户和组,一般从属于 ...

  6. SQL SERVER SA密码忘记,windows集成身份验证都登录不了不怎么办

    有时候SQL SERVER 的SA强密码策略真的很烦人,不同的系统密码策略又不一样,导致经常会忘记密码,这不,这回我本机的SQL SERVER很久不用了,彻底忘了密码是什么.查了一下资料还是找到了解决 ...

  7. windows I/O设备

    当外部设备连接到windows后,设备所连接到的集线器驱动程序将为设备分配硬件ID,然后Windows 使用硬件 Id 查找设备与包含设备驱动程序的驱动程序包之间最近的匹配项. 如果查找到,设备就可以 ...

  8. windows集成身份验证

    集成windows身份验证 这种验证方式里面也分为两种情况 NTLM验证 这种验证方式需要把用户的用户名和密码传送到服务端,服务端验证用户名和密码是否和服务器的此用户的密码一致.用户名用明码传送,但是 ...

  9. Windows驱动开发-设备读写方式

    设备读写方式共三种: 方式 Flag 特点 缓冲区方式读写 DO_BUFFERED_IO I/O管理器先创建一个与用户模式数据缓冲区大小相等的系统缓冲区.而你的驱动程序将使用这个系统缓冲区工作.I/O ...

  10. windows驱动开发-设备扩展

    设备对象Device_Object记录通用设备信息,另外一些信息记录在设备扩展里,设备扩展由程序员自己定义,由程序员指定内容和大小,由I/O管理器创建,并保存在非分页内存中. 驱动程序中,尽量避免使用 ...

随机推荐

  1. UFT 对文件的处理(scripting.filesystemObject)

    1. 文件路劲 2. 文件大小 3.写 4. 读 5. 复制 6. 内容替换

  2. 八、make编译输出重定向

    4.编译输出重定向 ​ 将 make 命令的标准输出(stdout)和标准错误输出(stderr)重定向到文件,以便于查看编译日志,快速分析定位问题. 1.重定向到同一个文件 语法: make > ...

  3. javascript中IIFE(立即执行函数表达式)到底是咋来的?

    介绍 IIFE(Immediately Invoked Function Expression),中文名称:立即执行函数表达式,其实IIFE最早并不叫这个名字,而是叫做Self-Executing A ...

  4. CF1989C Two Movies 题解

    CF1989C Two Movies 贪心.如果某人对两部电影评分不一样,显然取评分高的那一个.如果是 \(1\) 和 \(0\) 或 \(1\) 和 \(-1\),那么显然取 \(1\).如果是 \ ...

  5. CF1344F Piet's Palette 题解

    CF1344F Piet's Palette 我们发现,如果两项颜色相同,则把两项都删去,这很符合异或的性质.再结合后面一条两项颜色不同,将这两项替换为与这两种颜色不同的颜色,我们发现需要找到三个数 ...

  6. 1008acm

    很简单电梯题目水题 不会的话 参考discuss 重复的楼层要增加时间 #include<cstdlib> #include<cstdio> #include<strin ...

  7. sciTech-BigDataAIML-AI 发展的"四个阶段“: "看懂世界”到“改造世界”:Perception AI → Generative AI → Agentic AI → Physical AI

    sciTech-BigDataAIML: Abbreviation(英文缩写词): CV( Computer Vision ) = 计算机视觉, 是 AI (人工智能) 领域的一个重要分支, 研究如何 ...

  8. 优化UGUI的ScrollRect

    http://qiankanglai.me/2015/08/15/LoopScrollRect/ https://github.com/qiankanglai/LoopScrollRect

  9. luoguP1115 最大子段和

    最大子段和 题目描述 给出一个长度为 \(n\) 的序列 \(a\),选出其中连续且非空的一段使得这段和最大. 输入格式 第一行是一个整数,表示序列的长度 \(n\). 第二行有 \(n\) 个整数, ...

  10. bash shell 中 使用 cat > filename << EOF 创建文件

    https://www.cnblogs.com/yaolaoer/p/18155977 1. 保留原本格式 FILE="www.txt" cat > ${FILE} < ...