(完整版)红外遥控电路设计_第1页
(完整版)红外遥控电路设计_第2页
免费预览已结束,剩余39页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1引言随着远程教育系统的不断发展和日趋完善, 利用多媒体作为教学手段在各级各类 学校都得到了广泛应用。近年来,在多媒体教学系统的使用、开发和研制中,经常遇 到同时使用多种设备,如:数字投影机、 DVD 、 VCD 、录像机、电视机等,由于各 种设备都自带遥控器, 而且不同的设备所遵循的红外传输规约也不尽相同, 操纵这些 设备得使用多种遥控器, 给使用者带来了诸多不便。 本次毕业设计的主题就是红外遥 控电路设计。红外遥控的特点是利用红外线进行点对点通信的技术,不影响周边环境,不干扰其他电器设备。室内近距离(小于 10 米),信号无干扰、传输准确度高、体积 小、功率低的特点 ,遥控中得到了广泛的应

2、用。通过基于单片机的控制指令来对多种 设备进行远程控制, 可以选择不同的按键来控制不同的设备。 从而方便快捷的实现远 程控制。常用的红外遥控系统一般分发射和接收两个部分。 发射部分的主要元件为红外发 光二极管。 它实际上是一只特殊的发光二极管; 由于其内部材料不同于普通发光二极 管,因而在其两端施加一定电压时, 它便发出的是红外线而不是可见光。 红外发光二 极管一般有黑色、 深蓝、透明三种颜色。 判断红外发光二极管好坏的办法与判断普通 二极管一样;用万用表电阻挡量一下红外发光二极管的正、 反向电阻即可。 红外发光 二极管的发光效率要用专门的仪器才能精确测定, 而业余条件下只能用拉锯法来粗略 判

3、判定。接收部分的红外接收管是一种光敏二极管。 在实际应用中要给红外接收二极管加 反向偏压,它才能正常工作, 亦即红外接收二极管在电路中应用时是反向运用, 这样 才能获得较高的灵敏度。 红外发光二极管一般有圆形和方形两种。 由于红外发光二极 管的发射功率一般都较小, 所以红外接收二极管接收到的信号比较微弱, 因此就要增 加高增益放大电路。 最近几年不论是业余制作还是正式产品, 大多都采用成品红外接 收头。成品红外接收头的封装大致有两种:一种采用铁皮屏蔽;一种是塑料封装。均 有三只引脚,即电源正(VDD )、电源负(GND)和数据输出(V0 或 OUT)。红外接收头的引脚排列因型号不同而不尽相同,

4、 红外接收头的优点是不需要复杂 的调试和外壳屏蔽,使用起来如同一只三极管,非常方便。21 设计要求及指标红外遥控是目前使用较多的一种遥控手段。 红外线遥控装置具有体积小、 功耗低、 功能强、成本低等特点。在家庭生活中,录音机、音响设备、空调彩电都采用了红外 遥控系统。 设计要求利用红外传输控制指令及智能控制系统, 借助微处理器强大灵活 的控制功能发出脉冲编码, 组成的一个遥控系统。 红外线编码是数据传输质是一种脉 宽调制的串行通讯。红外线通讯的发送部分主要是把待发送的数据转换成一定格式的 脉冲,然后驱动红外发光管向外发送数据。接收部分则是完成红外线的接收、放大、 解调,还原成同步发射格式相同,

5、但高、低电位刚好相反的脉冲信号,其主要输出 TTL 兼容电平。最后通过解码把脉冲信号转换成数据,从而实现数据的传输。本设计 的主要技术指标如下:(1) 遥控范围: 4 6 米(2) 显示可控制的通道(3) 接收灵敏可靠,抗干扰能力强(4) 控制用电器电流最高为 2A32 红外遥控系统的设计红外遥控系统由发射和接收两大部分组成,系统采用编/解码专用集成电路和单片机芯片来进行控制操作。设计的电路由如下的几个基本模块组成:直流稳压电源, 红外发射电路,红外接收电路及控制部分。系统框图如图 3- 1 所示。图 2- 1 红外遥控电路框图(a)发射电路框图图 2 1 红外遥控电路框图(b)接收电路框图4

6、3 红外收发电路的设计3.1 主要芯片一一闪电存储型单片机 AT89S52 勺介绍3.1.1 AT89S52 具有下列主要性能:(1) 8KB 可改编程序 Flash 存储器(可经受 1, 000 次勺写入 /擦除周期)(2) 三级程序存储器保密(3) 256 *8 字节内部 RAM(4) 32 条可编程 I/O 线(5) 3 个 16 位定时器 /计数器(6) 6 个中断源(7) 可编程串行通道(8) 片内时钟振荡器AT89S52 是用静态逻辑来设计的, 并提供两种可用软件来选择的省电方式一一空 闲方式和掉电方式。在空闲方式中, CPU 停止工作,而 RAM 、定时器 /计数器、串行 口和中

