首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在os x 10.9中编写usb触摸屏驱动程序kext?

如何在os x 10.9中编写usb触摸屏驱动程序kext?
EN

Stack Overflow用户
提问于 2013-12-31 01:43:32
回答 1查看 2.3K关注 0票数 1

我想为usb触摸屏写一个usb触摸屏文本。我读过内核扩展编程主题和I/O工具包的基本原理等,我的问题是:1。如何从触摸屏获取输入报告信息?如何将坐标信息发布到系统中?

我不知道,有人帮忙吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-31 02:24:14

这取决于硬件;而且,这个问题相当广泛--为了得到更具体的答案,您需要在您的问题中更加具体。我将尝试提供一个概括性的概述:

触摸屏有两个部分:

  1. 输出:在显示器上显示来自计算机的图像。
  2. 输入:要反馈到计算机中的触摸事件

由于您还没有询问(1),我假设您的设备只是插入Mac上的显示端口,并且已经正确显示了。如果不是,您将需要查看IOFramebuffer API。

对于(2) -几乎所有的USB输入设备都是某种形式的HID设备。如果您是新的隐藏在一般情况下,您可能希望阅读和理解USB规范及相关文档,因为您将使用该信息贯穿。

OSX已经提供了对标准HID设备类的全面支持,例如键盘、鼠标、触摸屏、图形平板等等。如果您的设备声称是任何类型的HID设备,OSX应该已经检测到它并将其通用的HID驱动程序附加到它上。您应该在I/O注册表中看到一个IOUSBHIDDriver实例(例如。使用苹果的IORegistryExplorer工具,或命令行上的ioreg )。

我也希望您的设备符合HID的绝对指向设备配置文件,因此至少一次触摸应该已经正常工作。如果它是一个多点触摸设备,或者您需要其他额外的特性,您可能希望实现一个生成或转换必要的多点触摸事件的IOUSBHIDDriver子类。

如果您的设备由于某种原因还不是HID USB设备,您将需要为它编写一个自定义USB驱动程序,并将来自它的事件转换为HID事件,因为HID事件将直接传递到用户空间并在那里处理。实际上,您可以编写USB驱动程序并从用户空间生成HID事件,因此,如果您愿意的话,您可能完全可以避免编写任何内核代码。

Apple提供了一些关于HID的文档:

如果要编写自己的内核HID设备驱动程序,最好的选择可能是IOHIDFamily源代码。您可能还可以在web上找到一些开源示例。

苹果的USB邮件列表可能也值得一查,无论是存档还是你是否有疑问。达尔文内核和达尔文驱动程序列表也是相关的。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20850456

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档