1、*光电系统设计与检测阐明书电子照片(证件照)题目红外遥控设计系(部)*专业(班级)*姓名*学号0411*指引教师*起止日期6月 3日6月15日长沙学院课程设计鉴定表姓名*学号0411*专业光电信息工程班级一设计题目红外遥控器指引教师*指引教师意见:评估级别: 教师签名: 日期: 答辩小组意见:评估级别:答辩小组长签名:日期:教研室意见:教研室主任签名: 日期: 系(部)意见:系主任签名:日期:阐明课程设计成绩分“先进”、“良好”、“及格”、“不及格”四类;10级光电检测课程设计任务书系(部):电子与通信工程系 专业:光电 指引教师:刘莉 孙利平 谭志光 谢志宇 -6-8课题名称红外遥控设计设计
2、内容及规定1.设计内容(选题范畴):光电检测技术综合应用备选抽签题目:1.1光电循迹设计 运用红外光电器件或摄像头器件让小车可以沿着预先划定线路行驶,普通线路由红色或黑色纸带或胶带制成。1.2光电避障设计运用红外或超声波进行障碍物探测,并且使小车可以成功避障碍。1.3光电遥控设计运用红外或无线进行遥控设计。1.4光电测距设计运用红外或超声波进行直线距离测量。1.5光电测速设计测速涉及直线速度和转速,运用光电开光、红外对管、光耦、激光及接受管等直射式或反射式装置进行测量电动机转速,规定系统可以判断电动机转动方向,并通过数码管或液晶显示单元显示检测成果;1.6微小位移检测设计运用PSD、光敏二极管
3、、Y型光纤设计微位移检测系统,规定电路可以显示微小位移值。1.7照度检测设计设计一款简易数字式光照度计,只需进行简朴操作便可对光照度进行测量。测量系统重要是依照硅光电池光伏效应,即在光辐射下,硅光电池转换出来电压与被测光照度有一定线性关系原理实现光照强度测量。系统依照人眼们对光照强度不同规定,通过测量光照度值进行判断,从而提示使用者环境光照强度与否符合规定。1.8光电测角设计运用角度传感器测量出运动物体运动方向和角度。1.9光电感应设计运用热释电器件进行智能感应或控制设计。1.10光电测温设计运用红外TN901或IN4148传感器进行温度测量。1.11光电追光设计运用红外对管或光敏电阻判断光源
4、方向,使小车做出相应动作。自拟题目请报指引教师批准。2.设计规定:2.1设计中器件及参数自拟,带MCU控制更佳;2.2设计中选用光电器件参数或基本原理阐明及有关测试数据分析阐明;如果软件中没有所选用光电器件,可用其她器件代替,但必要在课程设计报告中详细阐明其可代替性;2.3课题由抽签决定;自拟课题报指引教师审查;2.4撰写课程设计报告:格式和内容见课程设计报告电子模板。设计工作量1课题内容:运用光电器件进行各种物理量或环境变化进行检测或感应设计;2课程设计提交资料: 2.1 课程设计阐明书打印稿及电子文档;2.2 光电器件及其应用电路源文献和实物作品;进度安排起止日期(或时间)设计内容(或预期
5、目的)备注6月17日课题及安排简介、分组;收集、查阅资料方案论证、设计项目拟定6月18日6月20日运用Proteus或Multisim等软件设计,实物制作最后设计及调试,撰写课程设计阐明书6月21日答辩及演示教研室意见年 月 日系(部)主管领导意见年 月 日摘要: 诸多电器都采用红外遥控,那么红外遥控工作原理是什么呢?本文将简介其原理和设计办法。红外线遥控就是运用波长为0.761.5m之间近红外线来传送控制信号。惯用红外遥控系统普通分发射和接受两个某些。红外遥控惯用载波频率为38kHz,这是由发射端所使用455kHz晶振来决定,在发射端要对晶振进行整数分频,分频系数普通取12,因此455kHz
6、1237.9 kHz38kHz。也有某些遥控系统采用36kHz、40kHz、56kHz等,普通由发射端晶振振荡频率来决定。接受端输出状态大体可分为脉冲、电平、自锁、互锁、数据五种形式。 核心词:80c51单片机、红外发光二极管、晶振目录1、绪论72、红外遥控器82.1、基本原理及应用82.2、红外遥控发射某些92.3、红外遥控接受某些112.4、系统设计123、设计思路134、设计成果展示145、总结156、参照文献:15附录1:161、绪论人眼睛能看到可见光按波长从长到短排列,依次为红、橙、黄、绿、青、蓝、紫。其中红光波长范畴为0.620.76m;紫光波长范畴为0.380.46m。比紫光波长
7、还短光叫紫外线,比红光波长还长光叫红外线。红外线遥控就是运用波长为0.761.5m之间近红外线来传送控制信号。发射某些重要元件为红外发光二极管。它事实上是一只特殊发光二极管,由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出是红外线而不是可见光。当前大量使用红外发光二极管发出红外线波长为940nm左右,外形与普通5发光二极管相似,只是颜色不同。红外发光二极管普通有黑色、深蓝、透明三种颜色,判断红外发光二极管好坏办法与判断普通二极管同样:用万用表电阻挡量一下红外发光二极管正、反向电阻即可。在实际应用中要给红外接受二极管加反向偏压,它才干正常工作,亦即红外接受二极管在电路中应
8、用时是反向运用,这样才干获得较高敏捷度。红外接受二极管普通有圆形和方形两种。由于红外发光二极管发射功率普通都较小(100mW左右),因此红外接受二极管接受到信号比较薄弱,因而就要增长高增益放大电路。前些年惯用PC1373H、CX6A等红外接受专用放大电路。近来几年无论是业余制作还是正式产品,大多都采用成品红外接受头。成品红外接受头封装大体有两种:一种采用铁皮屏蔽;一种是塑料封装。均有三只引脚,即电源正(VDD)、电源负(GND)和数据输出(VO或OUT)。红外接受头引脚排列因型号不同而不尽相似,可参照厂家使用阐明。成品红外接受头长处是不需要复杂调试和外壳屏蔽,使用起来犹如一只三极管,非常以便。
9、但在使用时注意成品红外接受头载波频率。2、红外遥控器2.1、基本原理及应用红外线特点人眼睛能看到可见光,若按波长排列,依次(从 长到短)为红、橙、黄、绿、青、蓝、紫,红光波长范畴为 0.62m0.7m,比红光波长还长光叫红外线。红外线遥控器就是运用波长 0.76m1.5m之间近红外线来传送控制信号。 红外线特点是不干扰其她电器设备工作,也不会影响周边环境。电路调试简朴,若对发射信号进行编码,可实现多路红外遥控功能。 红外线发射和接受 人们见到红外遥控系统分为发射和接受两某些。发射某些发射元件为红外发光二极管,它发出是红外线而不是可见光。 惯用红外发光二极管发出红外线波长为 940nm 左右,外
10、形与普通5mm 发光二极管相似,只是颜色不同。普通有透明、黑色和深蓝等三种。判断红外发光二极管好坏与判断普通二极管同样办法。单只红外发光二极管发射功率约 100mW。红外发光二极管发光效率需用专用仪器测定,而业余条件下,只能凭经验用拉距法进行粗略鉴定。 接受电路红外接受管是一种光敏二极管,使用时要给红外接受二极管加反向偏压,它才干正常工作而获得高敏捷度。红外接受二极管普通有圆形和方形两种。由于红外发光二极管发射功率较小,红外接受二极管收到信号较弱,因此接受端就要增长高增益放大电路。然而当前无论是业余制作或正式产品,大都采用成品一体化接受头。红外线一体化接受头是集红外接受、放大、滤波和比较器输出
11、 西安科技大学高新学院 毕业论文 - 2 - 等模块,性能稳定、可靠。因此,有了一体化接受头,人们不再制作接受放大电路,这样红外接受电路不但简朴并且可靠性大大提高。红外遥控器由于受遥控距离、角度等影响,使用效果不是较好,如采用调频或调幅发射接受编码,则可提高遥控距离,并且没有角度影响。红外遥 控发射和接受模块可以用在室内红外遥控中,它不影响周边环境、不干扰其他电器 设备。由于其无法穿透墙壁,因此不同房间家用电器可使用通用遥控器而不会产 生互相干扰;电路调试简朴,只要按给定电路连接无误,普通不需任何调试即可投入 工作;编解码容易,可进行多路遥控。当前红外遥控在家用电器、室内近距离遥控中 得到了广
12、泛应用。此外模块还可以用在其她红外遥控系统中,应用前景十分辽阔。 通用红外遥控系统由发射和接受两大某些构成,应用编/解码专用集成电路芯片来进行控制操作,如图1所示。发射某些涉及键盘矩阵、编码调制、LED红外发送器;接受某些涉及光、电转换放大器、解调、解码电路。如下详细阐明 2.2、红外遥控发射某些红外遥控系统由发射和接受两大某些构成,系统采用编/解码专用集成电路和单片机芯片来进行控制操作。发射系统设计电路由如下几种基本模块构成:直流稳压电源,红外发射电路。系统框图如图2所示:、图2重要芯片 单片机简介同普通微解决器 89S52 控制器也由指令寄存器 IR 。指令译码器 ID 。定期及控制逻辑电
13、路和程序计数器 PC 等构成。程序计数器 PC 是一种 16 为计数器(注: PC 不属于特殊功能寄存器 SFR 范畴)。她总是存储着下一种要获得指令 16 位存储单元地址。也就是说, CPU 总是把 PC 内容作为地址,从内存中取出指令码或含在指令中操作数。因而,每当取完一种字节后, PC内容自动加 1 ,为取下一种字节作好准备。只有在执行转移子程序调用指令和中断响应是例外,那时 PC 内容不加 1 ,而是指令或中断响应过程自动给 PC 置入新地址。单片机上电或复 PC 自动清 0 ,即装入地址 0000H ,这就保证了单片机上电或复位后,程序从 0000H 地址开始执 行。指令寄存器 1R
14、 保存当前正在执行一条指令。执行一条指令,先要把她从程序存储器取到指令存储器中。指令内容含操作码和地址码,操作码送往指令译码器ID,并形成相应指令微操作信号。地址码送往操作数地址形成实际操作数地址。定期与操作是微解决器核心部件,她任务是控制取指令 执行指令 存取操作数或运算成果等操作,向其她部件发出各种微操作控制信号,协调各部件工作。 80C51单片机内设有振荡电路,只需外接石英晶体和频率微调电容就可产生内部时钟信号。2 AT89S52引脚VCC :电源GND: 接地P0 口:P0口是一种8位漏极开路双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输
15、入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具备内部上拉电阻。在flash编程时,P0口也用来接受指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1 口是一种具备内部上拉电阻8 位双向I/O 口,p1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低引脚由于内部电阻因素,将输出电流(IIL)。此外,P1.0和P1.2分别作定期器/计数器2外部计数输入(P1.0/T2)和时器/计数器2触发输入(P1.1/T2EX),详细如下表所示。
16、在flash编程和校验时,P1口接受低8位地址字节。引脚号第二功能:P1.0 T2(定期器/计数器T2外部计数输入),时钟输出P1.1 T2EX(定期器/计数器T2捕获/重载触发信号和方向控制)P1.5 MOSI(在系统编程用)P1.6 MISO(在系统编程用)P1.7 SCK(在系统编程用)P2 口:P2 口是一种具备内部上拉电阻8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低引脚由于内部电阻因素,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例
17、如执行MOVX DPTR)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强内部上拉发送1。在使用8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器内容。在flash编程和校验时,P2口也接受高8位地址字节和某些控制信号。P3 口:P3 口是一种具备内部上拉电阻8 位双向I/O 口,p2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低引脚由于内部电阻因素,将输出电流(IIL)。红外发射电路图遥控发射通过键盘,每按下一种键,即产生具备不同编码数字脉冲,这种代码指令信号调制在 4
18、0KH z 载波上,勉励红外光二极管产生不同脉冲,通过空间传送到受控机遥控接受器。 P1 口作为按键某些, P3.5 口作为发射某些,然后用三极管放大驱动红外发射。电路如下图所示。2.3、红外遥控接受某些1、接受某些系统框图:其中显示某些采用七段数码管显示。2.4、系统设计1、摇控码编码格式采用脉宽调制串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms组合表达二进制“0” ;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms组合二进制“1” ,其波形如图4所示。 图4 遥控码“1”和“0”红外遥控发射芯片采用 PPM 编码方式,当发射器按键按下后 ,将周期性地发
19、出同一种32位二进制码,周期约为108ms 编码脉冲。遥控编码脉冲由前导码、16 位地址码(8 位地址码、8 位地址码反码)和16 位操作码(8 位操作码、8 位操作码反码)构成。通过对顾客码检查,每个遥控器只能控制一种设备动作,这样可以有效地防止各种设备之间干扰。编码背面还要有编码反码,用来检查编码接受对的性,防止误操作,增强系统可靠性。前导码是一种遥控码起始某些,由一种 9ms 高电平 ( 起始码 ) 和一种 4. 5ms 低电平 ( 成果码 ) 构成,作为接受数据准备脉冲。 图5 发送一组完整编码脉冲上述“0”和“1”构成32位二进制码经38khz载频进行二次调制以提高发射频率,然后再通
20、过红外发射二极管产生红外线向空间发射。2、 遥控码发射当某个操作按键按下时,单片机先读出键值,然后依照键值设定遥控码脉冲个数,再调制成 40kHz 方波由红外线发光管发射出去。 P3.5 端口输出调制波如图 4 1 所示。3、数码帧接受解决当红外线接受器输出脉冲帧数据时,第一位码低电平将启动中断程序实时接受 数据帧。在数据帧接受时,将对第一位码码宽进行验证。若第一位低电平码 脉宽不大于2ms ,将作为错误码解决。当间隔位高电平脉宽不不大于 3ms 时,结束接受,然后依照累加器 A 中脉冲个数,执行相应输出口操作。图4 2 就是红外线接受器输出一帧遥控码波形图。3、设计思路本次课程设计设计思路,
21、采用单片机为载体,实现红外遥控器对显示数字控制,通过键盘扫描读取遥控器上按键并且进行判断。遥控器上数字与数码管显示数字完全同样,此外增设了“加”“减”键、消音键、遥控开核心。键盘上其她按键显示为键上字母,通过单片机对该系统实行控制,源程序见附录。本次设计实验程序原本程序为单片机配套红外遥控程序,在12864显示屏上显示,通过一番改动变成数码管显示。4、设计成果展示红外遥控器:设计实物图:5、总结一种星期课程设计终于完了,本次课程设计让我感触诸多,不但仅是知识上学习和掌握,同步也让我明白了诸多做人道理。在开始阶段,教师让咱们理解某些基本知识,当自己照着学习指引上内容完毕了一种课题时那种心情很棒,
22、我觉得自己尽自己最大努力去设计课程项目,便能感到一种幸福。由于是三人一组,这次课程设计中,我也有打酱油时候,固然更重要还是团队合伙,如果时间可以重来,我也许会认真去学习和研究,也也许会自己独立完毕一种项目,我相信无论是谁看到自己做出成果时心里一定会很兴奋。本次实验让我明白了一种很深刻道理:团队精神固然很重要,但人往往还是要靠自己努力,自己亲身去经历,这样自己心里才会踏实,学到东西才会更多。本次课程设计虽然不是自己亲手一字一句设计出来,但还是基本看懂了了它设计思路和程序。通过这些我复习了单片机有关知识、软件。这次课程设计是一种理论与实践结合过程,让我明白理论知识往往是不够,只有把所学理论与实际行
23、动相结合,才会提高自己综合实际能力和独立思考能力。在设计过程中咱们都会遇到很 多问题,但往往是一种小问题都会导致实验失败,这就要咱们花大量时间去思考和改正,这是一种很艰辛过程,但同步也是你收获最大过程。实验往往是一种苦中有乐过程,我但愿在后来实验学习中自己能独立思考,同步也要认真去完毕,这样既能学到知识,也能让自己实践操作得到锻炼。我要感谢咱们这个团队人员,她们帮我学到了诸多,同步也付出了诸多,也感谢教师细心指引,让咱们顺利完毕了课程设计。6、参照文献:1)2)3)4)附录1:#include #include #define uchar unsigned char/此表为LED字模 / 0
24、1 2 3 4 5 6 7 8 9 R U E L H uchar code number=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x98,0x88,0xc1,0x86,0xc7,0x89;/函数声名void delay(uchar x); /x*0.14MSvoid delay1(int ms);void beep();sbit IRIN = P32; /红外接受器数据线sbit BEEP = P15; /蜂鸣器驱动线uchar IRCOM7;uchar quite=1; /控制声音开关/*/main()P0=number0;IRIN=1;
25、 /I/O口初始化BEEP=1;IE = 0x81; /容许总中断中断,使能 INT0 外部中断TCON = 0x01; /触发方式为脉冲负边沿触发while(1); /*/void IR_IN() interrupt 0 using 0uchar j,k,N=0;uchar p;EX0 = 0; /关掉外部中断防止中断再次发生进入检测引导码阶段(9ms低电平4.5ms高电平)delay(15);if (IRIN=1) EX0 =1; /9ms检测检测结束从新打开外部中断return; while (!IRIN) /确认IR信号浮现delay(1); /等IR变为高电平,跳过9ms前导低电平信
26、号。for (j=0;j4;j+) /收集四组数据 for (k=0;k=30) EX0=1;return; /高电平计数完毕 IRCOMj=IRCOMj 1; /数据最高位补“0”if (N=8) IRCOMj = IRCOMj | 0x80; /高电平持续时间不不大于1.12ms则数据最高位补“1”N=0; /*;=;* 红外遥控器键值表 *; 45 46 47 ; 44 40 43 ; 07 15 09 ; 16 19 0d ; 0c 18 5e ; 08 1c 5a ; 42 52 4a ;=*/if (IRCOM2!=IRCOM3) / 判断有无误码(有责放弃没有判断键码) EX0=
27、1;return;switch(IRCOM2) case 0x45: / 显示遥控上字符按键 P0=number0; p=0; break; case 0x46: P0=number0; p=0; break; case 0x47: quite=!quite; /开/关声音 break;case 0x44: P0=number0; p=0; break;case 0x40: if(p=0|p=-1)p=1;p-;P0=numberp;if(p=9) p=-1;/数字加 break;case 0x07: P0=number12; p=0; break;case 0x15: P0=number13
28、; p=0; break;case 0x09: P0=number14; p=0; break;case 0x19: P0=number10; p=0; break;case 0x0d: P0=number11; p=0; break; case 0x16: P0=number0; p=-1; break;case 0x0c: P0=number1; p=1; break;case 0x18: P0=number2; p=2; break;case 0x5e: P0=number3; p=3; break;case 0x08: P0=number4; p=4; break;case 0x1c:
29、 P0=number5; p=5; break;case 0x5a: P0=number6; p=6; break;case 0x42: P0=number7; p=7; break;case 0x52: P0=number8; p=8; break;case 0x4a: P0=number9; p=9; break;if(quite=1) /控制声音开关beep();EX0 = 1; /*/void beep() /控制蜂鸣器响unsigned char i; for (i=0;i100;i+) delay(4); BEEP=!BEEP; /BEEP取反 BEEP=1; /关闭蜂鸣器/*/void delay(unsigned char x) /x*0.14MSunsigned char i;while(x-)for (i = 0;i13;i+)/*/void delay1(int ms)unsigned char y;while(ms-)for(y = 0;y250;y+)_nop_();_nop_();_nop_();_nop_();