1

我正在为一个孩子构建一个辅助 iOS 应用程序,该应用程序使用开关来控制他的计算机(一个简单的按钮,只能将一个按摩发送到计算机)。

我正在寻找一种将我的应用程序连接到可以将点击事件发送到我的应用程序的开关的方法。它可以通过BT,IR甚至通过耳机连接(耳机端口)。

(顺便说一句,他不能使用 iOS 屏幕作为开关)。

有任何想法吗 ?

4

3 回答 3

1

BT 连接要求您是经过认证的 MFi 开发人员,这需要资金和真实的公司。

耳机端口将是一个很好的接口。您可以在麦克风线和地线上连接一个简单的开关,我认为这会为打开和关闭创建一个方波占空比。我做过类似的事情,我们使用耳机端口通过声波与微控制器通信,然后将声波转换为 16 位数据包并用于控制其他硬件并从该硬件提供反馈。

另一种选择是 wifi 连接,带有 wifi shield 的 arduino 和上面的按钮。

编辑:我想得越多,我就越会说使用耳机端口。它将非常便宜,检测印刷机的编程将非常容易,这可能是实现您的解决方案的最快方法。前提是你可以焊接。

于 2012-01-22T16:36:10.090 回答
0

一种廉价的解决方案是使用耳机端口上的麦克风或麦克风输入。将开关连接到某种音调发生器(555 定时器或 Arduino,加上压电扬声器或耳机电缆)。让应用程序运行输入音频队列,并将音频队列输入缓冲区传递给 DSP 窄带滤波器或 FFT。监测音调发生器的频带是否存在高于背景噪声水平的任何显着能量突发。可能为不止一个开关使用多个单独的音调频率。

补充:另一个简单的替代方法可能是使用开关来激活螺线管或小型电机(从旧的电动玩具或类似玩具中清除)以轻敲 iPod Touch 显示屏上的电容笔或导电泡沫球。无需 MFi、WIFI 或音频 DSP 编码。

于 2012-01-22T17:59:03.603 回答
0

我将建议走一条不同的道路。与其尝试将交换机直接连接到 iPhone,不如使用Arduino板之类的东西,将物理交换机和以太网 I/O 端口都插入本地网络,并创建相当于物理 I/O 服务器的东西。

Arduino 处理物理接口,而您的 iPhone 应用程序只需处理通过 Wi-Fi 与 Arduino 的通信协议。

于 2012-01-22T18:26:35.443 回答