我想用短电缆通过音频电缆(即从音频卡到手机)传递一些数据。
我正在寻找一些算法来实现这一目标。他们当然应该包括适当的调制技术,以通过音频信号传输数据,以便手机可以通过其麦克风插孔解释数据。
有想法吗?;)
(PS-我当前的想法是使用Biphase标记代码。这样做有什么好处吗?)
谢谢。
我想用短电缆通过音频电缆(即从音频卡到手机)传递一些数据。
我正在寻找一些算法来实现这一目标。他们当然应该包括适当的调制技术,以通过音频信号传输数据,以便手机可以通过其麦克风插孔解释数据。
有想法吗?;)
(PS-我当前的想法是使用Biphase标记代码。这样做有什么好处吗?)
谢谢。
Answers:
这是使用FSK的示例项目:http : //sree.cc/electronics/arduino-as-an-fsk-modem
FSK调制解调器基本上是通过频移键控技术将数字信号转换为模拟信号或声音信号的。在这里,我们可以通过上传简单的代码使Arduino成为FSK调制解调器。该项目产生并播放与数字信号相对应的声音,并将声音信号解调为相应的数字信号。
考虑使用Baudot(规格EIA / TIA-825)。它是用于TDD的协议,TDD是聋哑用户的一种调制解调器技术。它以每秒45.5位的速度传输,并且可以很好地应对恶劣的音频耦合环境。
我已经看到它是通过一些简单的频率分析(关键频率的窗口采样/滤波)软件实现的。我知道Astrix项目可以实现它,因此如果您不关心许可问题,可能会有一些代码需要审查。
有什么特殊的原因不使用您的手机中可能已经包含的调制解调器?
否则,我建议您看一下1980年代和90年代用于POTS(普通电话服务/系统)座机的低速调制解调器标准。我怀疑使用音频部分可以使用从Bell 103,212(300,1200bps)到V.32(9600bps)的音频部分,我认为该部分与美国300至〜3000 Hz的贝尔陆线标准大致相同(已校正)频率响应正负无线数字语音编解码器问题。
如果您想自己动手,则通过两音音频频移键控(AFSK)V.21可以达到300 bps ,在软件或硬件中非常容易实现。否则,使用调制解调器IC,例如Silicon Labs SI2401或CML Microcircuits FX / MX614或CMX869B。(还有很多)