开发者社区> 问答> 正文

声波通信原理? 400 报错

声波通信原理? 400 报错 目前声波通信已经在iphone和android中广泛的应用起来了,比如iphone中的chirp,android中的茄子快传,支付宝的声波 支付,小米快传等。这些传输技术大多都是使用声波作为握手信号,然后使用wifi或其他信道传输数据。比如茄子快传可能的实现为,接收方先建立wifi热 点,然后将热点名称通过声波发送出去,发送方在收到声波后解码出wifi热点名称,然后自动链接热点并传输文件,整个过程不需要人工干预。这些程序的核心 技术和难点在于声波通信,下面讲解声波通信原理。

        声波通信的原理其实比较简单,主要是用单频率声音信号对数据进行编码,然后播放这些单频率声音,接收方在收到声音后,识别出频率,然后根据频率解码出数 据。比如:我们可以将1500HZ的正弦波对应数字1,1600HZ的正弦波对应数字2,1700HZ的正弦波对应数字3。那么数字串3123就对应4段 正弦波,规定每段正弦波持续100ms,则3123对应400毫秒的声音段。接收方录制声音,对收到的声音进行解析,识别出 1700HZ,1500HZ,1600HZ,1700HZ四段正弦波频率,然后查找码本,解码出的数字就是3123。

        说了这么多,大家可能还会觉得比较抽象,没关系,大家可以下载声波通信的源代码自己理解, 源代码下载地址:http://www.oschina.net/question/730666_129117

展开
收起
爱吃鱼的程序员 2020-06-03 15:45:54 555 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    有ios 的么
    ######

    引用来自“恶魔XiXi”的答案

    有ios 的么
    把android的实现,用objective C实现一遍就好了
    ###### 似乎受环境的干扰比较明显。这不是这方面有没有办法解决。######

    引用来自“大树”的答案

    似乎受环境的干扰比较明显。这不是这方面有没有办法解决。
    这个很难解决,所以一般用于握手,不用于直接传输大数据
    ######请教下作者, 你例子里面是7个波段,对应的是1-6, 我想请教下如果想改成能够传递0-9 同时带有 -1,10 两个开始和结束符号。 应该如何更改代码呢? 实在是看不懂里面的算法。。。。 能有算法解释就更好了。######这个声波支付的你测试能跑么??我的是识别的时候退出!!!######这个声波支付的你测试能跑么??我的是识别的时候退出!!!请大牛指点啊######可以用的,你调试一下,可能是系统版本兼容性问题######nj_jeff: 能有时间提供个新的版本在git上? 传递数字0-9的?
    ###### 请访问sinvoice的官方网站www.sinvoice.com下载最新版本
    2020-06-03 17:27:28
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
JAVA反射原理以及一些常见的应用 立即下载
Phoenix 全局索引原理与实践 立即下载
面向失败设计 立即下载