工业控制 | 能源技术 | 汽车电子 | 通信网络 | 安防监控 | 智能电网 | 移动手持 | 无线技术 | 家用电器 | 数字广播 | 消费电子 | 应用软件 | 其他方案

电路设计->光电电路图->其他光电实用电路图->一款简单的遥控信号分析仪制作

一款简单的遥控信号分析仪制作

作者:dolphin时间:2016-09-21

  这种遥控信号分析仪,它由两部分构成。第一部分由以。AT89C2051为核心、一体化红外接收器接收红外信号为输入器件、TC232作串口电平转换电路构成外部硬件;第二部分以电脑为平台,用DELPEII语言编写的显示处理程序。工作界面如上图所示。

  一、使用说明
  
  将外部硬件通过串行接口与电脑连接,给其加电。运行电脑内的显示处理软件,如上图所示。用鼠标点击“串口选择”,选择连接的相应串行接口-(缺省为COM2)。将遥控器对着一体化红外接收器,按下某键。如果电脑正确接收到数据,将会发出“咚”音,同时图l所示工作界面中“接收字节”后会显示出接收到的数据。本文以“海信机顶盒遥控器”为例,图l显示的是“开关”键的波形和数据。这时,点击上图所示的“绘图”按钮。将在工作界面上部显示收到的波形图;点击“显示”

  按钮,将在数据显示框内显示与波形图高低电平对应的时间长度数据,其中第l和第2组数据为0000。没用,第3和第4组数据代码表示起始码,最后四个代码代表结束码。“///”

  后跟随的是相应的二进制代码。其中“0”表示短发、短停。“1”表示短发、长停或长发短停。注意。由于遥控器发射一个键码占用大约108ms,本程序以1m9时间间隔显示10个点。因此欲完整地显示出波形图,将波形显示分为两部分,下部左端与上部右端相连接。

二、硬件电路

  电路见下图,一体化红外接收器(U3)在未收到红外信号时。其输出端为高电平;当接收到38kHz的红外信号时,其输出端变为低电平。在电路中将它的输出引脚与U1的外部中断0(INTO)相连,其反相后与外部中断1(INT1)相连接,分别作为单片机的两个外部中断信号。Ul的TxD引脚连接到的T1-IN输入端,其输出端Tl-OUT连接到串行接口的RXD插脚,用于向计算机串口传送数据。

  串口采用RS232C格式,l位起始位。8位数据位,1位停止位,无奇偶校验。

  为了保证数据完整可靠的传送,采用28800波特率,相应地,单片机晶体选用11.0592MHzo

  三、单片机工作原理
  
  单片机程序采用汇编语言编写,主要有串口发送程序和外部中断处理程序,比较简单。外部中断l的处理程序负责接收红外信号发射的时间长度(低电平时长),外部中断0的处理程序负责接收两次发射间的时间间隔(高电平时长)。当INT0信号由高变低时产生中断。表示接收到了红外信号,一体化红外接收器输出端由高变低。在它的中断服务程序中读出定时器0的计数数据,并将它存入串口发送缓冲区。该计数值表示的是两次红外发射之间的间隔时间计数。将该数据放入发送缓冲区后。让定时器0从0开始计数,以便在发生INTl中断时读出下次红外发射的时间长度计数。INTl信号由高变低时产生中断,表示未接收到红外信号,一体化红外接收器输出端由低变高。在其中断服务程序中读出定时器0的计数数据。并将它存入串口发送缓冲区,该计数值表示的是红外发射的发射时间长度数值。在将该数据放入发送缓冲区后,同样让定时器0从0开始计数,以便在发生INT0中断时读出两次红外发射之间的间隔长度数值。当串口发送缓冲区存在待发送数据时,程序通过串口逐字节向电脑发送数据。为了设置准确的波特率。电路中使用了11.0592MHz的晶振。因此,定时器0的一个计数值代表12,11.0592μs。在计算机程序中应做相应的调整处理。

  电脑显示处理程序采用DELPHI编程,主要处理串口选择和串口数据接收、画波形图、及数据显示等。用高级语言实现并不困难,读者也可用其他语言编程实现。



评论

技术专区