1、毕业设计论文(说明书) 前言 随着电子技术的发展,遥控技术得到了越来越广泛的应用。遥控技术正在向各个领域渗透,其重要性日见突出。在家用电器方面,带红外遥控的家用电器得以广泛普及.给人们的生活带来了很大的方便。但是,在一个家庭中如果遥控器过多,则使用过程容易产生混乱,给使用者造成许多不必要的麻烦。 为了解决这个问题 ,我们设计一种智能型红外遥控器,利用对各种红外遥控器发射的控制信号进行识别、存储和再现。也就是说,只需要一个智能遥控器,就可以对多个遥控器的发射信号进行学习和记忆,从而实现对多个电器的遥控。我们设计的智能型遥控器是基于单片机51的而设计的,利用“89C51”和其外围电路,进行对信息的
2、处理,并进行显示。本设目录1遥控器的现状和发展2红外发射的优缺点及基本原理3智能遥控器的结构和功能4智能遥控器的硬件电路 红外发射电路红外接收电路键盘电路显示电路8155的扩展2864(EEPROM)的扩展5智能遥控器的的软件电路原程序的注释各子程序的剖析5心得体会6主要集成电路7附录 设计任务书 随着电子技术的发展,带红外遥控的家用电器得以广泛普及.给人们的生活带来了很大的方便。但是,在一个家庭中如果遥控器过多,则使用过程容易产生混乱,给使用者造成许多不必要的麻烦。 为了解决这个问题 ,可设计一种智能型红外遥控器,利用对各种红外遥控器发射的控制信号进行识别、存储和再现。也就是说,只需要一个智
3、能遥控器,就可以对多个遥控器的发射信号进行学习和记忆,从而实现对多个电器的遥控。一、 技术要求 1.能对所设置的内容进行存储,2.有”学习”和”控制”两种状态,并显示 3.能对电路电源进行检测,电源电压低于一定程度发出警报 4.对于宏定义不做要求。 5.键盘扫描采用逐行扫描 6.由于EPPROM我们只买到了8K的2864A,存储单元不够。所以,只能先控制两个电器来表示一下。 7. 由于2864(EPPROM)的存储时间较慢,所以采用先存储到RAM里,在由RAM存到ROM里。二、主要技术指标1. 能对2个电器进行控制2. 用单片机进行控制用到两个定时器3. 抗扰性能的设计(详见 ) 三、时间安排
4、4.234.30 查找资料,确定方案5.015.08 整理资料,设计电路5.095.12 购买元件,电路设计5.135.31 安装电路,硬件调试,软件设计 6.016.08 软件调试,整机调试6.096.14 写论文,准备答辩四、参考文献1、 欧阳杰主编 红外电子学 北京理工大学出版社2、 何立民主编 单片机运用技术选篇之7 北航出版社 3、袁光明主编 电子自动控制器件设计制作维修大全 重庆大学出版社4、郑凤翼主编 家用电器遥控原理与维修 人民邮电出版社5、胡汉才主编 单片机原理及其接口遥控器的现状和发展 随着科学技术的不断发展,遥控技术正向各个领域渗透,特别是红外线与声波遥控技术,在工业生产
5、、家用电器、安全保卫以及人们的日常生活中得到了广泛应用。例如,电视机的遥控、音响设备的遥控、录象机的遥控、电扇的遥控、安全保卫报警器、遥控空调器、自动水龙头、自动门等均可采用红外遥控技术来实现。 那么什么是红外线遥控呢?红外线遥控就是指利用红外线来传递信号,实现对控制对象的远距离控制目的,具体来讲,就是由发射器发出红外线指令信号,由接收器接收下来并对信号进行处理,最后实现对控制对象的各种功能的远距离控制。红外发射的优缺点和基本原理红外线光控电路的基本原理在一些控制距离不远且不需要多通道控制的场合,如红外线光电检测和近距离红外线光控等。这些场合一般距离较近,干扰影响不大,发射电路中红外发光二极管
6、可以采用恒定直流驱动。采用恒定直流驱动,发射及接收电路可得到大大简化。这类电路一般不用于较远距离的遥控,通常,发射与接收部分属同一整体电路系统。因此,我们不把这类电路称作红外遥控电路,而称作简单红外线光控电路。可见,简单红外线光控电路结构非常简单,由直流电源直接驱动红外发光二极管恒定的红外光,接收电路也不需要选频或解码电路,只有(有时不需要)直流放大器和记忆及执行电路。由于采用恒定直流驱动,电源利用率较低,但可使整个系统结构大大简单,成本大大降低。简单红外线光控电路虽然简单,但应用较广,尤其在一些光电自动控制及自动检测系统中得到了广泛的应用。优缺点1 功耗低2 外围元件少3 使用方便、灵活4
7、抗干扰性能好基本结构和功能一 遥控器结构及功能 这种智能型遥控器的结构如图1所示。功能 遥控器共有32个键。其中,31、32为功能键,1、2为电器编号,其余为控制按钮。 电路有两种工作状态:“学习”状态和“控制”状态,可通过32号键进行转换。若希望对1号电器的遥控器进行学习,则在“控制”状态同时按下31号键,遥控器进入“学习”状态。此时,将被学习的遥控器发射头对准智能遥控器的接收头,同时按下两个遥控器相应的按键,这时数码管同时亮,右边的数码管一闪即灭,就可以完成一次学习过程。当所有按键都学习完毕后,按下32号键回到“控制”状态。这时就可以对被学习的电器进行控制。硬件电路a红外发射电路 红外发射
8、电路中VD2为红外发光二极管,由于单片机无法直接驱动二极管,因此加入9015为缓冲 B红外接收电路 红外线接收电路 在红外接收器中,光电转换器的作用是,将红外光敏器件接收到的红外光指令信号,转换为相应的电信号。光电转换器是红外线接收的大门,对整个接收电路影响较大。光电转换器,由光敏器件(光敏二极管或光敏三极管)和少量其它元件构成。在光敏二极管构成的光电转换器中,光敏二极管必须反向运用(反偏)。当光敏二极管或光敏三极管接收到红外光信号时的光电流为一定值时,与它们串联的负载电阻R越大,从A点得到的交流电压也就越大。红外线遥控接受电cx20106是红外线遥控接受前置放大双极型集成电路,适用与电视机等
9、。内部电路有前置放大器、自动偏置电平控制电路、限幅放大器、带通滤波器、峰值检波器和波形整形电路等组成。CX20106A是CX20106的改进型,二者之间的主要差别在于电参数略有不同,技术特点:1。低电压供电,其典型值为5V。2。功耗低。Vcc=5V时,其典型功耗为9mW.3。带通滤波器的中心频率可通过改变5脚和电源之间的电阻进行调节,其调节的范围为30-60khz.由于未使用电感,可不受磁场的干扰,因此抗干扰能力强。4。能于PIN光电二极管直接连接。5。集电极开路输出,能直接驱动TTL或CMOS电路。6。8脚单列直插式塑料封装。7。配套使用型号为M50462AP.引脚排列图及功能1脚 IN 遥
10、控信号输入端(此脚于地之间接红外线接受二极管) 2.52脚c1 前置放大器频率特性和增益设定(此脚与地之间RC串联电路) 2.53脚 c2 接检波电容 1.54脚 GND 接地 05脚 fo 设定带通滤波器的中心频 率 1.46脚 c3 外接积分电容 1.07脚 OUT 遥控指令输出端 5.08脚 Vcc 外接电源 5.05键盘6显示7扩展81558扩展2864A心得体会主要集成电路参考书目5、智能遥控器的软件电路 原程序的注释 各地址分配:20h-放键号 21h-放键号22h-EPPRROM首址23h-发送一个字节数24h-接收占存25h-一个信号的字节数26h-已存放按键数27h-接发标志
11、28h-存、发送29h-判断是否存储时,同一按键按下 时间过长 2ah-占存b2bh-按键出错标志P1.0-左显示器P1.1-右显示器P1.2-电源控制(2864EPPROM收)P1.3-接收控制P1.4-发送控制P1.5-一次操作结束P1.6-切换电器标志位P1.7-有效按键标志位为避免口地址冲突,地址分配如下:EPPROM-4000H4FFFH(电器一)EPPROM-5000H5FFFH (电器二)EPPROM-4FFFH和5FFFH 已存按键数8155RAM-3E00H3EFFH8155命令/状态寄存器-3F00H8155PA、PB、PC口地址-3F01H、3F02H、 3F03H、 显
12、示器控制状态 控制: 选择电器出错 (灭,亮) 亮显示为“1”选择电器正确 (亮,灭) 亮显示为“电 器号” 学习: 开始存储 (亮,亮) 亮显示为原先的 电器号 存储结束 (灭,亮) 亮显示为原先的 电器号 空键-没有存储信息 (灭,灭) org 0000h ljmp mainorg 0003h ;考虑到INT0端空置ljmp main 抗干扰的设置; org 000bh ljmp achuliorg 0013hljmp mainorg 001bhljmp mainorg 0023hljmp mainorg 0030hkeyboard /*键盘扫描*/mov dptr,#3f01h ;扫描初
13、值送8155a口;mov a,#00hmovx dptr,ainc dptrinc dptrmovx a,dptr ;读8155c口;anl a,#0fh ;屏蔽高位;cjne a,#0fh,lk2 ;无键跳转到lk2;ajmp kreturn2 ;有键跳转到kreturn; lk2:;扫描模式送R2;mov r2,#0feh ;赋处值;mov r4,#00hlk4:mov dptr,#3f01h ;扫描模式送8155a口;mov a,r2movx dptr,ainc dptrinc dptrmovx a,dptr ;读8155c口;jb acc.0,lone ;转判第一行;mov a,#00
14、h ;0行有键闭合,首键号ajmp lkp 0进a;lone: ;转判第二行;jb acc.1, ltwo;转判第二行;mov a,#08h ;1行有键闭合,首 ajmp lkp 键号8进a ;ltwo:jb acc.2,lthr;转判第三行;mov a,#10h;2行有键闭合,首键ajmp lkp 号10h进a;lthr:jb acc.3,knext ;转判下一列;mov a,#18h ;3行有键闭合,首键号lkp: 18h进a;add a,r4;行号加列号进a;mov 20h,a ;键号进20h;xrl a,21h ;两次按键是否相同;jz kreturn1 ;相同转kreturn1;aj
15、mp kreturn2 ;相异转kreturn2;knext:inc r4 ;列计数器加1;mov a,r2;判是否已扫到最后一列,jnb acc.7,kreturn2 仍无键转到kreturn2;rl a;扫描模式左移一位;mov r2,aajmp lk4kreturn1: ;有效键按下置标志位为1;setb p1.7retkreturn2: ;无效键按下置标志位为0;clr p1.7retorg 00f0hmainkey: /*返回一个有效按键*/lcall keyboardjnb p1.7,keys 无效键按下转到keys;mov a,20h 有效键按下键号进a;retkeys: mov
16、 a,20h ;第一次按键进21h保存;mov 21h,alcall delay ;延时消除抖动;sjmp mainkeydelay/*延时20ms/*mov r5,#80tm1:mov r6,#123noptm2:djnz r6,tm2djnz r5,tm1retorg 0130hwr:mov r1,#10h;每页写16个字节;mov r6,#09h;每个按键有9页的mov dptr,#3e00h存储空间;mov b,#00hmov r4,#1ch;共28个控制按键;mov a,26h;已存放数进a;clr csubb a,#1ch;判已存放数是否大于28;jc ly;小于28转到ly;mo
17、v a,22h;大于28求首址;add a,#0fh ;看是4fffh还是5fffh;mov dph,a ;a进高位;mov dpl,#0ffh ;低位为0ffhmov a,#0ffhmovx dptr,awloop1:movx a,dptr ;是不是第一次存储;xrl a,#0ffhjb acc.7,wloop1 ;不是转到wloop;mov 2bh,#00h ;是按键出错标志;retly:cjne a,#00h,aaa ;出错到aaa否则到bbb;bbb:mov a,#90h ;计算首址;mov b,26h ;已存放数进a;mul ab;求存储地址;mov r0,amov a,badd a
18、,22hmov p2,a ;放到地址线上;wr1:movx a,dptr;地址中的值进a;mov r5,a ;存入r5;movx r0,ainc dptrinc r0cjne r0,#00h,anextinc p2anext:djnz r1,wr1;不到16个字节,再写;dec r0aloop:movx a,r0xrl a,r5jb acc.7,aloopinc r0mov r1,#10h ;16个字节重新赋值;djnz r6,wr1 ;9页写完否;mov 2bh,#0ffhretaaa:mov a,#90h;计算首址;mov 2ah,b ;保存b;mul ab mov r0,amov a,b
19、add a,22hmov p2,amovx a,r0xrl a,20h ;是不是按键号;jz wr1;是到写;mov b,2ah;恢复b;inc b;看下一个键;djnz r4,aaa ;28个按键看完否;ajmp bbb;看完到bbb;org 0300hmain:clr tr0 ;初始化;clr tr1clr et0clr et1clr ex0clr ex1clr esclr eamov 20h,#0ffh ;89c51RAM的初始化;mov 21h,#0ffhmov 22h,#00hmov 23h,#08hmov 24h,#00hmov 25h,#90hmov 26h,#0ffhmov 2
20、7h,#0ffhmov 28h,#00hmov 29h,#0ffhmov 2ah,#00hmov 2bh,#0ffhmov a,#1fh ;p1口的初始化;mov p1,amov 70h,#06h ;显示缓冲区06为a、mov 71h,#5bh 5b为2;mov sp,#30h mov psw,#00hlcall delaymov dptr,#3f00h ;8155初始化;mov a,#03hmovx dptr,amov tmod,#01h ;定时器0初始化;mov tl0,#0fhmov th0,#00hsetb ea ;中断允许;start:lcall mainkeyclr c;超过28个
21、键出错;subb a,#1chjnc error mov a,20h ;键号进a;clr csubb a,#02h;不为显示电器号转到ERROR;jnc errorstart1:setb p1.1;灭右显示器;mov a,20h;键号进a;swap a ;求存储首址,看是4fffhadd a,#40h还是5fffh;mov 22h,aadd a,#0fhmov p2,a ;送地址线;mov r0,#0ffh ;因为4fffh或5fffh存movx a,r0的是按键个数;mov 26h,a ;按键个数进26h保存;clr csubb a,#40h ;键号恢复;swap aadd a,#70h ;
22、求显示码;mov r0,amov a,r0mov dptr,#3f02h ;送8155b口-置形口;movx dptr,aclr p1.0;左显示器有效;setb et0 ;开t0中断、再此处开为了setb tr0 准确;hlta:jnb p1.6 hlta ;切换电器无效、等待;mov a,2bh;是否按键出错;jz lysb;出错到lysb;sjmp start1;没出错到start1;error:setb p1.0;灭左显示器;mov a,#06h ;送1的显示码;mov dptr,#3f02h;显示码送8155b口;movx dptr,aclr p1.1;右显示器有效;sjmp sta
23、rtlysb:ljmp mainorg 0400hachuli:clr p1.0;左显示器有效;clr p1.6 ;切换电器无效;clr tr0;定时中断;mov tl0,#0fh;从新赋初值;mov th0,#00hlcall mainkeyclr csubb a,#02h;一开始不是电器号到jnc againagain;xdx:setb p1.6;切换电器有效;areturn:setb tr0;开定时;retiagain:mov a,20hxrl a,#1fh;是否是最后一个键(退出);jz areturnmov a,20hcjne a,#1eh,control ;是否学习状态,不是到控制
24、状态;learn:clr p1.0;左显示器有效;setb p1.1;灭右显示器;mov 27h,#00h ;置接发标志位;lcall mainkeycjne a,#1fh,ago;不是退出键,转到ago;sjmp controlago:mov a,20h;在学习状态中不是电器号clr c也不是退出键,转到subb a,#02h restore;jnc restoresjmp learn;否则转到learn;restore:mov a,20h;是否学习键,是学习;xrl a,#1ehjz learnmov a,20hxrl a,29h;判键松否;jz learn;不松等待到松;clr p1.1
25、;键松使左右显示器都有效;clr p1.2lcall delaylcall delaymov dptr,#3e00h;键号送8155的缓冲区;mov a,20hmovx dptr,adel1:mov r7,#34 ;定时70us;del2:djnz r7,del2lcall bchulijnb p1.5,del1;一次操作结束否mov a,27h没结束继续采样;xrl a,#00h ;是否接发;jnz control ;发转到control;lcall wr ;接转到wr;setb p1.0 ;灭左显示器;lcall delay;两次延时为了人眼能看清;lcall delaymov 29h,2
26、0h;键号到29h;mov a,2bhjz xdx;按键号是否正确,不正确到xdx;ajmp learncontrol:setb p1.1;灭右显示器;clr p1.0 ;左显示器有效;setb p1.2;关断2864的电源;mov a,20hxrl a,#1fh ;是不是退出键;jz areturnmov a,20hxrl a,#1eh ;是不是学习键;jz learnmov r6,#1ch ;r6为28个键数;mov b,#00hfind:mov a,#90h ;计算首址;mov 2ah,b ;保存b;mul ab mov r0,a mov a,badd a,22h mov p2,amov
27、x a,r0xrl a,20h ;是不是要发的键;jz send ;是转到send;mov b,2ahinc b;恢复b,看下一个存储区;djnz r6,find ;28个键都看完,还不是转到setb p1.0 find继续查;setb p1.1 lcall delaylcall delayajmp areturnsend: /*通过8h发送*/mov dph,p2 mov dpl,r0inc dptrmov 27h,#0ffhmovx a,dptrmov 28h,adel3:mov r7,#34 ;70us发送周期;del4:djnz r7,del4lcall bchulijnb p1.5,
28、del3 ;一次发送完成否;mov a,27hxrl a,#00hjnz zcllcall wrsetb p1.1ajmp learnzcl:ljmp areturnorg 0500hbchuli:clr p1.5mov a,27hcjne a,#00h,cchulimov a,24h;接受占存标志位进a;mov c,p1.3rrc amov 24h,adjnz 23h,breturnmov 23h,#08h ;一个字节发送完否;inc dptr movx dptr,adjnz 25h,breturn;144个字节即一个按键信号mov 25h,#90h 完成否;setb p1.5 ;完成置发送
29、完成标志位;push dph ;地址入栈保存;push dplinc 26h ;已存放数加一;mov a,22h ;求首址,把已存放数add a,#0fh放到4fffh或5fffh中;mov dph,amov dpl,#0ffhmov a,26hmovx dptr,aloop1:movx a,dptrxrl a,26hjb acc.7,loop1pop dplpop dphclr cbreturn:retcchuli:mov a,28h;存发送位进a;rrc a mov p1.4,c ;一位一位的传到发送缓冲区;mov 28h,adjnz 23h,creturn ;一个字节没发送完转到mov
30、23h,#08h creturn;inc dptrmovx a,dptr mov 28h,a;发送144个字节;djnz 25h,creturnmov 25h,#90hsetb p1.5 ;发送完置一次发送完标志位;creturn:retend设计任务书随着电子技术的发展,带红外遥控的家用电器得以广泛普及.给人们的生活带来了很大的方便。但是,在一个家庭中如果遥控器过多,则使用过程容易产生混乱,给使用者造成许多不必要的麻烦。为了解决这个问题 ,可设计一种智能型红外遥控器,利用对各种红外遥控器发射的控制信号进行识别、存储和再现。也就是说,只需要一个智能遥控器,就可以对多个遥控器的发射信号进行学习和
31、记忆,从而实现对多个电器的遥控。二、 技术要求 1.能对所设置的内容进行存储,2.有”学习”和”控制”两种状态,并显示。 3.能对电路电源进行检测,电源电压低于一定程度发出警报。 4.对于宏定义不做要求。 5.键盘扫描采用逐行扫描 6.由于EPPROM我们只买到了8K的2864A,存储单元不够。所以,只能先控制两个电器来表示一下。 7. 由于2864(EPPROM)的存储时间较慢,所以采用先存储到RAM里,在由RAM存到ROM里。二、主要技术指标4. 能对2个电器进行控制5. 用单片机进行控制用到两个定时器6. 抗扰性能的设计 三、时间安排4.234.31 查找资料,确定方案5.015.09
32、整理资料,设计电路5.095.12 购买元件,电路设计5.135.32 安装电路,硬件调试,软件设计 6.016.08 软件调试,整机调试6.096.15 写论文,准备答辩四、参考文献3、 欧阳杰主编 红外电子学 北京理工大学出版社4、 何立民主编 单片机运用技术选篇之7 北航出版社 3、袁光明主编 电子自动控制器件设计制作维修大全 重庆大学出版社4、郑凤翼主编 家用电器遥控原理与维修 人民邮电出版社5、胡汉才主编 单片机原理及其接口6 、苏长赞主编 红外线与超声波遥控人民邮电出版社7、 陈汝全主编 电子技术常用器件应用手册 机械工业出版社中文摘要在许多家用电器进入居家生活的时代,遥控器的普及
33、成为生活品质提高的标志。可是遥控器一多,可以想象操作起来很不方便。那么,能不能有一种遥控器,它可以兼容所有的家用电器,即一机在手,家用电器均可遥控。就这样,智能红外线遥控器诞生了。所谓智能遥控器,首先具有“智能”的功能,即可以学习,它可以存储多个遥控器的多种发射信号并加以保存,这样就会出现比方说,一个键既是彩电的某个键功能有是功放的某个键功能。其次,它是红外线来通信的,那么肯定要基于其他遥控器的红外发射功能,反过来说,只要是通过红外线通信的电器智能遥控器都可以遥控。关键词:红外线、遥控器、单片Abstract:The designs inspiration stems from life. M
34、any household appliances to get into our lives times.The remote indicators universal to become lifes character to lifes a symbol. But, romete incicator as well as bring out inconvenience, in that case, have one plant remote indicators universal. It can compatible possessions household appliances .Th
35、at is say ,A machine in hand , household appliances . all hear of you.Like this intellectual remote indicator to produce what is call intellectual remote indicator . First of all , it must to be provided with “intelligence”fuction. That is to say, it can learn. It may restor many remote indicators s
36、ignal and then preserve . then it appears, for instance ,a key is not only TVs key. But also VCDs key.Second, it correspond with infraned ray. So it in the affirmative because of others remote indicators function .In the other hand.Provided that correspond with aninfrared ray. It all can remote controlled operation.Keywords:An infrared rayRemote-controlled operationA utensil 目录三、 设计任务书 1二、 中英文摘要 3 三、 前言 6 四、 正文 7 第一章 遥控器的现状和发展 7 第二章 红外发射的优缺点及基本原理 8第三章 智能遥控器的结构和功能 9第四章 智能遥控器的硬件电路 10 1红外发射电路 102红外接收电路 113键盘电路 134显示电路