手机遥控器,3.5mm耳机接口红外遥控改造解析
很多家电都用红外遥控,如电视机、机顶盒、空调、电风扇等。越来越多的遥控器反而给我们带来了更多的问题,有时找不到遥控器放哪儿了,或者混淆了都是麻烦,事实上对手机进行简单的改造,可以自制一个万能红外遥控器,来看看我们如何“掌控”家中电器的。
方案解析:红外遥控器发送数据时,是将二进制数据调制成一系列的脉冲信号用940nm波长的红外发射管发射出去,红外载波为频率38KHz的方波,红外接收端在收到38KHz的载波信号时会输出低电平,否则输出高电平,从而可以将“时断时续”的红外光信号解调成一定周期的连续方波信号,再经过一体化红外接收头解调便可以恢复出原数据信号。接收部分是用一体化红外接收头,它将红外接收二极管、放大、带通滤波、解调、整形等电路做在一起,当接收到此码时,单片机便会对编码分析并处理,从而实现对家用电器的控制。
本次采用的第二种方案是通过普通 MP3发出音频的0、1编码,然后用三极管放大并加载到由555时基电路发出的38K载波中,通过调幅实现遥控。
材料:940nm红外发射管、3.5mm耳机公头、NE555集成块、10K电阻、4.3K电阻、1.8nf电容、10nf电容、8050三极管、3.7V锂电池、洞洞板(万能电路板)、废旧耳机线。
工具:电烙铁、剪刀、热熔胶、胶带等。
软件:AdobeAudition CS6(windows平台)、遥控精灵(IOS平台)。
智能手机红外改造方案:软件+红外发射二极管
在智能手机上改造红外遥控功能其实很简单,我们通过3.5mm耳机插孔,制作一个可插拔的红外发射器,再通过软件完成红外遥控。
首先,准备一个3.5mm耳机插头,最好是带有金属尾罩的,这样焊接好红外发射管装在里面,只露出LED部分,不仅美观也能起到保护红外发射LED的作用。拧开3.5mm耳机插头金属尾罩部分,可以看到露出的三个焊接点,从后往前数它们分别是左声道、右声道和地线。
此次制作的红外遥控只需在左、右声道上焊接,首先把红外LED两个管脚分别剪成1cm和1.2cm(因为左右声道在一起发出的音频信号是交流信号,所以红外发光二极管会在交流的正半周期或负半周期被导通进行工作,不分正负极),然后用烙铁把红外LED的两极分别焊接在耳机插头的左右声道上就可以了。


把红外LED两极焊接在3.5mm插头的左右声道上
因为耳机插头是铜质,导热性很强,所以焊接时候不要用手捏着耳机插头进行焊接,以防烫伤,用木质夹子夹住再焊接就行了。铜质插头导热性强也导致局部焊点温度偏低,在焊接的时候我们可以把烙铁在焊点上多接触2、3秒,使得焊锡完全融化,避免虚焊发生。最后拧上3.5mm耳机插头的金属尾罩就制作完成了。
在苹果或安卓手机上下载《遥控精灵》软件,进入高级设置,ZAZA最大音量调至100%(音量增大可提高发射功率),再返回“遥控”——“添加”中选择对应品牌的设备,如果不知道什么设备也可以在匹配界面根据提示进行遥控器的匹配。



《遥控精灵》的使用界面比较直观容易上手

简易的红外发射头制作完成
非智能机及MP3改造方案:音频文件+38K红外发射
对于非智能手机或者是MP3/4有没有办法让它们实现红外遥控呢?答案是肯定有的。先用555制作一个38KHZ发生电路,再用音频信号加载在三极管的基极当做开关去控制38KHZ的发生和停止,从而控制红外LED发出有二进制码的38KHZ载波就行了。
STEP 1制作38KHZ发生电路
按照电路图在洞洞板上焊接NE555,由于元件很少,所以笔者直接用焊锡丝搭锡焊接出的电路,注意有些需要跳线的地方最好用漆包线之类的焊接,以防焊锡丝跳线短路。最后焊接音频线右声道接三极管基极,地线接三极管发射极(左声道不接)。