7、断系统都继续工作。 在掉电方式中, 片内振荡器停止工作, 由于时钟被“冻结”, 一切功能暂停,只保存片内 RAM 中的内容,直到下一次硬件复位为止。3.1.2 AT89S52 的引脚及功能89S52 单片机的管脚说明如图 3- 1 所示。(1) 主要电源引脚1VSS 电源端2GND 接地端(2) 外接晶体引脚 XTAL1 和 XTAL2 XTAL1 接外部晶体的一个引脚。 在单片机内部, 它是构成片内振荡器的反相放大 器的输入端。 当采用外部振荡器时, 该引脚接收振荡器的信号, 既把此信号直接接到 内部时钟发生器的输入端。5图 3- 1AT89C51 的引脚XTAL2 接外部晶体的另一个引脚。

8、在单片机内部,它是上述振荡器的反相放大器 的输出端。采用外部振荡器时,此引脚应悬浮不连接。输入/输出引脚 P0.0P0.7、P10.P1.7、P2.0P2.7 和 P3.0P3.7。1P0 端口( P0.0P0.7) P0 是一个 8 位漏极开路型双向 I/O 端口。作为输出口用 时,每位能以吸收电流的方式驱动 8 个 TTL 输入,对端口写 1 时,又可作高阻抗输 入端用。在访问外部程序和数据存储器时,它是分时多路转换的地址(低8 位)/数据总线,在访问期间激活了内部的上拉电阻。2P1 端口( P1.0P1.7) P1 是一个带有内部上拉电阻的 8 位双向 I/O 端口。P1 的 输出缓冲器

9、可驱动(吸收或输出电流方式)4 个 TTL 输入。对端口写 1 时,通过内部 的上拉电阻把端口拉到高电位,这时可用作输入口。作输入口时,因为有内部的上拉 电阻,那些被外部信号拉低的引脚会输出一个电流。3P2 端口 ( P2.0P2.7) P2 是一个带有内部上拉电阻的 8 位双向 I/O 端口。P2 的输出缓冲器可驱动(吸收或输出电流方式)4 个 TTL 输入。对端口写 1 时,通过内部 的上拉电阻把端口拉到高电位,这时可用作输入口。P2 作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。在访问外部程序存储器和 16 位地址的外部数据存储器(如执行 MOVX DPT

10、R 指令)1p1.0VCC2p1.1P0.03p1.2P0.14p1.3P0.25p1.4P0.36p1.5P0.47p1.6P0.58p1.7P0.69RST/VPDP0.710RXD/P3.0EA/VPP11TXD/P3.1ALE/PROG12INT0/P3.2PSEN13INT1/P3.3P2.714T0/P3.4P2.615T1/P3.5P2.516WR/P3.6P2.417RD/P3.7P2.318XTAL2P2.219XTAL1P2.120GNDP2.040393837363534333231302928272625242322216时,P2 送出高 8 位地址。在访问 8 位地址

11、的外部数据存储器(如执行 MOVX Ri , A 指令)时,P2 口引脚上的内容(就是专用寄存器(SFR)区中 P2 寄存器的内容),在整 个访问期间不会改变。4P3 端口( P3.0P3.7)P3 是一个带有内部上拉电阻的8 位双向 I/O 端口。P2的输出缓冲器可驱动 (吸收或输出电流方式 )4 个 TTL 输入。对端口写 1 时,通过内部 的上拉电阻把端口拉到高电位,这时可用作输入口。 P3 作输入口使用时,因为有内 部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。在 AT89S52 中,P3 端口还用于一些专门功能,这些兼用功能如下:(1)P3.0 RXD (串行输入口)(2)P

12、3.1 TXD (串行输出口)P3.2 /INTO (外部中断 0)P3.3 /INT1 (外部中断 1)P3.4 T0 (记时器 0 外部输入)P3.5 T1 (记时器 1 外部输入)P3.6 /WR (外部数据存储器写选通)(8)P3.7 /RD (外部数据存储器读选通)(9)P3 口同时为闪烁编程和编程校验接收一些控制信号3.1.3振荡器特性:XTAL1 和 XTAL2 分别为反向放大器的输入和输出。 该反向放大器可以配置为片 内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件, XTAL2 应 不接。由于输入至内部时钟信号要通过一个二分频触发器, 因此对外部时钟信号的脉 宽

