- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用音频线与arduino进行通信 音频信号频率计 发布时间:2013-5-16 前言部分????在多媒体电子设备中,音频设备是不可缺少的。音频就是指我们人耳正常能听到的机械振动所对应的频率范围,一般在20Hz到20kHz之间。一般来说,机械振动发声(比如人的喉咙内的空气振动)通过介质传递到声音采集器中,然后使采集器产生相应的模拟信号,这些信号通过音频接口接入一个高质量的数模转换器(就电脑而言是是声卡),转成计算机或其它多媒体设备可以处理数字信号。而如果这些设备想复原声音,只需要将信号再次返回给数模转换器,重新转换成模拟信号,驱动音响等设备产生相应的机械振动,传到耳朵里就是声音了。????说了这么多,听起来很枯燥。不过我们换个思路去思考,在这个音频的传递过程中,我们若把那些机械振动的采集和产生设备换成其他的我们想要的信号产生和接受装置,那么原则上我们是可以实现这些装置与电子设备的通信的,例如,电脑上的声卡可以帮助我们实现外部设备的拓展。我们将两个电子设备通过这一系列装置去连接,进而通信,这也是可能的。????最简单的例子便是两个手机上《会说话的tom猫》对着喊话,如果我们按照原理说,这两部手机不仅实现了通信,还是无线通信。不过,这的确是个很糟糕的例子。做过这个实验的人就发现,每次成功的概率不是很高,语音反复重复的过程很中可能因为周围的响声被混入而彻底和以前不一样。因为这里面的无线传输的实际是通过机械振动传输实现的,也就是声音。声音有强弱的差异,也就是所谓的在模拟信号中电压的大小,声卡或者其他音频处理设备要负责将他们转化和还原,并不是一件简单的事情。做个类比,这样传递过程就好像一队人从头到尾传一句话,即使话的含义不发生改变,说话的语气和其他因素也是难以复制的。不过我们如果换个方式,使用纸条的话,只要语义清晰,中间有人传下去,到最后队尾收到的肯定是队头想要表达的内容。而在电子设备的通信中,我们正是通过这种“传纸条”的方式去做。这种”纸条“,我们就叫做数字信号。那也许有人问,那声卡采集和产生的不是模拟信号吗?的确如此,不过模拟信号也可以看做数字信号,数字信号本身也可以看成一种简化了的模拟信号,本来连续的电压值被离散的限定在0和1两个数字里。正是因为我们忽略了“语气”之类的我们无法把握的信息,“纸条”才方便传递,数字信号就是这个道理。????(???不过,模拟信号才是音频设备的重头戏,不信看看森海塞尔耳机和高保真功放的价格。我们选择数字信号传播主要原因也是要避开这些不必要的成本。)那么,有什么现成的例子可以证明这个在音频设备间使用数字信号的想法是可行的呢?电话。电话在拨号时发出不同音高的声音不是偶然的,每个数字对应一个频率,这些固定频率的声音被转化成电流再通过电话线传递给控制端,控制端再根据频率的顺序得到数字的顺序,也就是电话号码,再按照既定的程序接通对应用户的电话。这样我们就用按键完成了一段指令的输入,又经过一系列的信号的传递和转换,完成了对远程终端的控制。而如果我们把这种做法更复杂化点,就是所谓拨号上网。不过,这个信号的传递所使用的频率,远远超过了音频的所谓20-20kHz定义,但是我们看到,原理还是一样的。不过,原来的声卡被换了个名字,叫调制解调器。而原来声卡中最重要的数模转换器也被尽量的简化掉了,因为我们只需要0或1,或者多几个数字而已。现在回头讨论下,为什么要利用电话上网。原因很简单,电话是最普及的音频设备,甚至说是最普及和最简单的远程通信装置,即使在网络时代也是这样。电话线的覆盖范围基本是100%,而移动通信的信号那就不必说了。这样在电话线上载入网络通信,就避免了重新布线入户的成本。而从我们的角度看,手机,mp3,电脑,这些最常见的电子设备,都有一个共同音频端口,我们甚至没有必要为这个端口做特别的修改,就能做很多事情,比如手机与单片机通信。有人说,ADK就好了?不过ADK需要新的成本,以及复杂的配置,这些配置对于一般用户来说太难以解释了,就是极客也很难上手。而音频端口,只要一根线,一个简单的放大器电路,,一个写好的通信协议,也能完成类似的事情。事实上,网络上已经流传了android利用音频线与串口通信的程序,请去电子市场搜索和下载AudioSerialOut程序,一目了然。他们的官方网站也提供了一致的思路,笔者讲在下文中讲解。????另外,iphone用户也不必发愁,虽然苹果能锁死usb,但是在国外,伟大的极客们早就悟出谁也无法锁死音频端口的事实。不信,看看这个iphone盖革管计数器。注意连接方式。?
首先是简单的电路部分。我们要做到单片机对音频信号的读取,就需要一个简单的放大电路。因为电脑音频输出大概只有几十毫伏,而arduino使用的avr单片机数字信号对应的高电平则是5v。幸运的是,因为我们需
文档评论(0)