38KHZ发生电路图

焊接完成的38KHZ发生电路
STEP 2录制红外音频
打开Adobe Audition CS6软件,新建一个采样率为96000的音频文件,然后在麦克风的3.5mm插孔上插入一截废旧的耳机线,点“录音”红色按钮,接着随便说话制作一些噪声,如果屏幕下方有电平波动则说明笔记本电脑摄像头旁边的麦克风也同时工作了。为了在录制红外音频时最大程度的无干扰,必须将连接笔记本内置摄像头的排线拔掉。

拔掉笔记本内置摄像头排线,防止干扰
再次点击“录音”,音轨很平稳,无波动,说明内置麦克风失效,现在完全靠3.5mm插孔录音,接下来可以进行录制遥控器上的红外音频了。
用电烙铁把遥控器的红外发射管拆下来,电路板上原本给红外LED供电的两极分别焊接在废旧耳机线的左声道和地线上。

分别将地线和左声道焊接在遥控器电路板上,如果不能录音可以试着调换下地线与左声道线的顺序
点击“录音”,按动遥控器上的任意一个键,此时电脑屏幕上就会出现一小段波纹,这便是红外波形,停止录音,用鼠标滚轮放大刚才录下的红外波形,我们便能清楚的看到这个遥控器的引导码和地址码等。

麦克风抓到的红外音频

放大后能清晰的看到引导码和数据码等

振幅增益48DBI,提高音频输出电压
可以在一次录音中将遥控器所有的按键都依次按一遍,录下它们各自按键的红外音频,分别给每个键新建个音频文件进行保存,由于38KHZ的高频并不是由它发出,所以对采样率和位数没太大要求,一般8位就可以了。接下来你只需要将先前制作的38KHZ发生电路接在下载好红外音频文件的MP3上,点一下播放音乐便相当于按下遥控器对应的按键了。

保存红外音频文件为WAV或者是MP3格式
试用总结:借助Siri体验更智能
通过播放音频文件进行红外遥控基本适合所有的MP3、MP4等数码产品,在使用前记得将耳机音量调到最大,这样从3.5mm耳机孔出来的电压才足够导通三极管基极从而产生38KHZ的载波,一般红外发射LED对着所要遥控的红外接收头遥控,能达到6、7米远的遥控距离。
当然,你也可以把它与苹果Siri联系起来,做成声控式红外遥控器。把音频文件命名成一个特定的名字,比如“蓝色”,然后用苹果助手将音频导入到苹果手机中,对着siri说:“播放蓝色”,过几秒钟,被遥控的蓝色灯就会亮起来了。不过你必须在文件名前加上“播放”两个字,否则Siri会提示通讯录中找不到蓝色。每次只能对着说“播放开空调”、“播放关闭电视机”等比较别扭的语句了,不过这样声控加电还是挺有意思的。

对着Siri说播放蓝色呼吸