13、无任何要求,但必须保证脉冲的高低电平要求的宽度。3.1.4芯片擦除:整个 PEROM 阵列和三个锁定位的电擦除可通过正确的控制信号组合, ALE 管 脚处于低电平 10ms 来完成。在芯片擦操作中,代码阵列全被写 “1 且”在任何非空存 储字节被重复编程以前,该操作必须被执行。3.2 89C2051 介绍89C2051 共有 20 条引脚,如图 32 所示。P1 口共 8 脚,准双向端口。P3.0P3.6 共 7 脚,准双向端口,如 P3.0 P3.1 的串行通讯功能,P3.2、P3.3的中断输入功能,P3.4、P3.5 的定时器输入功能。7在引脚的驱动能力上,89C2051 具有很强的下拉能

14、力,P1,P3 口的下拉能力均可8达到 20mA.相比之下,89C51 的端口下拉能力每脚最大为 15mA。但是限定 9 脚电流 之和小于 71mA.这样,引脚的平均电流只 9mA。89C2051 驱动能力的增强,使得它 可以直接驱动 LED 数码管。相对于 89C51 它少了一些功能,但是它的功耗少,便于携带,更经济使它在发 射电路中起着重要的地位。因此,在本设计红外发射的电路中就用了它来实现脉冲信 号的产生。U189C20513.3 系统的功能实现方法3.3.1 摇控码的编码格式该遥控器采用脉冲个数编码,不同的脉冲个数代表不同的码,最小为2 个脉冲,最大为 17 个脉冲。为了使接收可靠,第

15、一位码宽为 3ms,其余为 1ms,遥控码数据 帧间隔大于 10ms,如图 3- 3 所示。3.3.2 遥控码的发射采用的是 89C2051 芯片。用 P1 口组成键盘,获取键值,用内部的定时器1 产生一个 40KHZ 的软件定时中断,当作红外线的调制基波,当某个操作按键按下时,单片机先读出键值,然后根据键值设定遥控码的脉冲个数,再调制成40kHz 方波由红外线发光管发射出去。P3.5 端口的输出调制波如图 3-3 所示。1234526282910RSTVCC-(RXD)P3.0P1.7(TXD)P3.1P1.6-XTAL 2P1.5-XTAL 1P1.4-(INT0)P3.2P1.3-(IN

16、T1)P3.3P1.2 (T0)P3.4P1.1(AIN1) (T1)P3.5P1.0(AIN0) GNDP3.720191817161513图 3- 289C2051 的引脚9333 数码帧的接收处理当红外线接收器输出脉冲帧数据时, 第一位码的低电平将启动中断程序,实时接 收数据帧。在数据帧接收时,将对第一位(起始位)码的码宽进行验证。若第一位低 电平码的脉宽小于 2ms,将作为错误码处理。当间隔位的高电平脉宽大于 3ms 时,结 束接收,然后根据累加器 A 中的脉冲个数,执行相应输出口的操作。图 3-4 就是红 外线接收器输出的一帧遥控码波形图。图 3-3 端口输出编码波形图电器 0 的遥

17、控输出码电器 1 的遥控输出码10图 3-4 红外线接收器输出的一帧遥控码波形图第一位1ms113.4 红外发射电路遥控发射通过键盘,每按下一个键,即产生具有不同的编码数字脉冲, 这种代码 指令信号调制在 40KHZ 的载波上,激励红外光二极管产生不同的脉冲,通过空间的 传送到受控机的遥控接收器。P1 口作为按键部分,P3.5 口作为发射部分,然后用三 极管的放大驱动红外发射。电路如图 3-5 所示。R3+5V图 3-5 发射电路图3.5 红外接收电路在接收过程中,脉冲通过光学滤波器和红外二极管转换为 40KHZ 的电信号,此 信号经过放大,检波,整形,解调,送到解码与接口电路,从而完成相应的

