自制电脑红外遥控接收器
红外电脑遥控接收器
自制红外线电脑遥控器当你躺在床上,正用电脑看着电影时,电话铃响起………无奈只好先跑去暂停了电影,再回来接电话,不然错过了精彩剧情岂不可惜?如果我们能给电脑安装一个遥控器那该多好,这样躺在床上也一样能操作电脑,给我们看电影和欣赏音乐带来了极大的便利。
现在的电视卡都带有配套的遥控器并在卡上集成接收器,可以实现遥控换台以及一些其他的电视/电脑操作,但是,难道没有电视卡的朋友就无缘遥控了吗?电脑遥控接收器电路及制作其实,自制一个电脑遥控接收器,是非常容易的。
首先,我们制作的电脑遥控器必须使用红外方式的(不能是射频的遥控器),一般电视、影碟机的遥控器都可以使用,如果手头没有闲置的遥控器,可以到小商品市场购买,一般的电视机遥控器即可,售价在十几元。
注意,不要使用空调的遥控器,尽管它也是红外发射的,但是每次按键后,它都会把空调当前所有状态(模式、温度、风速、风向)发送一遍,导致每次发送的码串很长,会导致软件辨识错误。
经过比较,我们选择了Girder(v3.3.7)这个遥控软件,它功能全面,而且支持外挂插件,以支持新的遥控接收器和新的操作,从功能上可以说是"只有想不到,没有做不到"。
除了日常操作,此外在幻灯片展示时如果运用遥控器,可以把演讲者从计算机旁边解放出来,从而与观众进行更加灵活亲近的互动,达到更好的展示效果。
图1 电脑遥控接收器电路我们的遥控接收器的电路方案取自Girder的第三方插件:"SFH-56 plugin for Girder"。
该电路图(图一)简单到只有六个元件,而且可以直接去掉发光二极管(电源指示灯)和100Ω保护电阻以进一步简化电路。
主要元件有HS0038A红外遥控接收头、5V稳压管(1/4W)、发光二极管、9针串口插头、电阻(3.3KΩ和100Ω各一)、电解电容(0.1μF,10V以上)、万能印刷电路板、线材(至少3芯)以及电池盒(充当外壳)等一共不超过10元。
自制电脑红外线遥控器
装配。最后用三根连线将电
路板和串口插头连接好,焊
接串口插头一端时千万要注
意不要搞错引脚号。
用一个火柴盒大小的塑
料盒将电路装在里面,塑料
盒上开一个小窗口,把红外
接收集成电路的接收面固定
图3
在窗口处,使其能接收外面射进的红外线信号。对应发光
然后为 4条命令定义程序中对应的快捷键,选中命令
“上一张”,在右边的“特殊键”下拉列表框中选中对应的
快捷键“PAGE UP key”,如图 6,再按一下“应用”按钮。
图5
钮后,按遥控器上你想设定的按钮。在右边的输入窗口中 会显示该命令的红外编码,这就是你定义的遥控器编码, 接着单击“应用”按钮。用同样的方法可以设置其它几条 命令,每设置一条命令后都要单击“应用”按钮,否则刚 才设置的命令无效。设置完命令后按一下“保存”按钮。 在设置鼠标上移、下移、左移、右移等命令时要选择“允 许重复”复选框,在设置鼠标左键、右键命令时不要选择 “允许重复”复选框。通过以上设置你就拥有一个实用的 遥控鼠标了。
图6
同样地依次将“下一张”、“第一张”、“最后一张” 的快捷 键 定 义 为 “ PAGE DOWN key”、“ HOME key”、“ END key”。
最后将上述 4 条命令定义到遥控器的 4 个按钮上,按 一下“保存”按钮。
需要说明的是:用遥控器控制运行程序时,此程序必 需是当前活动窗口,否则命令无效。
脑内的 “PC 红外线遥控器”软件对数据进行判断处理,对
电脑执行相应的操作。
红外接收集成电路 IC1 使用电视机遥控接收电路中常
用的 TL0038 或 HS0038,这是将红外接收管和放大处理电路
SB口电脑遥控器自己做三
SB口电脑遥控器自己做三―红外电脑遥控器的制作三、测试1、安装下列所需的软件和驱动IRCtrl(PC用的,相当于D900上的NR Deluxe)IRCtrl.rar (736.41 KB)IRCtrl.rar (736.41 KB)红外线接收端驱动(电脑端安装)PC Driver.rar (1.65 MB) PCDriver.rar (1.65 MB)2、将做好的(未组装)接收器插入电脑USB口,电脑自动安装识别硬件;3、打开软件IRCtrl,选择工具-运行-设置,钩选“开机自动运行”、“装入所有命令文件”、选择设备端口的下拉菜单的COM(5)口(我的是COM5注意插入不同USB口com口是不一样的,如果不知道可以到“计算机管理-设备管理器-端口”查找。
)、选择language为中文;再点选“应用”,OK!电脑端设置完毕。
4、确保D900安装了NR Deluxe并学习了红外遥控器命令,打开它,让D900的红外口正对接收头,再点击其任一命令按键,可看到任务栏的IRCtrl闪烁,说明成功了,否则请自行检查:连线、电路是否正确,元件是否完好。
四、组装测试成功后就剩下组装了如下图:五、遥控器按键码学习以“关闭计算机”为例,具体如下:1、打开IRCtrl,按“Ctrl+N”新建一个文件并命名为:关闭计算机;1.选中命令树中的“新命令”(添加新命令的快捷键:shift+ins)命名为:关闭计算机;2.按下学习按钮(输入中那个i),使它变为灰色,这时可以按遥控器上的"关闭计算机"按键(按任一按键都可以,随自己使用方便),其按键代码就会被学习到“学习按钮”下的输入代码编辑框中3.学习完输入代码,按下“应用按钮”把数据保存到内存中数据保存到“缺省控制”文件中去4.再按遥控器上的"关闭计算机"按键就可以控制电脑的关机了,其它按键码学习就可以重复上述操作.至于IMCE按键码的学习,大家就参照上面的就OK了!!!先说到这里,水平有限不好请指正!!!如有人看不明白也可问我;先说到这里,其它的按键码学习等以后有时间再叙.第一次发贴,水平有限不好请指正!!!如有人看不明白也可问我;QQ:690396733旺旺:严明达。
电脑红外遥控接收器的制作
红外 线是 肉眼觉察不 到 的一种 光线 ,任何物 体均 向外 辐射红外 线 ,只是辐射 出 的红外 线波长
和强度 有 所 不 同 ,红 外 线 遥 控 是 利 用 波 长 为
头 ,这就使得红 外接 收 电路不 仅简单 而且 可靠 性
大 为提高 ,红外 信号 经过集成 化接收 头的接收放 大和解 调之后 ,会 在输 出端直 接 输 出原 始信 号 ,
电脑 红外接 收 器接 收 到这 个 脉 冲信 号 之后 , 就发送 给红外解码 程序 ,电脑就会 根据这 些不 同
的红外脉 冲信号执 行不 同的指令 ,从而达 到红外 线 遥控 电脑 的效果 。红外 接收器 的硬件 电路 原理 图如 图 2所示 ,电脑 的串 口在打开后 ,其 7脚有
[ 稿 日期 ] 2 1 0 收 00— 8—1 3 [ 作者简介]丰海 (9 6一 ) 17 ,男 ,湖北潜江人 ,厦门城市职业学院工程技术学部讲师 。 [ 基金项 目]厦门城市职业学院重点课题 :“ 厦门城市职业学院嵌入式 Lnx系统应 用中心建设对策研究” ( 目批准 iu 项
号 :K 1 0 ) Y 0~ 5 。
・
9 ・ 0
第 4期
丰
海 :电脑红 外 遥控 接 收器 的制 作 配 置 红 外 解 码软 件 WiLR 。首 先 我们 到 Wi. nI C n
一
—
—
【 c1. — — — + 卜 a . {
ll 0 ^=“ ‘ l ;
UR 的 主 页 ( t :/ wni . ore ren t C ht p / i r sucf g. e) le o
t5 ∞ s
… 一 …
茧 避幽 L 幽隧 嚣豳
50 s 6“ 一 I*
制作红外线简单方法
制作红外线简单方法红外线技术在现代社会中得到了广泛的应用,它可以用于遥控器、红外线感应器、红外线摄像头等设备中。
如果你对红外线技术感兴趣,想要制作一些简单的红外线设备,那么本文将为你介绍一种简单的方法来制作红外线发射器和接收器。
首先,我们需要准备一些材料,红外发射器LED、红外接收器模块、电阻、导线、面包板等。
接下来,我们将按照以下步骤来制作红外线发射器和接收器。
首先,我们来制作红外线发射器。
首先将红外发射器LED插入面包板中,然后接上一个适当大小的电阻,再用导线连接到电源。
需要注意的是,红外发射器LED的正负极需要正确连接,否则将无法正常工作。
接下来,我们可以用遥控器来测试一下红外发射器是否正常工作。
当我们按下遥控器的按钮时,如果红外发射器LED能够发出红外线信号,那么就表示制作成功了。
接着,我们来制作红外线接收器。
首先将红外接收器模块插入面包板中,然后连接到电源。
同样地,我们也可以用遥控器来测试一下红外接收器是否正常工作。
当我们按下遥控器的按钮时,如果红外接收器模块能够接收到红外线信号并输出相应的电信号,那么就表示制作成功了。
通过以上简单的步骤,我们就可以制作出红外线发射器和接收器了。
这些制作出来的红外线设备可以应用于很多方面,比如遥控器、红外感应器等。
当然,如果你想要进一步深入研究红外线技术,还可以学习更多关于红外线技术的知识,比如红外线通信、红外线遥控等方面的内容。
总之,制作红外线设备并不难,只要掌握了一些基本的电子知识和技能,就可以轻松地制作出自己想要的红外线设备。
希望本文能够对你有所帮助,也希望你能够在红外线技术的世界中有所收获。
祝你好运!。
自制PC机红外线接口(Irda)
基础知识:自制PC机红外线接口(Irda)红外线通讯是一种廉价、近距离、无连线、低功耗和保密性较强的通讯方案,在PC 机中主要应用在无线数据传输方面,但目前已经逐渐开始在无线网络接入和近距离遥控家电方面得到应用。
鉴于红外线通讯的诸多好处,现在的主板几乎全部提供了红外线接口,以便用户利用它进行与带红外线接口的设备通讯,如笔记本电脑、打印机、Modem、掌上电脑、移动电话等等。
但计算机主板上仅仅提供了红外线接口,并未提供完整的发射接收装置,所以用户在想使用红外线通讯时,仍然需要购买红外线连接器。
目前市面上较少有商品化的连接器销售。
下面就介绍三个DIY 方案,以供大家参考。
一、主板红外接口主板上的红外线接口大多是一个5针插座,其管脚定义依次是:1. IRTX(Infrared Transmit,红外传输);2. GND(电源地线);3. IRRX(Infrared Receive,红外接收);4. NC(未定义);5. VCC(电源正极)。
根据IRDA(Infrared Data Association,红外数据协会)提供的“异步串行通讯标准”资料显示,IRTX引脚能提供>6.0mA 的输出电流,而IRRX 引脚在吸收<1.5mA 电流就能对输入信号作出反应。
资料同时显示红外线接口的发射部分已将传输数据进行38k Hz 的载波,而接收部分将进行信号分离处理,所以在制作接口电路时无须再考虑载波和分离电路。
二、标准红外接口下图为IRDA 提供的红外通讯电路标准方案。
红外发射电路由红外线发射管L2和限流电阻R2组成。
当主板红外接口的输出端I RTX输出调制后的电脉冲信号时,红外线发射管将电脉冲信号转化为红外线光信号发射出去。
电阻R2起限制电流的作用,以免过大的电流将红外管损坏。
当R2的阻值越小,通过红外管的电流就越大,红外管的发射功率也随电流的增大而增大,发射距离就越远,但R2的阻值不能过小,否则会损坏红外管或主板红外接口!红外接收电路由红外线接收管L1和取样电阻R1组成。
--自己做红外遥控接收装置
自己动手,其乐无穷--自己做红外遥控接收装置红外遥控接收装置的硬件电路有很多种,它们各有特色。
如果你是一个狂热的电子爱好 者,那么你肯定热衷于自己动手来制作这样一个装置,其中的乐趣是别人所无法理解的。
如 果你仅仅是一个电脑爱好者,而对电子技术并不熟悉,那你可以购买这样一个装置,同样能 享受到坐在沙发上遥控电脑的乐趣。
1.完全采用数字电路的版本元件列表:U1 - 74HC14U2 - 74HC132U3 - IS1U60L or GP1U52XU4 - 74HC393U5 - 74HC165U6 - DS14C232 or MAX232电阻 R1,2 - 1K 微调电阻 R3 - 22K电容 C1,2 - 1 nF / C3 - 4.7 nF / C4-7 - 1 uF该电路在远距离使用时,工作效果较好。
你可以试着去掉外接电源,从串口获得电源, 从而简化电路(未测试)。
简单说明电路检测数字信号的每个周期并发送到计算机串口。
时钟电路由U1-c、R3、C3组成。
当 U1a的反相输出端产生一个从低电平到高电平的跃变时,U2a的与非门与C1-R1组成的电路将产生一个窄的低电平脉冲。
这个脉冲将影响移位寄存器从而载入记数器数据,并自动送入串 口。
同时,这个脉冲经U1b反转,这个高电平到低电平的跃变通过U2b、C2、R2后产生一个窄的高电平脉冲,此脉冲使记数器复位。
时序图如下所示,并非真实比例(实际上,红外信号 的周期远大于脉冲周期)这是两个不同的数据:这是两个相同的数据:2由图可见,给出允许的误差范围,程序就可以识别相同的数据。
疑难解析“我的接收装置无法区分同一遥控器的任意两个按键?”首先需要确认时钟电路的频率是否为19200Hz左右。
如果你无法获得信号,请试一下另外的软件,如SerialWatcher,并且改变时钟电路中微调电阻的阻值。
我的电路最后确定的阻值是15500欧,由于电子元器件的离散性,这个阻值会有所不同。
自制PC遥控器
自制PC遥控器Frontfree是否想过像使用电视一样使用电脑,躺在床上遥控MP3的播放,遥控程序的执行或者系统的关闭——为实现这些功能,我们当然可以自己DIY一套PC遥控器。
电路的基本原理就是通过红外接收头收集红外信号,当有红外信号进来时,单片机12C509软件执行中断并对采集到的红外信号进行解码,并从串口送到PC,PC端软件Girder收到串口发来的字符再根据定义做出相应的命令操作。
Girder 是一套国外编写的强大的遥控软件,通过和遥控器的配合,它可以实现遥控键盘鼠标,控制系统等各种操作,并可以方便的通过插件来扩充他的功能。
这个软件是免费的并具有中文的界面,可以到www.grider.nl下载最新的版本。
硬件部分在了解完遥控器的功能和原理后,我们开始硬件的组装,首先介绍一下所需的元件和电路图:红外接收组件1个12C509 1个二极管1N4148 2个5.1v稳压二极管2个电解电容10u 25V 1个电容15u 2个9针串口插座1个4Mhz晶振1个万用板1个遥控器1个8针芯片插座1个电路图:这里的遥控器可以是家里电视或者空调的遥控器,但这样做必定会和这些电器的遥控功能产生混乱,但我们也可以去电子市场单买一个遥控器,可以避免不少麻烦。
在组装电路之前,要仔细观察一下各个元件的引脚的顺序,要是焊反或者焊错会是件很麻烦的事情。
例如,4个二极管带有黑色圆环标记的一端是负极,电解电容外皮上标有负极的记号…这套电路只有13个元件,只要稍微有点焊接基础,将他组装好并不是件难事。
在完成电路的焊接,我们还要使用编程器向单片机内烧入程序,如果没有编程器也可以到电子市场花钱烧写。
程序可以到网站上写在。
最后将写有程序的单片机插入插座,注意芯片上的凹口对准插座的上的凹口,插反芯片会烧毁。
到这里硬件方面的工作就基本完成了,在确认焊接无误后,准备加电测试。
用串口电缆将遥控接收器和电脑串口相连接,进入windows系统,为了测试,我们使用一个叫Serial Watcher的软件,它可以接收到串口发来的数据。
红外线遥控器的制作方法
红外线遥控器的制作方法红外线遥控器是一种常见的遥控设备,用于控制家电、汽车等设备的开关和功能。
下面将介绍红外线遥控器的制作方法。
首先,我们需要准备以下材料和工具:红外线发射器、红外线接收器、电池、开关、导线、焊接工具、电池盒、外壳等。
第一步,连接红外线发射器和电池。
将红外线发射器的正极连接到电池的正极,负极连接到电池的负极。
可以用导线将它们连接起来或者直接焊接。
此时,红外线发射器已经形成一个简单的电路。
第二步,连接红外线接收器和电池。
同样地,将红外线接收器的正极连接到电池的正极,负极连接到电池的负极。
可以使用导线或者焊接工具进行连接。
第三步,连接开关。
将一个导线连接到电池的负极,另一端连接到开关的一个引脚上。
再将第二根导线连接到开关的另一个引脚上,另一端连接到红外线接收器的引脚上。
这样,开关起到了打开和关闭红外线接收器电路的作用。
第四步,连接电池盒。
将电池装入电池盒中,并将盒子连接到电路的合适位置。
确保电池盒能够给电路供电,并且电池能够被方便地更换。
第五步,封装遥控器。
使用外壳将整个遥控器装起来,以保护电路和进行美观设计。
在建立外壳时,确保红外线发射器和接收器的位置能够方便地对准遥控的设备。
制作遥控器的基本步骤已经完成。
接下来,可以根据需要进行一些改进和增加功能。
首先,可以为遥控器增加按键。
在电路中新增一个按键,并根据按键的功能设计相应的控制逻辑。
按下不同的按键可以控制不同的设备,或者实现不同的功能。
其次,可以为遥控器添加更多的功能。
例如,可以在电路中添加计时器功能,实现定时控制设备开关;或者添加温度传感器,用于控制设备的温度。
此外,可以为遥控器编写控制程序。
在电路中添加一个单片机(如Arduino),通过编程,可以实现更复杂的遥控功能。
例如,可以通过程序控制遥控器的信号模式,以便控制多种不同品牌的设备。
总之,制作红外线遥控器的方法相对简单。
通过连接红外线发射器和接收器,加入电池和开关,最后封装好整个遥控器,我们就可以实现对设备的遥控。
简易红外电脑遥控器
简易红外电脑遥控器
很长时间没有动手做一点实在的东西了,最近老琢磨着干点儿什么,也不能总是玩单片机,组合逻辑电路和时序逻辑电路同样重要,当然了,模拟电子技术是根本。
总写程序大脑吃不消,那些算法虽然不是很复杂,但是软件和硬件要结合起来才算完美。
这个电脑遥控器电路很简单,只有一个单一的功能,呵呵,就是开机和关机。
能力有限,目前只做到这一步,后续多学些知识了看能不能改进一下,这是下一个版本,红外电脑遥控器增强版:51hei/mcu/690.html ,有兴趣可以看看.
遥控器采用PT2262 编码芯片,发射电路如下:
安装在电脑上的遥控接收电路采用对应的PT2272 解码芯片,接收电路如下:
下面来看看制作的实物
遥控器,采用手机电池供电,有效地避免了普通干电池占用空间比较大的弊端。
经测试效果还行,遥控距离能达到七八米
为了能利用电脑自身的电源给接收电路供电,我查阅了许多相关资料,之前,我特别担心会把电脑主板烧掉,那岂不是亏大了,呵呵,还好这个问题解决了,看看我是如何接线的tips:感谢大家的阅读,本文由我司收集整编。
仅供参阅!。
USB电脑遥控器自制
USB电脑遥控器自制
经过几个月的研究,终于,我终于找到了一种USB 接口又不用单片机的办法了,不敢私藏,拿出来和我一样遭遇的懒人共享,这样大家就可以在客厅潇洒的操作电脑了。
但是如果操作太复杂的话,还是建议使用无线键鼠,因为单用遥控器估计有些朋友会抓狂的。
一、原理篇
和无线鼠标一样,用遥控器控制电脑,也需要一个接收器(见图1 上),这个接收器接收来自各类遥控的红外信号,然后转发给电脑,由电脑接收并解码,最后通过软件,控制播放器和操作系统。
遥控器可以随便选择,用闲置的或旧的遥控都可以(见图1 下),只要不是空调遥控就行。
大家希望使用的功能有暂停、快进、下一集、音量调节,打闭光驱、关闭计算机等;高级功能有模拟鼠标、打字等;高级功能有遥控开机、200 米远距离控制等。
遥控接收器制作过程
自制电脑红外遥控接收器(PC软解码)网上有很多介绍红外遥控接收器制作的文章,但其中大部分是用单片进行红外解码,然后再通过串口或USB把解码后的按键信息传入到PC的。
这样的电路制作起来,不仅造价相对偏高,而且需要对单片编程,这会令大部分软件开发爱好者望而却步。
最近看到一篇仅需要7个简单元器件的红外接收器,只需拿起烙铁,不需硬件编程就可以制作完成,原理图如下:由原理图我们可知,红外接收头把接收的红外信号转换为高低电平通过串口的DSR管脚传入到PC,PC软件通过对DSR高低电平信号的时间曲线进行分析,从而获得相对应的按键信息。
红外遥控器一般采用脉宽调制的串行码,经38kHz的载频把红外信号发射出去。
其编码信息一般由三部分组成:引导码、地址码和数据码。
一般信号长度大约100ms左右,持续按键则重复发送(中间会有10ms以上的间歇)。
常态下,红外接收头的输出(OUT)都是高电平,引导码信号首先会令红外接收头输出一个大约10ms 左右的低电平(不同遥控器有不同的时延),这可令接收设备从容判定信号的到来,而后面的地址码和数据码其电平高低变化就相对较快了,大概在几十或几百个微秒之间。
PC红外遥控软件一般选用Girder,在使用之前需要安装“SFH-56 plugin for Girder”这个插件(文件名"igor SFH-56P lug.dll"),否则不能正常处理我们这种电路的红外接收器信号。
可悲的是我至今没找到这个插件,网上提供的很多链接都是坏的。
即使找到了这个插件,要想在我们自己编写的程序中使用也是困难的,因为Girder并没有为我们开发者提供API接口。
既然Girder能用软件实现红外解码,我们为什么不能呢?凡事都要开动大脑,积极行动才对,下面就是我自己焊接的一个红外接收器(元器件是在中发买的,一共不到10元钱,还富裕好多电阻、电容!)(图下方的红外遥控器的接收器是基于USB的,仅支持Vista以上版本,并且不支持个人开发,不过今天它终于发挥了它应有的作用。
DIY红外遥控接收器
片机型号、COM 1:3、最高最低波特率.然后打开生成的
’hex文件.最后点击下载按钮,按照提示就可以T载7『 :见囤11}注意:下载时要重启一次电源~
,’—。’。。。。。。o。‘。、
在焊接时需要说明的是.晶撮电路尽量紧贴单片机引脚, 如果过远舍对单片机造成干扰。另外复位电路如果没有
合适的电阻、电容,也可以按照=者阻、窨值乘积相近
…喜撩嚣。。。。%g警P
孽娈弛萼娑霉墼回"q固m哆两 日■§t#l锵t博l
的0—7号键来控制8个LED灯的亮灭
1按图13接线。
2将=;醢标号“删j“』“f“Ⅲr、“fllflflflfiflfl/3“包圄的
程序段注释掉.将““卅俐HM2”包围的程序段取消注释。
茬壤。㈣㈣㈣|2”包雹如程弃段却奄银多段柜局觇语
的数字信号.这个信号我们约定为“0”。同样第三个
所示的信号就约定为“1“。…0的周期为1
125ms.“1”
的周期为2245ms。遥控器发送一攻数据的流程为 首先发送9+4 5=135ms的“数据头”(headerl.然 后发送16位二进%I地址.再发送8位二进制数据f键 盘码),最后发送8位二进制的数据反码。单片机通 过外部中断引脚检测信号的周期就可以判断发过来的 是什么信号了。既然只要一片单片机就可以完成解码. 那么我们只需要做个单片机最小系统板.再把红外接 收芯片接在外部中断上引脚上就可以了.电路图很简 单,见图2。 按照圈2电路图我们需要准备以下元器件I价格 可能有少许浮动.小于05元不标注),见图3。 万用板:7cm×9cm玻纤板f1 3元) 51单片机:STC89S51【4 5元)、11
反码是为了防止通信错误撇的校骑。
先使用PL2303的电源供电,将模块上的VCC、GND接 至扳上的VCC、GND{见图10 h然后将装PL2303模
秀一秀,我自己制作的红外线遥控器...
秀一秀,我自己制作的红外线遥控器...我对红外线遥控器的编码已经研究了有十几年了,当时我卖过遥控器,遇到特殊遥控器为了找到能代用的型号专门对遥控编码进行了研究,并且用易语言编写了遥控解码程序,也制作了并口输入红外线信号的装置,2004年下岗后,我在县城租了门市专门卖遥控器和维修。
由于刚开业,维修的活不多,有足够的时间,我破解了大量的各种型号的遥控器编码,积累了大量的资料。
有一次,我修一台康佳29寸电视机,需要进入总线状态调整参数,可是就是找不到进入总线的方法,和当地康佳售后人员询问可他们却说保密。
一气之下我自己用单片机制作了一个万能遥控器,可以手动输入编码,然后发射出去,通过不断的调整编码进入了总线状态把电视机修好了。
这就是我制作的红外遥控信号编码器。
几个月前,我在本栏目看到了杨再兴用单片机和12864液晶屏制作的能显示波形的解码器,这下可把我乐坏了。
以前每次我需要解码的时候都要打开电脑很是不便,我何不制作一个用单片机的解码器呢?于是下载了资料和软件,经过几天的忙碌和改进,终于做成功了,能显示波形能解NEC格式的编码。
但是却让我大失所望。
首先,它显示的不是真实的红外接收头的输出波形,只是自己编造的波形(真实的波形是用宽脉冲和窄脉冲表示的1和0),而且只能识别这一种编码格式。
局限性非常大。
看来求人不如求自己。
还是伟人说的对------自己动手,丰衣足食。
我何不自己制作一个既能解所有遥控编码格式又能按照自己设定编码的发射遥控信号的装置呢?说干就干,可是,到干起来确实是不容易,困难一个接一个。
首先是夏季维修的话比较多,很难腾出时间。
再就是我不会C语言,只学过汇编语言。
每一条指令都要试验好几遍,编程进度非常缓慢。
经过几个月的努力现在终于获得成功。
现在发布上来与大家共享成功的快乐。
自制PC遥控器
自制PC遥控器
今天为大家介绍一款简单好用的PC红外遥控,所用的元器件也很少,购买方便价格也只在20元左右,而且有很好的扩展性。
自制PC遥控器电路的基本原理就是通过红外接收头收集红外信号,当有红外信号进来时,单片机AT89C2051软件执行中断并对采集到的红外信号进行解码,并从串口送到PC,PC软件Girder收到串口发来的字符再根据定义做出相应的命令操作(Girder的基本使用方法请查看)。
电路中使用了几个简单的元件做成串口窃电电路,使这个遥控器不需要再外接电源,插到串口上就可以使用了,可以说是即插即用呀:)。
安装好后,运行Girder后,指示灯LED1就开始闪烁,表明电路正常工作了,这时就可以使用你的遥控器了,当关闭Girder后电路板的电源也会被切断,指示灯熄灭。
下面是制作过程和具体的一些注意事项等。
图一是这个遥控接收器的全部电原理图。
要用到具体元器件和参数就请看表一了。
呵,这些元器件是再普通不过的了,花上二十元就可以到电子市场买到了,想想看市场上一个PC遥控接收器也不便宜呀,这等差距身为DIYer的我们怎能不DIY一下呀?呵呵。
图二是元件的外观图。
DIY红外电脑遥控器
DIY 红外电脑遥控器
这两天照着从网上学的方法DIY 了一个红外电脑遥控器,做的很成功,用着也挺爽。
能够模拟鼠标键盘,实现关机重启定时关机,还能控制一些常用的多媒体软件,比如千千静听,暴风影音等。
因为它的发送端就是一普通的电视遥控器,接收端的解码是又是由电脑软件(IRCtrl 2.4 下载地址见下)完成的,所以只要做个能与电脑串口相连的红外接收器就行了。
而这个接收器仅有几个电子原件即可搭建完成,所以做起来不算复杂,有兴趣的参考后面的电路图,相信也可以很快做出一个来。
废话不多说了,见成品图:
使用中的状态,很小巧,与串口延长线相连后放在机箱上即可。
来几张特写
背面的…呃…布线有点乱
遥控器,任意一个电视遥控器都能被识别
下面就是接收解码软件的界面,相当于这个遥控器的驱动吧。
下载地址见文章末尾。
这个软件做得非常无私,尽管它是专业电脑遥控器佩带的,但它。
红外线电脑遥控器制作方法及原理
硬件电路及制作:I RCtrl软件的串口接收器电路很简单(如图),只要有一点电子元件、焊接及万能表电压测量知识,就可能进行自己DIY接收器电路。
下面介绍元器件的作用:U1接收头可以用TL0038A或TL0038B型号,其主要是管脚定义不一样,功能是相同。
T L0038A的标记N处是一个缺脚,接收头TL0038B没有缺脚,只要拿到接收头管脚排列和其中的那一种管脚排列一样,就说时其管脚的定义就一样;Q1(9014)的作用是提高接收头拉电流能力,保证当串口2脚有较大拉电流时,不至于接收头拉电流太大使其电压下降到无法正常接收电压;D1、D3(1N4148)的作用是串口中4、7脚对地(5脚)在没有运行程序时一般电压为-6V—-13V,当运行程序时电压为+6V—+13V,二极起隔离负压的作用;R1(200欧电阻)的作用是限流电阻,其选取范围可以从100到470欧(200为最佳),根据串口4、7电压高低选择,电压高选大一些,电压低选小一些,推荐用200欧电阻。
其功率标称不管是1/4、1/8的电阻都可能用,因为功率很小所以都没有关系;D2(5.1V稳压管)的作用是保存5V电压恒压.滤波电容保证5V供电稳定。
有两种功率标称1W和0.5W,这两种都可能用;C1(47UF/16V)的作用是滤波电容保证5V供电稳定。
其容量可以在47UF--220UF范围选取。
耐压只要在10V以上都能用。
因电路很简单就用做电路板,直接在串口头搭焊元器件即可;电源部分:在串口4,7脚个焊上(D1、D3)1n4148正端,把(D1、D3)1N4148两个负端与(R 1)200欧电阻的一端焊上,再把(R1)200欧电阻另一端与电容的正端、稳压管的负端焊在一起,接着把电容负端及稳压管正端焊到串口5脚,这样5V电源就好了;接收部分:(Q1)9014三极管的E极接来串口2脚上,C极接到(D1、D3)1N4148两个负端及电阻的一端焊处,把2米的三芯线的一端三根线分别接到(R1)200欧电阻另一端与电容的正端、稳压管的负端焊处给接收头提供5V供电、串口的5脚提供接地、接到(Q1)9014三极管的b极起来接输入,把2米的三芯线的另一端三根线分别接到接收头的VCC、GND、OUT购买以上元器件后你就可以准备制作:准备电烙铁、焊锡、助焊剂、万能表制作工具;各管脚;把焊好电路的9芯串口母头放入串口外壳安装好后,电路就算已经完成了。
USB口电脑遥控器自己做一
USB口电脑遥控器自己做―红外电脑遥控器的制作在此论坛看到好多朋友想自己DIY电脑遥控器,并用它来控制IMCE,却不得要领,所以我今天将详细的硬件制作教程写出来给大家,只要您够心细,够大胆,即使您没有电子基础也一样能做出来:注意:一、此文本人在D900fans首发,在这稍作了改动,有看到过的朋友,不要以为我这是偷的哦!二、此款遥控器的接收器为USB口的(非原生的,实际是USB to 串口的,如果不需要USB 口的可直接去掉USB TO 串口线,把相应的引脚直接插入台机的对应串口孔中,同样是可以的!不需装驱动)三、发射器(也就是遥控器,有的也叫手柄)可以任一选择,比如电视遥控器,DVD遥控器等,只要发射频率与红外接收头的频率大致相等就行了!四、接收器为全手工制作,会要用到小刀、烙铁等一些易伤人工具,所以请大家制作时注意安全!)此遥控器可以摇控电脑的关机、待机、定时关机待机、屏保、查看时间、开闭光驱、操控千千静听、POWER DVD、解霸等等的前进、后退、下一首、上一首、全屏、播放、暂停;还可模拟鼠标键盘;效果还是很不错的,当然控制IMCE也是可以了,功能很强!缺点就是不易上手,要实现控制需要按键码的学习,需要自己做“命令树”(也有别人做好的不过还是要按键码的学习),较占内存!如果买不到电子元件的朋友可以找我,或者可以直接买成品价钱好说(不过要注明为原动力论坛的朋友):[url=/auction/item_detail-0db2-56 be6db701e962ad0854c3cab8948590.jhtml]http://item.taobao.c om/auction/i ... 4c3cab8948590.jhtml[/url]如果还怕麻烦的可以直接买这个:此遥控器可以完美控制IMCE2了,且有鼠标功能!而且不需要怎么设置就可以使用了!/auction/item_detail-0db2-d97d20a26 d6a67eaaab4016e8cf949e9.jhtml遥控器接收装置的制作虽然很简单,但也要特别注意以下几点:1.在买电子元件的时候一定要保证电子元件的质量,尽量买好一点的元件;2、USB转串口(9芯母头)线的母头要买可以拆开的那种,千万不要买一体的;3、元件焊接的时候注意以下元件的极性:一体化红外线接收头NPN型三极管S90145.1V稳压管1N4148二极管容量为47uF-220uF、耐压在10V以上电解电容; 只要你注意以上几点就一定能成功!!!如有人看不明白也可问我;QQ:690396733旺旺:严明达一、前期准备(一)首先从电子市场购买到以下电子元件:1. 一体化红外线接收头(TL0038B)一个(U1)2. NPN型三极管S9014一个(Q1)3、200欧姆1/4W或1/8W电阻一个(R1)4、5.1V稳压管一个(D2)5、1N4148二极管两个(D1、D3)6、容量为47uF-220uF、耐压在10V以上电解电容一个(C1)7.万用电路板8、USB转串口9芯母头串口线(简称串口线,电脑城有买,记得要买母头可拆开的那种)9、小板一块10、细导线若干(我用的是USB延长线里的导线);(二)其次还要准备所需工具:电烙铁、焊锡、助焊剂、万用表、剪刀、502胶水、刀片、直尺;还要准备D900一台(所有带红外功能的智能手机或所有遥控器如电视遥控器都行)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
自制电脑红外遥控接收器(PC软解码)分类:〖嵌入式〗〖智能家居〗2009-10-14 09:52 4649人阅读评论(9) 收藏举报网上有很多介绍红外遥控接收器制作的文章,但其中大部分是用单片进行红外解码,然后再通过串口或USB把解码后的按键信息传入到PC的。
这样的电路制作起来,不仅造价相对偏高,而且需要对单片编程,这会令大部分软件开发爱好者望而却步。
最近看到一篇仅需要7个简单元器件的红外接收器,只需拿起烙铁,不需硬件编程就可以制作完成,原理图如下:由原理图我们可知,红外接收头把接收的红外信号转换为高低电平通过串口的DSR管脚传入到PC,PC软件通过对DSR高低电平信号的时间曲线进行分析,从而获得相对应的按键信息。
红外遥控器一般采用脉宽调制的串行码,经38kHz的载频把红外信号发射出去。
其编码信息一般由三部分组成:引导码、地址码和数据码。
一般信号长度大约100ms左右,持续按键则重复发送(中间会有10ms以上的间歇)。
常态下,红外接收头的输出(OUT)都是高电平,引导码信号首先会令红外接收头输出一个大约10ms左右的低电平(不同遥控器有不同的时延),这可令接收设备从容判定信号的到来,而后面的地址码和数据码其电平高低变化就相对较快了,大概在几十或几百个微秒之间。
PC红外遥控软件一般选用Girder,在使用之前需要安装“SFH-56 plugin for Girder”这个插件(文件名"igor SFH-56P lug.dll"),否则不能正常处理我们这种电路的红外接收器信号。
可悲的是我至今没找到这个插件,网上提供的很多链接都是坏的。
即使找到了这个插件,要想在我们自己编写的程序中使用也是困难的,因为Girder并没有为我们开发者提供API接口。
既然Girder能用软件实现红外解码,我们为什么不能呢?凡事都要开动大脑,积极行动才对,下面就是我自己焊接的一个红外接收器(元器件是在中发买的,一共不到10元钱,还富裕好多电阻、电容!)(图下方的红外遥控器的接收器是基于USB的,仅支持Vista以上版本,并且不支持个人开发,不过今天它终于发挥了它应有的作用。
当然用电视或VCD遥控器也是可以的)硬件有了,但程序该从何编起呢?1、由于接收到的红外信号在微秒级别中变化,对系统实时性要求较高,所以具备垃圾回收功能,实时性没有保证的C#,似乎完不成这种信号的接收功能,所以我们选择的是VC,由它实现高优先级的线程去进行信号接收。
2、由于红外遥控信号是脉宽调制的串行码,所以我们需要采集信号的宽度,显然采用一般的时钟函数来获取时间间隔是不可行的,因为精度太低,所以我们需用采用多媒体时钟和高精度计时的API函数。
3、一般我们按键持续时间为几秒钟,并且由于按键发出前有一个10ms左右的引导信号,所以我们的程序很容易判断出信号起始点,这样我们一次仅需要接收一定量的原始数据就可以完成初步信号采集工作。
4、对于我们的红外接收程序来说并不需要实际解码出红外信号到底包含了那些具体的信息,只要其能够区分出红外遥控上的各个按键就行。
5、由于红接收器是通过串口RTS管脚供电,且通过DSR传递红外信号的,所以我们的程序即使不接收数据,也要打开串口,不过仅需要处理RTS和DSR管脚的信号即可。
好了,动手去做,下面是用VC实现的一个DLL,其功能就是接收并记录红外信号的持续时间。
核心代码如下:DWORD WINAPI ThreadProc(LPVOID pParam){LARGE_INTEGER litmp;LONGLONG QPart1,QPart2;double dfFreq;int iTime=0; //微秒// 获得计数器的时钟频率QueryPerformanceFrequency(&litmp);dfFreq = (double)1000000.0/litmp.QuadPart;DWORD ModemState,oldModemState=MS_DSR_ON;//EV_BREAK or EV_CTS or EV_DSR or EV_ERR or EV_RING orEV_RLSD or EV_RXCHAR or EV_RXFLAG or EV_TXEMPTY//SetCommMask(HSC_COM_Handle,EV_DSR);//DWORD EvtMask,dwError;//COMSTAT cs;while(HSC_Thread_RunFlag){//等待DSR信号发生变化//WaitCommEvent(HSC_COM_Handle,&EvtMask,&HSC_Ovread);//ClearCommError(HSC_COM_Handle,&dwError,&cs);//获得DSR的状态GetCommModemStatus(HSC_COM_Handle,&ModemState);ModemState = (ModemState & MS_DSR_ON);if(ModemState == oldModemState) continue;oldModemState=ModemState;//清计数InterlockedExchange(&HSC_NUM,0);//开始接收数据if(HSC_State == 0 && ModemState == 0){QueryPerformanceCounter(&litmp);QPart1 = litmp.QuadPart;HSC_State=1;//复位计数InterlockedExchange(&HSC_NUM,0); InterlockedExchange(&HSC_Index,0);//开启定时器HSC_TimerID =timeSetEvent(10,HSC_Accuracy,MMTimer,NULL,TIME_PERIODIC);continue;}//接收数据状态if(HSC_State == 1){QueryPerformanceCounter(&litmp);QPart2 = litmp.QuadPart;//--if(ModemState == 0){iTime = (int)((QPart2-QPart1)*dfFreq);}else{iTime = (int)((QPart1-QPart2)*dfFreq);}if(HSC_Index < HSC_BufferSize)*(HSC_Buffer+HSC_Index) = iTime;InterlockedIncrement(&HSC_Index);//--QPart1=QPart2;}}return STILL_ACTIVE;}如果采用WaitCommEvent函数,你会发现CPU使用时间会很低,不过它会让接收程序无法正常退出,所以只好注释掉该函数了,此时你会发现CPU使用时间会很高。
原始数据一旦采集完毕,剩下的就由C#程序大显身手吧。
C#中DLL的接口函数如下:const string DllPath = @"YFHSCollect.dll";[DllImport(DllPath)]public static extern Int32 HSCStart(Int32 COM, Int32 delay, Int32 BufferSize);[DllImport(DllPath)]public static extern Int32 HSCEnd();[DllImport(DllPath)]public static extern Int32 HSCData(int[] intData);我封装了一个类,一旦有按键信息,就会触发一个Click事件。
此外程序还具备自学习功能,并且可以把学习后的结果序列化到一个XML文件中去,这样下次再按键就可以识别出键名了。
主程序中测试代码如下:public partial class frmMain : Form{YFHWCollect hw =null;int[] hwData = null;public frmMain(){InitializeComponent();hw = new YFHWCollect(this, 1);hw.Click += new YFHWCollect.HWEventHandler(hw_Click);}void hw_Click(object sender, HWEventArgs e){string strInfo = "";for (int i = 0; i < e.lstData.Count; i++){for (int j = 0; j < e.lstData[i].Length; j++){strInfo += e.lstData[i][j].ToString() + " ";}strInfo += "/r/n";}txtInfo.Text = strInfo;lblKeyName.Text = e.KeyName+ " (" + (e.Interval /10).ToString() + "ms)";hwData = e.Data;picBar.Refresh();}private void btnCommand_Click(object sender, EventArgs e){if (btnCommand.Text == "开始"){btnCommand.Text = "停止";hw.Start();}else{btnCommand.Text = "开始";hw.End();}}private void btnStudy_Click(object sender, EventArgs e){hw.Study(txtKeyName.Text);}private void picBar_Paint(object sender, PaintEventArgs e){int width = picBar.Width, height = picBar.Height;e.Graphics.DrawLine(new Pen(Color.Gray), 0, height / 2, width, height / 2);if (hwData != null){float Len=0;foreach(int l in hwData){Len+=l;}float dx = width / Len,DX=0;Pen p = new Pen(Color.Green);float Y=0, Y1=height/4,Y2=(float)(height*3.0/4.0);float X=0;for(int i=0;i<hwData.Length;i++){Y = ((i % 2)==0 ? Y2:Y1);DX = hwData[i] * dx;e.Graphics.DrawLine(p, X, Y, X + DX, Y);X += DX;e.Graphics.DrawLine(p, X, Y1, X, Y2);}}}}测试程序运行结果如下:(上面显示的数据为高电平和低电平的持续时间(低高低高…),单位为1/10毫秒)注意事项:1、红外遥控器按键偶数次和奇数次的编码是不同的,程序需要学习两次,才能正常识别按键信息。