过一会单片机控制的小灯会乖乖变成蓝色缓慢的呼吸灯
手机遥控器,3.5mm耳机接口红外遥控改造解析的更多相关文章
- 基于STM32的红外遥控重点解析
本文有两个内容:一.红外遥控协议的的讲解:二.解码程序解析(参考正点原子的代码) 红外的介绍.优点.缺点就不给大家说了,进入正题 一.红外遥控协议的的讲解 红外遥控的编码目前广泛使用的是:NEC Pr ...
- 基于Arduino、STM32进行红外遥控信号接收
catalogue . 遥控器原理简介 . 红外遥控原理 . 常见红外遥控器红外线信号传输协议 . 遙控器的发展 . 实验过程 . 攻击面 . 基于STM32实现红外信号解码 1. 遥控器原理简介 0 ...
- arduino红外遥控库IRremote的IRsend类sendRaw函数溢出问题及其解决方法
最近在调试红外遥控格力空调,在论坛中学到了不少东西.参考: (1)<解决问题系列(4)——红外编码分析利器使用> (2)<315Mhz模块传输替代315Mhz遥控器> 调试环境 ...
- 51单片机tea5767收音机 红外遥控 自动搜台 存台 DIY
先看效果图: 显示 频道CH , 频率 100.0Mhz 欢迎信息,1602 内置日文平假名, 正好用来显示博主名称. 焊接前,已经万能面包板上试验成功. 焊接完成以后,1602 的D0 - D7 接 ...
- 基于FPGA的红外遥控解码与PC串口通信
基于FPGA的红外遥控解码与PC串口通信 zouxy09@qq.com http://blog.csdn.net/zouxy09 这是我的<电子设计EDA>的课程设计作业(呵呵,这个月都拿 ...
- 设计模式——适配器模式(type-c转3.5mm耳机口)
本文首发于cdream的个人博客,点击获得更好的阅读体验! 欢迎转载,转载请注明出处. 本文简述适配器模式,考虑到java中没有多继承就只写了对象适配器模式,然后例子是怎么用转接口把3.5mm耳机插在 ...
- 玩转X-CTR100 l STM32F4 l 红外遥控接收
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] X-CTR100控制器具有红外接收头,例程 ...
- Arduino红外遥控系列教程2013——红外转码
教程三:红外转码教程——用电视遥控器取代机顶盒遥控器 前言前段时间看到了使用红外遥控的X-Bot机器人[链接],感觉很有意思.最近开始玩Arduino与红外,一方面打算将来用于BOXZ的之间的通讯控制 ...
- 46.Linux-创建rc红外遥控平台设备,实现重复功能(2)
上章链接:46.Linux-分析rc红外遥控平台驱动框架,修改内核的NEC解码函数BUG(1) 在上章分析了红外platform_driver后,已经修改bug后,接下来我们自己创建一个红外platf ...
随机推荐
- python算法-汉诺塔问题
汉诺塔问题 初始状态: 思考:当盘子的个数是3的时候,大家写出移动顺序 移动的步骤: 3个盘子,从a到c 1.前面两个盘子,从a到b 1)把前面一个盘子,从a到c a->c 2)把第二个盘子 ...
- html 标签附加文本属性
<!DOCTYPE html> <html> <head> <script> function showDetails(animal) { var an ...
- [python学习篇][书籍学习][python standrad library][内置类型]对象测试真值,布尔值操作, 比较操作
几乎所有对象都可以比较.测试真值.转换为字符串(其实就是用repr()函数,或略有差异的str()函数来转换) 1 对象是否为真 任何对象都可以测试真值,用于if或while的条件或下面布尔运算的操作 ...
- TOJ1196: RSA Signing
题不在多,大概是多了也可能就是菜逼 1196: RSA Signing Time Limit(Common/Java):3000MS/30000MS Memory Limit:65536KBy ...
- java EE技术体系——CLF平台API开发注意事项(3)——API安全访问控制
前言:提离职了,嗯,这么多年了,真到了提离职的时候,心情真的很复杂.好吧,离职阶段需要把一些项目中的情况说明白讲清楚,这篇博客就简单说一下在平台中对API所做的安全处理(后面讲网关还要说,这里主要讲代 ...
- iOS学习笔记28-系统服务(一)短信和邮件
一.系统应用 在开发某些应用时,我们可能希望能够调用iOS系统内置的电话.短信.邮件.浏览器应用,或者直接调用安装的第三方应用,这个要怎么实现呢? 这里统一使用UIApplication的一个对象方法 ...
- OpenCV For Java环境搭建与功能演示
http://blog.csdn.net/jia20003/article/details/68944486
- HDU——1405The Last Practice(试手map)
The Last Practice Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- [USACO Section 4.4]追查坏牛奶Pollutant Control (最小割)
题目链接 Solution 一眼看过去就是最小割,但是要求割边最少的最小的割. 所以要用骚操作... 建边的时候每条边权 \(w = w * (E+1) + 1;\) 那么这样建图跑出来的 \(max ...
- [APIO2009]抢掠计划 ($Tarjan$,最长路)
题目链接 Solution 裸题诶... 直接 \(Tarjan\) 缩点+ \(SPFA\) 最长路即可. 不过在洛谷上莫名被卡... RE两个点... Code #include<bits/ ...