《2022年2022年红外遥控控制系统课程设计 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年红外遥控控制系统课程设计 .pdf(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、单片机原理与应用技术课程设计报告(论文)基于单片机的红外遥控控制系统2012 年 04 月 19 日名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 17 页 - - - - - - - - - 红外遥控控制系统课程设计任务书1. 设计目的与要求设计出一个用于控制灯的控制器。准确地理解有关要求,独立完成系统设计,要求所设计的电路具有以下功能:(1) 有效遥控距离大于10 米。(2) 遥控控制的路数在5 路以上。(3) 采用数码管显示当前工作的控制电路。2设计内容(1)画出电
2、路原理图,正确使用逻辑关系;(2)确定元器件及元件参数;(3)进行电路模拟仿真;(4)制版与调试;3编写设计报告写出设计的全过程,附上有关资料和图纸,有心得体会。4答辩在规定时间内,完成叙述并回答问题。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 17 页 - - - - - - - - - 目录1 引言 . 12 总体设计 . 12.1 设计思路 . 12.2 设计方案 . 12.3 设计方框图 . 12.4 红外接收器 . 23 设计原理分析 . 33.1 发射电路
3、 . 33.2 键盘式输入电路. 33.3 信号接收和密码锁存电路. 43.4 显示电路 . 44 结束语 . 5参考文献 . 5附录(一) . 6附录(二) . 8附录(三) . 12名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 17 页 - - - - - - - - - 1 基于单片机的红外遥控控制系统摘要 :由于单片机具有集成度高、体积小、可靠性高、价格便宜等优点,其在机电一体化、工业控制、仪器仪表和家用电器等领域得到了广泛应用。当前单片机对家用电器控制呈现出外
4、形简单化、功能多样化、产品智能化的发展趋向。红外遥控技术具有使用方便、功耗低、抗干扰能力强、价格便宜的特点,因此它的应用前景十分广阔。本课题以延伸红外无线遥控技术为目的,提出了一种红外遥控器集中控制的方案,核心是设计出一个红外多路遥控发射 / 接收系统。本系统由单片机系统、矩阵键盘、LED显示和报警系统组成。系统能完成开锁、超时报警、超次锁定、管理员解密、修改用户密码基本的密码锁的功能。除上述基本的密码锁功能外,还具有掉电存储、声提示等功能,依据实际的情况还可以添加遥控功能。本系统成本低廉,功能实用。课题的重点在于通过软件实现二进制数据的编码与解码工作,然后通过红外收发头进行数据传输。关键词:
5、 单片机红外遥控键盘控制数码管显示1 引言近年来随着计算机在社会各领域的渗透,单片机的应用正在不断地走向深入,同时也带动传统的控制、 检测等工作日益更新。传统的遥控器大多采用无线电遥控技术,随着科技的进步,红外线遥控技术的进一步成熟,红外遥控也逐步成为了一种被广泛应用的通信和遥控手段。为了方便实用,传统的家庭电器逐渐采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等有害环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。红外遥控的特点是不影响周边环境、不干扰其它电器设备。由于其无法穿透墙壁,故不同房间的家用电器可使用通用的遥控器而不会产生相互干扰;电路调试简单,只要按给定电路连
6、接无误,一般不需任何调试即可投入工作;编解码容易,可进行多路遥控。红外遥控虽然被广泛应用,但各产商的遥控器不能相互兼容。当今市场上的红外线遥控装置一般采用专用的遥控编码及解码集成电路,但编程灵活性较低,且产品多相互绑定,不能复用,故应用范围有限。而本文采用单片机进行遥控系统的应用设计,遥控装置将同时具有编程灵活、控制范围广、 体积小、功耗低、功能强、成本低、可靠性高等特点,因此采用单片机的红外遥控技术具有广阔的发展前景。2 总体设计2.1 设计思路整体设计思路为:根据扫描到的按键值转至相对应的ROM 表中读取数据,确认之后单片机将从 ROM 读取出来的值, 按照数据处理要求从输出端输出控制脉冲
7、与T0 产生的 38KHz的载波进行调制,再经三极管将信号放大并驱动红外发光管将控制信号发送出去。红外数据接收则是采用 HS0038一体化接收头, 北部可以完成红外接收、数据采集、 解码的功能。 只要在接收端接侧头信号低电平的到来,就可以完成对整个串行的信号进行分析得出当前控制指令的功能。2.2 设计方案本设计包括两大模块:红外发射模块和红外接收模块。通过发射模块发出红外信号编码,编码加载在38KHz 载波上发射出去,红外接收模块接收信号并滤除载波,并传回单片机内进行解码。其中, 红外接收模块的接收头用的是HS0038型号的一体化接收头,可以对信号进行放大解调等操作,然后通过单片机进行译码。用
8、的单片机是AT89S51,通过红外线接收模块接收信号,由于接收模块有自动滤除载波功能,所以红外接收模块解得的码就是遥控器发射的编码,通过电路传到单片机内。2.3 设计方框图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 17 页 - - - - - - - - - 2 2.4 红外接收器按键矩阵AT89S51单片机红外发射电路红外接收电路AT89S51单片机报警显示掉电锁存开始初始化端口及中断LED 显示中断引导码调用读码值子程序值码判定信号接收完毕接收结束开始初始化键盘
9、及中断延时 130ms 有键按下?发射引导码数据发射子程序信号发射完毕发送结束码图 1 设计总流程图1 图 2 遥控发射器流程图图 3 遥控接收器主程序流程图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 17 页 - - - - - - - - - 3 图 4 HS0038 实物图图 5 管脚说明HS0038 是用于红外遥控接收的小型一体化接收头,它的主要功能包括放大,选频 ,解调几大部分 ,要求输入信号需是已经被调制的信号。经过它的接收放大和解调会在输出端直接输出原始
10、信号的反相信号。其不需要任何外接元件,就能完成从红外线接收到输出与TTL 电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,从而使电路达到最简化!灵敏度和抗干扰性都非常好。它适合于各种红外线遥控和红外线数据传输,中心频率38.0kHz。红外接收头内部放大器的增益很大,很容易引起干扰,依次在接收头的供电脚上必须加上滤波电容。3 设计原理分析3.1 发射电路图 6 发射电路3.2 键盘式输入电路名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 17 页 - - - -
11、- - - - - 4 图 7 键盘式输入电路第一步确定是否有键按下:向P2口输出全扫描字00FH,把全部行线置为低电平,然后将列线的电平状态读入累加器A 中,如果有键按下,总会有一根列线拉至低电平,从而使列输入不全为 1。第二步确定按下的键是在哪个位置:此时向行线逐个写0,如果那一行没有键按下,则P2.0P2.4全为 1。相反,如果那一行有按键按下,则P2.0P2.4中有值为 0,此时即可得到按下键的行、列值。知道按下的键处在哪一行哪一列即可确定按下键的位置。3.3 信号接收和密码锁存电路图 8 信号接收和密码锁存电路3.4 显示电路名师资料总结 - - -精品资料欢迎下载 - - - -
12、- - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 17 页 - - - - - - - - - 5 图 9 显示电路为了减少硬件开销,提高系统可靠性和降低成本,单片机控制系统通常采用动态扫描显示。LCD电路工作时,必须有相应的控制器、驱动器,还需要有存储命令和字符的RAM 和 ROM 。LED(Light Emitting Diode )显示器是由若干发光二极管组成的,每个二极管称为一个字段。LED显示器有 3种通用格式,可显示数字和十六进制字母的7段(或 8段,增加了小数点“ dp”段)显示管( 8字型)、显示数字和全部英文字母
13、的18段显示管(米字型)以及点阵显示器。7段显示管是最经济和最常用的显示器。LED分为共阴极和共阳极两种结构形式。共阴极LED中发光二极管的阴极连接在一起,通常接地, 当某个二极管的阳极为高电平时,相应的段就发光显示。同样,共阳极LED的公共阳极接高电平,某个阴极接低电平时,相应的段被点亮显示。为显示不同的字型,显示器各字段所加的电平不同,编码也随之不同。4 结束语这次实习设计对于我来说,既是一次机遇,又是一次挑战。通过这次的实习设计,我学到了很多东西。通过自己的实践,在设计过程中,通过大量的查阅资料,认真研究教材,对单片机有了更为深刻的理解,在编写软件时,须仔细的分析硬件电路及所要达到的功能
14、,然后设计程序流程, 编写代码。 整个过程培养了我的耐性和刻苦钻研的精神。增强了动手能力,掌握了系统的分析解决问题的方法。通过实际工程设计也使我了解到书本知识和实际应用的差别。在实际应用中遇到很多的问题,这都需要我对问题进行具体的分析,并一步一步地去解决它。参考文献1 楼然苗,李光飞51 系列单片机设计实例M 北京:北京航空航天大学出版社,20031031202 李必红,王忠魁基于单片机控制的机床数控改造J 陕西工学院学报,2004,20(1) :70793 王兆安电力电子技术西安交通大学出版社,2004 4 刘志文遥控开关系统的理论设计与应用大学学报 (教科文艺 ) 2003 年 03 期5
15、 黄陇 实用型红外遥控功能开关的设计与实现(Radio Engineering of China) 6 刘文涛单片机应用开发实例清华大学出版社 2005 年 9 月名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 17 页 - - - - - - - - - 6 附录(一)发射电路图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 17 页 - - -
16、- - - - - - 7 接收电路图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 17 页 - - - - - - - - - 8 附录(二);红外遥控发射程序ORG 0000H ;程序执行开始地址AJMP START ;跳至 START 执行ORG 000BH ;定时器 T0 中断入口地址LJMP INTT0 ;跳至 INTT0 中断服务程序ORG 0030H PCODE EQU 30H ;识别码OPPCODE EQU 31H ;识别码反码BUT EQU 32H
17、;按键码OPPBUT EQU 33H ;按键反码START: MOV SP,#70H ;设堆栈基址为70H CLR P3.4 ;关遥控输出MOV IE,#00H ;关所有中断MOV IP,#01H ;设优先级MOV TMOD,#22H ;8 位自动重装初值模式MOV TH0,#0F3H ;定时为 13 微秒初值MOV TL0,#0F3H SETB EA ;开总中断允许MOV PCODE,#0ABH ;识别码赋值MOV OPPCODE,#54H ;识别码反码赋值JIAN: ;识别键盘有无键按下子程序MOV P2,#00FH ;置列线为1,行线为0 MOV R7,#0FFH ;延时DJNZ R7,
18、JIAN1 JIAN1: MOV A,P2 ;读 P2 口CPL A ;求反后,高电平表示有键按下ANL A,#00FH ;判别有键值按下吗?JZ JIAN ;无键按下时,返回重新扫描LCALL DELAY SKEY: ;识别具体按键值子程序MOV A,#00 ;下面进行行扫描,1 行 1 行扫MOV R0,A ;R0 作为行计数器,开始为0 MOV R1,A ;R1 作为列计数器,开始为0 MOV R3,#07FH ;R3 为行扫描字暂存,高4 位为行扫描字SKEY2: MOV A,R3 MOV P2,A ;输出行扫描字,低4 位全 1 NOP 名师资料总结 - - -精品资料欢迎下载 -
19、- - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 17 页 - - - - - - - - - 9 NOP NOP ;3 个 NOP 操作使 P2口输出稳定MOV A,P2 ;读列值MOV R1,A ;暂存列值CPL A ;高电平则有键闭合ANL A,#00FH ;取列值S123: JNZ SKEY3 ;有键按下转SKEY3, 无键按下时进行一行扫描INC R0 ;行计数器加1 SETB C ;准备将行扫描右移1 位,形成下一行扫描字;C=1 保证输出行扫描字中低4 位全为 1,为列输入做准备,高4 位中只有1 位为
20、 0 MOV A,R3 ;R3 带进位 C 右移 1 位RRC A MOV R3,A ;形成下一行扫描字送入R3 MOV A,R0 CJNE A,#04H,SKEY2 ;最后一行扫( 4 次)完了吗?NN: LJMP JIAN MN: MOV BUT,A CPL A MOV OPPBUT,A LCALL REMOTE ;转发送程序AJMP NN ;列号译码SKEY3: MOV A,R1 JNB ACC.0,SKEY5 JNB ACC.1,SKEY6 JNB ACC.2,SKEY7 JNB ACC.3,SKEY8 LJMP NN SKEY5: MOV A,#01H MOV R2,A ;存 0 列
21、号AJMP DKEY SKEY6: MOV A,#01H MOV R2,A ;存 1 列号AJMP DKEY SKEY7: MOV A,#01H MOV R2,A ;存 2 列号AJMP DKEY SKEY8: MOV A,#01H MOV R2,A ;存 3 列号AJMP DKEY ;键位置译码DKEY: MOV A,R0 ;取行号名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 17 页 - - - - - - - - - 10 ACALL DECODE LJMP M
22、N ;键值译码DECODE: MOV A,R0 ;取行号送A MOV B,#04H ;每一行按键个数MUL AB ;行号 *按键数ADD A,R2 ;行号 *按键数 +列号 =键值,在A 中RET ;编码发射程序REMOTE: SETB ET0 ;开 T0 中断SETB TR0 ;开启定时器T0 MOV R1,#06H ;原数值 #09H OUT01: MOV R2,#0C8H ;发 5ms 引导码DJNZ R2,$ DJNZ R1,OUT01 CLR TR0 ;关定时器 T0 CLR ET0 ;关 T0 中断CLR P3.4 ;关脉冲输出MOV R1,#0AH ;3ms 空隙OUT02: M
23、OV R2,#96H DJNZ R2,$ DJNZ R1,OUT02 OUT03: ;发射数据流MOV A,PCODE LCALL OUT04 ;调用发送子程序MOV A,OPPCODE ACALL OUT04 ;调用发送子程序MOV A,BUT LCALL OUT04 ;调用发送子程序MOV A,OPPBUT LCALL OUT04 ;调用发送子程序SETB C ;发送结束码1 LCALL SEND ;调用发送子程序MOV R1,#0EAH ;延时 130MS OUTWAIT: MOV R2,#0C8H DJNZ R2,$ DJNZ R1,OUTW AIT RET ;发射子程序OUT04:
24、;循环发射各数据位MOV R1,#08H OUT: RLC A ACALL SEND 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 17 页 - - - - - - - - - 11 DJNZ R1,OUT RET SEND: CLR TR0 ;关定时器 T0 CLR ET0 ;关 T0 中断CLR P3.4 ;关脉冲输出JC SEND1 MOV R3,#08H ;发射 0 码SEND0: MOV R4,#69H ;0 码低电平DJNZ R4,$ DJNZ R3,SE
25、ND0 AJMP SIG ;转脉冲发送信号SEND1: MOV R3,#02H ;1 码低电平SEND10: MOV R4,#8CH DJNZ R4,$ DJNZ R3,SEND10 SIG: SETB ET0 ;开 T0 中断SETB TR0 ;开启定时器T0 MOV R3,#08CH ;发射脉冲DJNZ R3,$ CLR TR0 ;关定时器T0 CLR ET0 ;关 T0 中断CLR P3.4 ;关脉冲输出RET ;T0 中断服务程序INTT0: CPL P3.4 ;40kHZ 红外线遥控信号产生RETI ;中断返回;延时子程序DELAY: MOV R7,#10H ;延时 10 秒子程序T
26、S1: MOV R6,#0FFH TS2: DJNZ R6,TS2 DJNZ R7,TS1 RET END ;程序结束名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 17 页 - - - - - - - - - 12 附录(三);红外遥控系统接收部分源程序ORG 0000H LJMP START ORG 0003H LJMP INTEX0 ORG 0030H PCODE EQU 30H ;识别码OPPCODE EQU 31H ;识别码反码BUT EQU 32H ;按键码
27、OPPBUT EQU 33H ;按键反码CODENUM EQU 34H ;接收码数MINMA EQU 35H ;储存密码GUAN EQU 36H ;储存管理员密码START: MOV SP,#70H MOV IE,#00H ;关所有中断SETB EX0 ;开外中断SETB EA ;总中断允许MOV PCODE,#0ABH ;识别码初值MOV OPPCODE,#54H ;识别码反码初值MAIN: MOV R3,#0FFH DJNZ R3,$ ;持续 510 微秒MOV R5,#08H XUN: CLR C MOV C,P3.2 ;读入 P3.2 引脚状态MOV A,R6 RLC A MOV R6
28、,A DEC R5 DJNZ R5,XUN MOV A,R6 SETB P2.0 ;开放显示器控制SETB P3.1 ;开放显示器控制MOV SBUF,A ;送 LED 显示LJMP MAIN ;转 MAIN 循环NOP ;PC 值出错处理LJMP START ;出错时重新初始化;遥控接收程序INTEX0: MOV 37H,A ;采用中断接收保护现场MOV 20H,C CLR EX0 ;关外中断JNB P3.2,READ ;P3.2 口为低电平转READ 为高电平退出OUT: SETB EX0 ;开中断(系干扰)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - -
29、- - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 17 页 - - - - - - - - - 13 MOV A,37H ;恢复现场MOV C,20H RETI 退出中断READ: CLR A ;清 A 读取引导码MOV DPH,A ;清 DPTR MOV DPL,A HEAD: JB P3.2,HEAD01 ;P3.2 变高电平转HARD01 INC DPTR ;用 DPTR 对低电平计数MOV R1,#04H DJNZ R1,$ AJMP HEAD ;转 HARD 循环(循环周期为16 微秒)HEAD01: MOV A,DPH ;DPTR 高 8
30、位放入 A JZ OUT 0(脉宽小于16*255=4 毫秒)退出MOV R1,#0AH ;3ms 低电平HEAD02: MOV R2,#96H DJNZ R2,$ DJNZ R1,HEAD02 ACALL READ01 ;接收识别码CJNE A,PCODE,OUT ;识别码判定ACALL READ01 CJNE A,OPPCODE,OUT 识别码反码判定ACALL READ01 MOV BUT,A ;接收控制码ACALL READ01 接收控制反码CPL A CJNE A,BUT,OUT ;控制码校验ACALL READEND ;接收结束码CJNE A,#01H,OUT MOV A,BUT
31、MOV R5,#08H XUN2: CLR C MOV C,P3.2 ;读入 P3.2 引脚状态MOV A,R6 RLC A MOV R6,A DEC R5 DJNZ R5,XUN MOV A,R6 SETB P2.0 ;开放显示器控制SETB P3.1 ;开放显示器控制MOV SBUF,A ;送 LED 显示CLR P3.1 ;关闭显示器控制PAN: CJNE A,GUAN,JISHU ;识别密码JISHU: INC R4 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,
32、共 17 页 - - - - - - - - - 14 CJNE R4,#003H,XUN2 LJMP BAOJING BAOJING: CLR P0.0 LJMP OUT ;转中断退出READ01: MOV CODENUM,#08H ;读取数据码8 位CLR A ;清 A LJMP READ02 READEND: MOV CODENUM,#01H ;读取结束码CLR A READ02: CLR C MOV R1,#02H ;延时 0.8ms READ03: MOV R2,#0C8H DJNZ R2,$ DJNZ R1,READ03 MOV C,P3.2 ;取码CPL C ;还原码值RLC A ;移位赋值JB P3.2,$ JNB P3.2,$ DJNZ CODENUM,READ02 RET END ;结束程序名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 17 页 - - - - - - - - -