18、遥控功能。 接收电路如图 3 6 所示。丄卜13.2K2C2 I*3122丄Y141_12MHZ51C,3L L6!?2H+5V89C205120.RSTvcc.(RXD)P3.0P1.7.(TXD)P3.1P1.6.XTAL2P1.5,XTAL1P1.4(INT0)P3.2P1.3(INTT)P3.3P1.2,(T0)P3.4P1.1(AIN1,(T1)P3.5P1.0(AIN0,GNDP3.7R4R5R6R7R8R9R10R11+5VVB1Q14.7KR2050C11U1191815141312101716S81210uF图 36 接收电路图通常, 红外遥控器将遥控信号(二进制脉冲码)调制

19、在 40KHZ 的载波上, 经缓冲放 大后送至红外发光二极管,产生红外信号发射出去。将上述的遥控编码脉冲对频率为 40KHz(周期为 26.3ms)的载波信号进行脉幅调制(PAM ),再经缓冲放大后送到红外发 光管,将遥控信号发射出去。根据遥控信号编码和发射过程, 遥控信号的识别一一即解码过程是去除 40KHZ 载波信号后识别出二进制脉冲码中的 0 和 1。由 MCS51 系列单片机 AT89S52、一 体化红外接收头、存储器、还原调制与红外发光管驱动电路组成。一体化红外接收头采用 SIEMENS SFH 506-38,它负责红外遥控信号的解调。 将调制在 40kHz 上的红外脉冲信号解调后再

20、输入到 AT89C51 的 INT0( P3.2)引脚, 由单片机进行高电平与低电平宽度的测量。遥控信号的还原是通过P3.1 输入二进制脉冲码的高电平与低电平及维持时间,当接收头接收信号时,单片机产生中断,并在P3.1 口记下脉冲的个数,这在后面的软件设计中会具体介绍到,通过单片机处理后驱 动控制部分。并通过数码管显示用电设备的个数。3.6 软件设计3.6.1 发射编码的软件设计首先,初始化定时器,定时为频率为 40KHz 的时间段。当按下某一按键时,发送 数丄Y1_ 12MHzP10P00 P11P01,P12P02P13P03.P14P04,P15P05P16P06.P17P07INT1P

21、20INT0P21.TXDP22-T1P23,T0P24P25.EA/VPP26P27.X1 X2 RESETRXDRDALE/PWRPSENU27447Aa0Bb卜CcnDdanren卜LTf0RB1gDa DPY4aCgLEDgnVCCVCCAa.BbD-.CcA DdneD-LTfA.RB1gD-a DPYg LEDgnQ1VCCJIESHOUC122PC2VCC C3T22P9U1P1.0139P1TT238P1.23P1.34P1.4 535P1.5634733832212215241425262728191810302989C513113-12-713112211610514439

22、15U374477131121126104935151413据 1,就开始工作。同时定时器溢出,也就是定时器记满了,执行定时器中断,中 断程序如下:14INTT1 : CPL P3.5 ;40KHZ 红外线遥控信号产生RETI ; 中断返回 由此就产生了 40KHZ 的载波信号。 当发送数据 0 时,定时器不工作。发送程序如下:REMOTE:MOVLJMPR1,AOUT3;装入发射脉冲个数;转第一个码发射处理OUT:MOVR0,#55H;1MS 宽低电平发射控制数据OUT1:SETBET1;开 T1 中断SETBNOPNOPNOPNOPNOPTR1;开启定时器 T1;延时DJNZR0,OUT1

23、;时间不到转 OUT1 再循环MOVR0,#32H;1MS 高电平间隙控制数据OUT2:CLRTR1;关定时器 T1CLRET1;关 T1 中断CLRNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPP3.5;关脉冲输出;空操作延时DJNZR0,OUT2;时间不到转 OUT2 再循环DJNZR1,OUT;脉冲未发完,转 OUT 再循环发射LCALLDL500MS15RETLJMP OUT1;转 OUT13.6.2 接收编码的软件设计单片机上电复位后,首先对其内部定时器初始化,用定时器及软件计数的方法,当有信号输入时,单片机产生中断,并在 P3.1 口进行计脉冲个数,测量 P3.

24、1 高、低 电平的宽度。 P3. 1 引脚平时为高电平, 当接收到红外遥控信号时, 由于一体化红外接 收头的反向作用, INT0 引脚下跳至低电平 ,计算脉冲个数后通过 7447 译码电路,数 码管显示相应的数值。下面是第一个 3ms 脉冲的解码程序。READ1: CLR AMOV DPH,AMOV DPL,AHARD1:JB P3.1,HARD11INC DPTRNOPNOPAJMP HARD1HARD11:MOV A,DPHJZ READOUTT0CLRAREAD11:INCAREAD12:JNBP3.1,READ12MOV R1,#06HREAD13:JNBP3.1,READ11LCAL

25、L DELAYREADDJNZ R1,READ13程序流程图如图 37 所示。OUT3:MOVR0,#0FFH ;装发谢 3MS 宽控制数据16图 3- 7 程序流程图(a)按键流程图图 3-7 程序流程图(b)发射流程图174 直流稳压电源的设计直流稳压电源主要功能是为后两个部分提供电压的输出。在设计中分出了 2 个支路,一个输出的电压为 9V,另外一个输出的电压为 5V。直流稳压电源的主要由电源变压器、 框图如图 41 所示。整流电路、 滤波电路和稳压电路四部分组成图 4 1 直流稳压电源的方框图4.1 直流稳压电源米用单相桥式整流电路整流电路主要实现将交流电变换成直流电。 实现这一目标主

26、要是靠二极管的单向导电作用,因此二极管是构成整流电路的关键元件。我采用的是单桥式整流电路。本设计整流电路如图 4 2 所示。图 3 -7 程序流程图(c)接收流程图整流电路ViVR电源变压器T-滤波电路Vo18图 42 单桥式整流电路图在图中,输入电压 V1 通过电源变压器成 V2。它的作用是将交流电电压 V1 变成 整流电路要求的交流电压 V2。其中的电阻是要求支流供电的负载电阻。四个整流二 极管 D1到 D4 接成电桥的形式。通过负载 R 的电流 I 以及电压 V3 的波形如图 4 3。 它们都是单方向的全波脉动波形。4.2 滤波电路在整流电路输出波形中由于含有较多的纹波成分, 与所要求的

27、波形不太符合。所 以在整流电路后接滤波电路以滤去整流输出电压的纹波。而滤波电路常有电容滤波, 电感滤波和 RC 滤波等。本电路采用的是电容滤波电路。如图 4 4 所示。Ot19图 43 单相桥式整流电路波形图20图 4 4 电容滤波电路图4.3 稳压电路典型应用电路如图 4 5 所示。图中 C1、C2 用于频率补偿,防止自激振荡和抑制高频干扰;C3 采用电解电容,以减少电源引入的低频干扰对输出电压的影响;D是保护二极管,当输入端短路时,给 C3 一个放电的通路,防止 C3 两端电压激穿调 整管的发射结。U17805+5V3+ C2 0 IIIC1 9 100u0.1图 5-5 稳压电路图DNG

28、_ C2 1100uC2 2_0.1 uGND*215 LED 显示电路的设计LED 显示主要是显示所发射的所发送的信号的个数,它就实现以下的作用。当 按下某一按键比方说 2 键,LED 会显示 01,如果再按下 2 键,LED 就显示 00。如果 同时按下 2个键,那么 LED 就显示 02。下面介绍 LED 的主要性能。LED 显示器由 7 个发光二极管组成,又叫 7 段 LED 显示器,显示器中还有一个 圆点型发光二极管,用于显示小数点。通过七个发光二极管亮暗的不同组合,可以显示多种数字、字母以及其它符号。LED 显示器中的发光二极管共有两种连接方法:(1)共阳极接法把发光二极管的阳极连

29、在一起构成公共阳极。使用时公共阳极接+5V。这样阴极端输入低电平的段发光二极管就导通点亮,而输入高电平的则不点亮。共阴极接法把发光二极管的阳极连在一起构成公共阳极。使用时公共阳极接+5V。这样阴极端输入低电平的段发光二极管就导通点亮,而输入高电平的则不点亮。在设计的电路中,采用了共阳极接法,原理图如5- 1 所示。它显示十六进制数的字形代码如表 5-2 所示22图 5- 1 LED 显示原理图dpR*8g -COM23dpgfedcba字形字形码110000000C0H111110011F9H101001002A6H101100003B0H10010010499H10010010592H100

30、00010682H111110007F8H10000000880H10010000990H01000000040H表 5-2 十六进制数的字形代码表246 控制部分在控制部分采用了隔离驱动电路,用光电器件作为隔离元件,利用光耦来隔离强 电,以防止强电影响单片机的工作。 光电耦合器是由发光二极管和光敏三极管组合起 来的器件,发光二极管是把输入边的电信号变换成相同规律变化的光,而光敏三极管是把光又重新变换成变化规律相同的电信号,因此,光起着媒介的作用。由于光电耦合器抗干扰能力强,容易完成电平匹配和转移,又不受信号源是否接地的限制。 所以 应用日益广泛。光电隔离的目的是割断两个电路的电气联系, 使之

31、相互独立,从而也就割断了噪 声从一个电路进入另一个电路的通路。 光电隔离是通过光电耦合器实现的。 外壳有金 属的或塑料的两种。发光二极管和光敏三极管之间用透明绝缘体填充,并使发光管与 光敏管对准,以提高其灵敏度,光电耦合器的电路符号如图 6- 1 所示。了夕U11图 6- 1 光电耦合器原理图输入信号使用权发光二极管发光O2其光线又使光敏三极管产生电信号输出,从而既完成了信号的传递又实现了电气上佈离。光电耦合的响应时间一般不超过几个微 秒。光电耦合器的输入 端与输出 端在电气上是绝缘的,且输出端对输入端也无反 馈,因而具有隔离和抗干扰两方面的独特性能。 通常使用光电耦合器是为实现以下两 个主要

32、功能:电平转换:TTL 电路与电源电路之间不需另加匹配电路就可以传输信号, 从而实 现了电平转换。隔离:这时由于信号电路与接收电路之间被隔离, 因此即使两个电路的接地电位 不同,也不会形成干扰。光电耦合器中光敏三极管的基极有引出和不引出两种形式。 基极引出通常是经一 个电阻接地。通过接地电阻可以控制耦合的响应速度和灵敏度。总的来说,电阻越小,响应速 度越25高。电路如图 6- 2 所示。26+9V图 62 控制电路图通过光耦后,利用继电器就可以实现对不同的设备或者其他要控制的设备进行控 制,从而实现了弱电来控制强电的功能, 也能控制不同的设备。这里用发光二极管来 代替,实际上可以控制多个不同的

33、强电设备。277 调试结果及其分析本电路总共设计了 8 个输入按键, 7,8 为特殊按键。当输入一个按键 5 时,通过红外发射和接收电路,对应的继电器 5 的设备工作 即 5 号发光二极管发光,而数码管显示工作的设备的个数,就显示1 。当再次按下按键 5 时,5 号发光二极管灭,数码管显示 0。当同时按下两个键 3 和 4 时,3 号和 4 号二极管亮,数码管显示 2。 当按下按键 7时,所有设备都不工作,数码管显示 0,发光二极管都不发光。 当按下按键 8 时,所有设备都工作,数码管显示 6,发光二极管都发光。 本设计在调试过程中也遇到很多问题。(1)电路要求遥控控制距离为 4 6m 在利用

34、 38KHZ 的接收头时,虽然能接收到信号, 但是接收的距离很有限。 经过反复调试, 换用 40KHZ 的接收头时基本满足了设计需求。由于将 3ms 的接收脉冲放在 1ms 的后面,编码解调出现错误,导致接受端无信号 输出。解决方法是将 3ms 的接收脉冲放在前面就可以接收到信号。因为在电路的解码 过程中,单片机进行数码帧的接收处理,首先是对 3ms 的脉冲检验,当第一位低电平 码的脉宽小于2ms 时就会错误处理。在初始化过程中,将 P1 口全置 0,但是继电器仍工作,通过反复调试,将初始 化的 P1 口全置 1,通过反向使得输出全为 0,从而满足上电复位,继电器掉电,满足 初始化要求。288

35、 结论由于目前的遥控装置大多对某一设备进行单独控制, 而在本设计中的红外遥控电 路设计了多个控制按键, 可以对不同的设备, 也可以对同一设备的多个功能进行不同 的控制。基本符合技术要求。但是本电路也有不完善的地方 ,它只能单通道实现对多个设备的控制 , 即它不能 同时控制两个或者两个以上的设备。在设计过程中, 通过大量的查阅资料, 认真研究教材, 对单片机有了更为深刻的 理解,在设计软件时,须仔细的分析硬件电路,画出程序流程图,培养了我的耐性和 刻苦钻研的精神。29参考文献1 全国大学生电子设计竞赛组委会 . 第五届全国大学生电子设计竞赛获奖作品选编, 第 1版,北京理工大学出版社, 2005

36、 年, P10-17.2 康华光,陈大钦 .电子技术基础模拟部分,第 4 版,高等教育出版社, 1999 年, 第四版, P82-155.3 康华光,邹寿彬.电子技术基础数字部分,第 4 版,高等教育出版社, 2000 年,第 四版,P83-155.4 李锦春,蔡仁明.常用晶体二极管、大功率三极管手册,人民邮电出版社 ,1981 年, 第一版, P23-55.5 黄智伟,王彦,陈文光 . 全国大学生电子设计竞赛训练教程,第 1 版,电子工业出 版社,2005 年,P304-P314.6 吴金戌,沈庆阳,郭庭吉 .8051 单片机实践与应用,第 1 版,清华大学出版社,2002 年, P147-

37、167.7 青木英彦. 模拟电路的设计与制作,第 1 版,科学出版社, 2005 年, 119-131.8 李广弟,朱月秀,王秀山 . 单片机基础,第 2 版,北京航空航天大学出版社, 2001 年,P13-71.9 梅丽风,王艳秋,张军等. 单片机原理及接口技术, 第 1 版,清华大学出版社, 2004年, P296-323.10 何立民. 单片机应用文集,第一版,北京航空航天大学出版社, 1991, P1-310.11 何立民. 单片机应用系统设计系统配置与接口技术,第 2 版,北京航空航天 大学出版社, 1995, P31-175.12 赵亮,侯国锐.单片机 C 语言编程与实例,第一版,

38、人民邮电出版社,2003.9 ,P1-152.13 刘胜利. 新型显示器电路分析,第一版,电子工业出版社, 1999, P122-344.14 胡伟.单片机 C 程序设计及应用实例人民邮电出版社,2003.7,P1-247.15 实用电子元器件手册 . 上海科学技术出版社, 1998.2, P1-21.16 李广弟等 . 单片机基础,北京航空航天大学出版社, 2002.6, P1-223.17 Michael A. MilleData and Network Communicajti(第一版,科学出版社,2002 年18 J. Bhaskre 著,徐振林译. VerilogHDL 硬件描述语言

39、,第一版,电子工业出版社,2004年30附录 1:发射程序ORG0000H;程序执行开始地址AJMPSTART;跳至 START 执行ORG 001BH;定时器 T1 中断入口地址LJMPINTT1;跳至 INTT1 中断服务程序ORG0030HSTART:MOVSP,#70H;设堆栈基址为 70HCLRP3.5;关遥控输出MOVIE,#00H;关所有中断MOVIP,#01H;设优先级MOVTMOD,#22H;8 位自动重装初值模式MOVTH1,#0F3H;定时为 13 微秒初值MOVTL1,#0F3HJSETBEA;开总中断允许;键盘MOV P1,#0FFHJIAN: LCALL DELAY

40、2MOV A,P1CJNE A,#0FFH,JIAN1LJMP JIANJIAN1:MOV A,P1CJNE A,#0FEH,JIAN2LJMP MN4JIAN2:MOV A,P1CJNE A,#0FDH,JIAN3LJMP MN0JIAN3:MOV A,P1CJNE A,#0FBH,JIAN4LJMP MN6JIAN4:MOV A,P1CJNE A,#0F7H,JIAN5LJMP MN2JIAN5:MOV A,P1CJNE A,#0EFH,JIAN6LJMP MN5JIAN6:MOV A,P1CJNE A,#0DFH,JIAN731LJMP MN1JIAN7:MOV A,P1CJNE A,#

41、0BFH,JIAN8LJMP MN3JIAN8:MOV A,P1CJNE A,#07FH,NNLJMP MN7NN:LJMP JIANmn0:MOVA,#02H;发 2 个脉冲LCALLajmp nnREMOTE;转发送程序mn1:MOVA,#03H;发 3 个脉冲LCALLajmp nnREMOTE;转发送程序mn2:MOVA,#04H;发 4 个脉冲LCALLajmp nnREMOTE;转发送程序mn3:MOVA,#05H;发 5 个脉冲LCALLajmp nnREMOTE;转发送程序mn4:MOVA,#06H;发 6 个脉冲LCALLajmp nnREMOTE;转发送程序mn5:MOVA

42、,#07H;发 7 个脉冲LCALLajmp nnREMOTE;转发送程序mn6:MOVA,#08H;发 8 个脉冲LCALLajmp nnREMOTE;转发送程序32mn7:MOVLCALLajmp nnA,#09HREMOTE;发 9 个脉冲;转发送程序;mn8:MOVA,#0AH;发 10 个脉冲JLCALLREMOTE;转发送程序Jajmp nn;mn9:MOVA,#0BH;发 11 个脉冲JLCALLREMOTE;转发送程序Jajmp nn;mn10:MOVA,#0CH;发 12 个脉冲JLCALLREMOTE;转发送程序Jajmp nn;mn11:MOVA,#0DH;发 13 个脉

43、冲JLCALLREMOTE;转发送程序Jajmp nn;mn12:MOVA,#0EH;发 14 个脉冲JLCALLREMOTE;转发送程序Jajmp nn;mn13:MOVA,#0FH;发 15 个脉冲JLCALLREMOTE;转发送程序Jajmp nn;mn14:MOVA,#10H;发 16 个脉冲JLCALLREMOTE;转发送程序Jajmp nn;mn15:MOVA,#11H;发 17 个脉冲JLCALLREMOTE;转发送程序; ajmp nn.*;* 编 码 发 射 程 序.*JREMOTE:MOVR1,A;装入发射脉冲个数LJMPOUT3;转第一个码发射处理OUT:MOVR0,#5

44、5H;1MS 宽低电平发射控制数据OUT1:SETBET1;开 T1 中断33SETBTR1;开启定时器 T1NOPNOPNOPNOP NOPDJNZR0,OUT1;延时;时间不到转 OUT1 再循环MOVR0,#32H;1MS 高电平间隙控制数据OUT2:CLRTR1;关定时器 T1CLRET1;关 T1 中断CLRP3.5;关脉冲输出NOPNOPNOPNOPNOPNOPNOPNOPNOPNOPNOPDJNZR0,OUT2;空操作延时;时间不到转 OUT2 再循环DJNZR1,OUT;脉冲未发完,转 OUT 再循环发射LCALLDL500MSJOUT3:RETMOVJR0,#0FFH;装发谢

45、 3MS 宽控制数据LJMPOUT1;转 OUT1.*;* 延时 513 us *.*J;513 微秒延时程序DELAY:MOVR2,#0FFHDELAY1:DJNZR2,DELAY134RETDELAY2: MOV R2,#0FFHDELAY3:MOV R3,#0FFHDJNZ R3,$DJNZ R2,DELAY3RET.*延时 10ms.*;10 毫秒延时程序RET;500 毫秒延时程序RET.*T1 中断服务程序.*INTT1: CPL P3.5RETIENDDL10MS:MOVR3,#14HDL10MS1:LCALLDELAYDJNZR3,DL10MS1DL500MS:MOVR4,#3

46、2HDL500MS1:LCALLDL10MSDJNZR4,DL500MS1;40kHZ 红外线遥控信号产生;中断返回;程序结束35附录 2:接收程序MOV 30H,P1MOV R7,#08HCLR CMOV A,30HRLC AMOV 30H,AMOV A,31HADDC A,#00HMOV 31H,ADJNZ R7,XUNMOV A,31HSWAP AORG0000HLJMPSTARTORG0003HLJMPINTEX0ORG0030HMOV SP,#70HMOVIE,#00H;关所有中断SETBEX0;开外中断SETBEA; 总中断允许MOVP1,#00HLCALLDELAY;持续 512

47、 微秒START:MAIN:MOV 31H,#00HXUN:36.*遥控接收程序.*;采用中断接收INTEX0:MOV 32H,ALJMP MAINNOPLJMP STARTMOV P2,A;转 MAIN 循环;PC 值出错处理; 出错时重新初始化37MOV 20H,CCLRJNBEX0P3.1,READ1;关外中断;P3.5 口为低电平转 READ1READOUTT0:SETBEX0;P3.5 口为高电平开中断(系干扰)MOV A,32HMOV C,20HRETI; 退出中断READ1:CLRA;清 AMOVDPH,A;清 DPTRMOVDPL,AJHARD1:JBP3.1,HARD11;P

48、3.5 变高电平转 HARD11INCDPTR;用 DPTR 对低电平计数NOP;1 微秒延时NOPAJMPHARD1; 转HARD1 循环 (循环周期为 8 微秒)HARD11:MOVA,DPH;DPTR 高 8 位放入 AJZREADOUTT0;为 0(脉宽小于 8*255=2 毫秒)退出CLRA;不为 0 说明是第一个宽脉冲( 3 毫秒)READ11:INCA; 脉冲个数计 1READ12:JNBP3.1,READ12; 低电平时等待MOVR1,#06H; 高电平宽度判断定时值READ13:JNBP3.1,READ11;变低电平时转 READ11 脉冲计数LCALLDELAYREAD;延

49、时( 512 微秒)DJNZR1,READ13;6 次延时不到转 READ13 再延时DECA; 超过 3 毫秒判为结束,减 1DECA;减 1JZFUN0;为 0 执行 FUN0 (2 个脉冲)DECA;减 1JZFUN1; 为 0 执行 FUN1 ( 3 个脉冲)DECAJJZFUN2;为 0 执行 FUN2 (4 个脉冲)DECAJJZFUN3; 为 0 执行 FUN3 ( 5 个脉冲)DECA38JZFUN4;为 0 执行 FUN4(6 个脉冲)DECAJJZFUN5;为 0 执行 FUN5(7 个脉冲)DECAJJZFUN6;为 0 执行 FUN6(8 个脉冲)DECAJJZFUN7;为 0 执行 FUN7(9 个脉冲)DECAJJZFUN8;为 0 执行 FUN8 (10 个脉冲)DECAJJZFUN9;为 0 执行 FU

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论