Android串口通过音频插孔

xia*_*obo 13 audio android serial-port

我想通过音频插孔使用串口获取数据.我对此一无所知.但我发现应用程序音频可以发送数据.所以,我认为它应该像音频一样获取数据.有相同的项目或熟悉吗?

par*_*tje 3

您可以毫无问题地在麦克风插孔上录制音频。这样做,您基本上可以将 Android 手机用作数字示波器。然后您可以通过编程将其转换回数字 I/O。

Serial output -> Android audio input -> Sampled square block wave -> digital I/O
Run Code Online (Sandbox Code Playgroud)

请注意,大多数串行电平为 5V 或 3.3V。这会破坏你的麦克风输入!消费音频电子产品的峰值电平通常为 1.7V。您需要使用两个电阻器创建一个分压器,以便能够将 Android 麦克风输入用作串行输入。如果您想创建一个按照规范 (http://en.wikipedia.org/wiki/RS-232#Voltage_levels) 运行的设备,您将需要能够处理 -3V 至 +25V!

然后您需要对音频输入进行采样。请参阅http://en.wikipedia.org/wiki/File:Rs232_oscillscope_trace.svg,了解您将收到的输入内容的示波器跟踪。您需要创建 Java 代码来检测 RS-232 的时序以及起始位和停止位(如果已配置)。

我认为你的项目的决定因素是手机的 CPU 速度。我不确定您是否能够以 19200 波特率与远程方通话并同时生成 UI。

顺便说一下,也可以进行相反的操作(生成方波来驱动串行输出),但需要一些电压倍增器(达林顿链或其他基于晶体管的方法)将电压增加到所需的水平(+5V)。