1、 毕业设计(论文)基于单片机的红外遥控系统学 院: 信息科学技术学院自动化陈伟群 专 业:姓 名:指导老师:陈蕴基、张小凤学 号:职 称:教授、助教II中国珠海二九 年 五 月北京理工大学珠海学院毕业设计诚信承诺书本人郑重承诺:我所呈交的毕业设计单片机红外遥控系统是在指导教师的指导下,独立开展研究取得的成果,文中引用他人的观点和材料,均在文后按顺序列出其参考文献,设计使用的数据真实可靠。承诺人签名: 日期: 年 月 日北京理工大学珠海学院 2009 届本科生毕业设计I基于单片机的红外遥控系统摘 要本课题采用低成本的 MCS-51 系列单片机构成具有高可靠性的遥控系统的应用设计。本设计通过单片机
2、控制实现红外线通信,进而对被控目标实现红外线遥控。基于单片机的红外遥控系统抗干扰性强、功耗低、成本低、易实现,具有很高的实用价值。 本设计是用 HS0038 红外接收管接收并处理信号,以单片机 AT89S52 作为信号检测和控制核心。通过单片机可以实现脉冲分配,从而驱动可控硅控制直流电机和由大功率驱动电路 74LS14 和 ULN2003 共同组成的步进电机驱动器,结合软件来控制电机的转速、转向。采用 LCD1602 作为液晶显示界面,可以显示直流电机和步进电机状态、转速,通过与遥控键盘的结合设定电机的速度、方向等值,能使系统在脱离 PC 机的情况下也可以正常的运行,具有良好的人机交互功能,提
3、高了系统的可用性。采用汇编语言编写模块化程序,增强可读性,便于 PC 机实现各功能的设置。关键词:单片机 红外遥控 步进电机 LCD1602 可控硅 直流电机IIMCU-based infrared remote control system ABSTRACTThe issue is the use of low-cost series of MCS-51 MCU of the remote control with high reliability system applications. The design control through the realization of singl
4、e-chip infrared communication, and thus charged with infrared remote control goals. MCU-based infrared remote control system and strong anti-interference, low power consumption, low cost, easy to achieve, with high practical value. The design is HS0038 control infrared receiver to receive and proces
5、s signals to single-chip AT89S52 as a signal detection and control of the core. Pulse can be achieved through the distribution of single-chip, thus driving thyristor control and by the high-power DC motor drive circuit 74LS14 and ULN2003 stepper motor consisting of (the) driver, combined with softwa
6、re to control the motor speed, steering. Used as LCD1602 LCD interface, can display DC motor and stepper motor, and speed, keyboard and remote control through a combination of setting the motor speed, the direction of the equivalent, will enable the system from the PC in the case of machines can als
7、o run the normal , has a good interactive features, improved system availability.The process uses assemble language, with blocking design and more readability and its easy to carry out vary settings by PC. Key words:SCM/Singlechip Infrared receiver Step motor LCD1602 SCRDirect current machine北京理工大学珠
8、海学院 2009 届本科生毕业设计III目 录摘 要 IABSTRACT .II1 绪论 11.1 研究背景 11.2 研究目的 11.3 研究意义 11.4 课题设计的相关理论知识 21.4.1 红外遥控原理 21.4.2 可控硅控制原理 21.4.3 步进电机控制原理 42 系统的总体设计 62.1 方案论证 62.2 设计原理框图 63 系统硬件设计 83.1 单片机简介 83.2 电源电路 93.3 红外发送与接收电路 .103.4 过零检测电路 .133.5 LCD 显示电路 .143.6 可控硅控制电机电路 .15IV3.7 步进电机控制电路 .163.8 键盘和低功耗空闲方式控制
9、电路 .173.9 小结 .184 系统软件设计 .194.1 单片机 MCS-51 系列简介 194.2 遥控器系统的程序设计 .194.2.1 初始化程序和主程序 .194.2.2 外部中断 1 和定时器 1 中断服务程序 .204.2.3 键盘扫描和红外发射程序 .214.3 接收控制系统的软件设计 224.3.1 初始化程序和主程序 .224.3.2 外部中断 0 中断服务程序 .224.4 步进电机模块程序设计 .274.4.1 电机左转 3 圈右转 3 圈程序设计 .284.5 显示模块程序设计 .294.5.1 显示模块程序设计 .304.6 Keil C51 介绍 324.7
10、小结 .345 系统调试与分析 .355.1 硬件调试 .355.2 软件调试 .365.3 系统调试 .39北京理工大学珠海学院 2009 届本科生毕业设计V5.4 小结 .41参考文献 .42附 录 143附 录 259附 录 360附 录 462谢 辞 64北京理工大学珠海学院 2009 届本科生毕业设计11 绪论1.1 研究背景近年来随着计算机在社会领域的渗透,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。传统的遥控器大多数采用了无线电遥控技术,但是随着科技的进步,红外线遥控技术的成熟,红外也成为了一种被广泛应用的通信和遥控手段。因而继彩电、录像机之后,在录音机、音
11、响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。由于红 外 线 抗 干 扰 能 力 强 , 且 不 会 对 周 围 的 无 线 电设 备 产 生 干 扰 电 波 , 同 时 红 外 发 射 接 收 范 围 窄 , 因 此 安 全 性 较 高 。 红外遥控虽然被广泛应用,但各产商的遥控器不能相互兼容。当今市场上的红外线遥控装置一般采用专用的遥控编码及解码集成电路,因此其灵活性较低,应用范围有限。所以采用单片机进行遥控系统的应用设计,遥控装置将同时具有编程灵活、控制范围广、体积小、
12、功耗低、功能强、成本低、可靠性高等特点,因此采用单片机的红外遥控技术具有广阔的发展前景。1.2 研究目的本设计主要研究并设计一个基于单片机的红外接收系统,并实现对直流电机和步进电机的控制。控制系统主要是由 MCS-51 和 52 系列单片机、电源电路、红外发射电路、红外接收电路、可控硅控制电机转速及启、停电路、步进电机控制电路、LCD 显示电路、50HZ 交流电过零检测电路等部分组成,单片机编码发射遥控信号经红外接收处理传送给单片机,单片机根据不同的信息码控制两个电机各个状态,并完成相应的状态指示。1.3 研究意义控制电机已经成为现代工业自动化系统、现代科学技术和现代军事装备中不可缺少的重要组
13、件。它的应用范围非常广泛,例如火炮和雷达的自动定位,舰船方向舵的自动操纵,飞机的自动驾驶,遥远目标位置的显示,机床加工过程的自动控制和自动显示,阀门的遥控,以及机器人、电子计算机、自动记录仪表、医疗设备、录音录象设备等中的自动控制系统。在各类自动控制系统、遥控和解算装置中,需要用到大量的各种各样的组件。虽然从基本原理来说,2控制电机与普通旋转电机没有本质上的差别,但后者着重于对电机的力能指标方面的要求,而前者则着重于对特性、高精度和快速响应方面的要求,满足系统对它提出的要求。近十几年来,数字技术和电子计算机的迅速发展为各种电机的应用开辟了广阔的前景。目前,我国已经多地将步进电动机用于机械加工的
14、数字过程控制机床中(即数控机床) ;在绘图机、轧钢机的自动控制,自动记录仪表和数摸变换等方面也得到很多应用。1.4 课题设计的相关理论知识1.4.1 红外遥控原理通用红外遥控系统由发射和接收两大部分组成,发射部分采用 AT89C2051单片机控制,接收部分采用 AT89S52 单片机控制。如图 1-1 所示。发射部分包括键盘矩阵、编码调制、LED 红外发送器;接收部分包括光/电转换放大器、解调、解码电路。遥控发射器遥控接收器图 1-1 遥控发射器及其编码常用的红外发光二极管发出的红外线波长为 940nm 左右,外形与普通5mm 发光二极管相同,只是颜色不同。一般有透明、黑色和深蓝色等三种。判断
15、红外发光二极管的好坏与判断普通二极管一样的方法。单只红外发光二极管的发射功率约 100mW。红外发光二极管的发光效率需用专用仪器测定,而业余条件下,只能凭经验用拉距法进行粗略判定。接收电路的红外接收管是一种光敏二极管,使用时要给红外接收二极管加反向偏压,它才能正常工作而获得高的灵敏度。红外接收二极管一般有圆形和方形两种。由于红外发光二极管的发射功率较小,红外接收二极管收到的信号较弱,所以接收端就要增加高增益放大电路。1.4.2 可控硅控制原理可控硅是 P1N1P2N2 四层三端结构元件,共有三个 PN 结,分析原理时,可键盘解调编码调制解码LED光/电放大北京理工大学珠海学院 2009 届本科
16、生毕业设计3以把它看作由一个 PNP 管和一个 NPN 管所组成,其等效图解如图 1-2 所示。图 1-2 可控硅等效图解图当阳极 A 加上正向电压时,BG1 和 BG2 管均处于放大状态。此时,如果从控制极 G 输入一个正向触发信号,BG2 便有基流 ib2 流过,经 BG2 放大,其集电极电流 ic2=2ib2。因为 BG2 的集电极直接与 BG1 的基极相连,所以ib1=ic2。此时,电流 ic2 再经 BG1 放大,于是 BG1 的集电极电流ic1=1ib1=12ib2。这个电流又流回到 BG2 的基极,表成正反馈,使 ib2不断增大,如此正向馈循环的结果,两个管子的电流剧增,可控硅使
17、饱和导通。由于 BG1 和 BG2 所构成的正反馈作用,所以一旦可控硅导通后,即使控制极G 的电流消失了,可控硅仍然能够维持导通状态,由于触发信号只起触发作用,没有关断功能,所以这种可控硅是不可关断的。由于可控硅只有导通和关断两种工作状态,所以它具有开关特性,这种特性需要一定的条件才能转化,此条件见表 1-1。表 1-1 可控硅导通和关断条件状态 条件 说明从关断到导通1、阳极电位高于是阴极电位2、控制极有足够的正向电压和电流两者缺一不可维持导通1、阳极电位高于阴极电位2、阳极电流大于维持电流两者缺一不可从导通到关断1、阳极电位低于阴极电位2、阳极电流小于维持电流任一条件即可4北京理工大学珠海
18、学院 2009 届本科生毕业设计51.4.3 步进电机控制原理步进电机是将电脉冲转变为角位移或者线位移的开环控制元件,必须由脉冲信号、功率驱动电力等组成控制系统才可使用,在不超载的情况下,电机的速度、停止的位置只取决与脉冲信号的频率和脉冲数。图 1-3 为四相步进电机内部原理图:图 1-3 四相步进电机 四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图 1-4a
19、、b、c 所示:a 单四拍 b 双四拍 c 八拍图 1-4 步进电机工作时序波形图步进电动机以其显著的特点,在数字化制造时代发挥着重大的用途。伴随着不同的数字化技术的发展以及步进电机本身技术的提高,步进电机将会在更6多的领域得到应用。本设计用的是混合试步进电机 35BY 系列的,表 1-2 介绍了35BY 系列电机的详细的技术数据,以及图 1-5 为 35BY 的接线图。表 1-2 35BY 系列电机的技术数据型号 步距角 相数 电压 电流 电阻最大静转距定位转距转动惯量35BY48S01 7.5 2 5 0.71 7 250 65 2.535BY48S02 7.5 2 5 0.42 12 2
20、00 65 2.535BY48S03 7.5 4 12 0.26 47 180 65 2.5图 1-5 35BY 的接线图北京理工大学珠海学院 2009 届本科生毕业设计72 系统的总体设计2.1 方案论证方案一:可设计使用多谐震荡电路组成的红外遥控系统,经过多级放大而实现电机控制,优点是可以通过放大级的设定增加而实现较远距离的接收,调试也较简单,但是布线复杂,稳定性较差,不灵活。方案二:采用专用的遥控解码集成电路,它具有制作简容易,稳定性高、操作码个数可随意设定等优点,但是编码不够灵活。方案三:采用 AT89C2051 单片机编码发射遥控信号,再由 AT89S52 单片机解码产生控制信号,从
21、而实现对电机的控制和各个状态的 LCD 指示。综合考虑,由于使用单片机设计灵活性更强、用途更宽广,所以本设计采用方案三。2.2 设计原理框图如 图 2-1 所 示 , 遥 控 器 部 分 采 用 89C2051 单 片 机 控 制 , +3V 电 源 供 电 ,行 列 式 键 盘 采 用 低 功 耗 控 制 电 路 控 制 , 同 时 由 发 射 指 示 灯 显 示 红 外 发 射 状 况 。图 2-1 红 外 发 射 电 路 原 理 框 图51单片机红外管发射电路发射指示灯行列式键盘低功耗空闲方式控制电路电源+3V8如 图 2-2 所 示 , 控 制 器 部 分 采 用 89S52 单 片
22、机 控 制 , 由 7805 稳 压 芯 片提 供 +5V 供 电 , 步 进 电 机 采 用 +9V 供 电 , 直 流 电 机 采 用 220V 交 流 电 经 桥 式 整流 及 可 控 硅 控 制 供 电 。 LCD 和 LED 显 示 红 外 接 收 和 控 制 的 各 个 状 态 。89s52 单片机电源+5V红外管接收电路LCD和LED状态指示电路 电机转动、启动和停止控制电路50Hz交流电过零检测220V步进电机左转三圈右转三圈的控制 电源+9V图 2-2 红 外 接 收 控 制 电 路 原 理 框 图北京理工大学珠海学院 2009 届本科生毕业设计93 系统硬件设计 硬件设计包
23、含遥控发射器的电路设计和电机控制系统的电路设计。遥控发射器主要由 AT89C2051 单片机,+3V 电源,键盘低功耗空闲方式控制电路,红外管发射电路,指示灯电路等组成。电机控制系统的电路主要由 AT89S52 单片机,+5V 电源电路,红外管接收电路,可控硅控制电机电路、步进电机控制电路、LCD 显示电路、50HZ 交流电过零检测电路等部分组成。3.1 单片机简介本设计中遥控电路的主芯片采用美国 ATMEL 公司的 AT89C2051FLASH 单片机。它具有 2KB 可重编程闪速存储器,2.7-6V 的电源使用电压,128X8 位的内部 RAM,两个 16 位定时器/计数器,5 个中断源,
24、直接 LED 驱动输出以及空闲和掉电方式等功能。控制器部分采用了美国 ATMEL 公司的 AT89S52 单片机,AT89S52 是一个低功耗,高性能 CMOS 8 位单片机,片内含 8k Bytes ISP(In-system programmable)的可反复擦写 1000 次的 Flash 只读程序存储器,器件采用ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 MCS-51 指令系统及80C51 引脚结构,芯片内集成了通用 8 位中央处理器和 ISP Flash 存储单元,功能强大的微型计算机的 AT89S52 可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S52
25、具有如下特点:40 个引脚,8k Bytes Flash 片内程序存储器,256 bytes 的随机存取数据存储器(RAM),32 个外部双向输入/输出(I/O)口,5 个中断优先级 2 层中断嵌套中断,2 个 16 位可编程定时计数器,2 个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器,主要功能表特性见表 3-1。此外,AT89S52 设计和配置了振荡频率可为 0Hz 并可通过软件设置省电模式。空闲模式下,CPU 暂停工作,而 RAM 定时计数器,串行口, 外中断系统可继续工作,掉电模式冻结振荡器而保存 RAM 的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有 P
26、DIP、TQFP 和 PLCC 等三种封装形式,以适应不同产品的需求。10表 3-1 主要功能表特性:兼容 MCS-51 指令系统 8k 可反复擦写(1000 次)ISP Flash ROM32 个双向 I/O 口 4.5-5.5V 工作电压3 个 16 位可编程定时/计数器 时钟频率 0-33MHz全双工 UART 串行中断口线 时钟频率 0-33MHz2 个外部中断源 低功耗空闲和省电模式中断唤醒省电模式 3 级加密位看门狗(WDT)电路 软件设置空闲和省电功能灵活的 ISP 字节和分页编程 双数据寄存器指针在本设计中,P0、P2.1、P2.2、P2.3 接口作为 LCD 显示接口,和 L
27、CD1602一起显示电机的状态;P1.0-P1.6 接口用来进行 LED 显示,P1.7 接口用来产生可控硅的脉冲信号,P2.0 接口用来进行电压过零检测,P2.4-P2.7 四个接口用来驱动步进电机,P3.1 和 P3.2 两个接口用来接收红外接收头控制信号。复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。该电路为高电平复位有效,如果把电阻连在 VCC 下就为低电平有效果,该设计的电气原理图如下图 3-1:图 3-1 单片机电气原理图北京理工大学珠海学
28、院 2009 届本科生毕业设计113.2 电源电路遥控器部分的电源采用两节 1.5V 电池串联提供 3V 电源供电。控制器部分由桥式整流、滤波电容、7085 稳压器及电源指示灯组成,交流电经过桥式整流变成直流电,再经过电容滤波,7805 集成稳压器稳压成为稳定的+5V 电源,用一个发光二极管指示灯指示电源状态。图 3-2 控制器部分电源电路图 3-3 遥控器指示灯部分电路3.3 红外发送与接收电路红外发射电路如下图 3-4 所示,遥控信号码由 AT89C2051 单片机的定时器121 调制成 38.5KH 红外线载波信号,由 P3.5 口输出,经过三极管 9013 放大,由红外发射管发送。图
29、3-4 红外发射电路红外接收电路通常由红外接收二极管与放大电路组成,放大电路通常又由一个集成块及若干电阻电容等元件组成,并且需要封装在一个金属屏蔽盒里,因而电路比较复杂,体积却很小,还不及一个 7805 体积大!目前市场上红外接受器已集成模块化,一般为三引脚,输出为检波整形过的方波信号。它将红外接收管与放大电路集成在一体,体积小(大小与一只中功率三极管相当),密封性好,灵敏度高,并且价格低廉,市场售价只有几元钱。它仅有三条管脚,分别是电源正极、电源负极以及信号输出端,其工作电压在 5V 左右.只要给它接上电源即是一个完整的红外接收放大器,使用十分方便。它的主要功能包括放大,选频,解调几大部分,
30、要求输入信号需是已经被调制的信号。经过它的接收放大和解调会在输出端直接输出原始的信号。:图 3-5 遥控编码格式38KHZ 高频调制 两帧信号之间的输出格式3MS 10MS1MS北京理工大学珠海学院 2009 届本科生毕业设计13而本设计采用的编码方式是采用脉冲个数的编码,如图 3-5 所示,设计简洁,操作方式新颖,本遥控器的编码采用不同的脉冲个数代表不同的操作数,最少为 2 个脉冲,其它信息码的脉冲个数逐个递增,为了使接受可靠,第一位码宽为 3MS,其余为 1MS,码间距为 1MS,遥控器数据帧间距大于 10MS。遥控器每个键都有唯一的一个键号,通过设定配套的遥控器编码格式,CPU 通过查按
31、下键的键值发约定个数的脉冲,例如本设计中为了适合特定的遥控编码,采用的编码个数可以设定按键:K1:3MS(引导码)+1MS(间隔码)+1MS(脉冲码)+1MS(间隔码)+1MS(脉冲码)K2:3MS(引导码)+1MS(间隔码)+1MS(脉冲码)+1MS(间隔码)+1MS(脉冲码)+1MS(间隔码)+1MS(脉冲码)接收电路一般由接收电路、放大电路、调制电路、指令译码电路、驱动电路、执行电路(机构)等几部分组成。接收电路将发射器发出的已调制的编码指令信号接收下来,并进行放大后送解调电路,解调电路将已调制的指令编码信号解调出来,即还原为编码信号。指令译码器将编码指令信号进行译码,最后由驱动电路来驱
32、动执行电路实现各种指令的操作控制。目前市场上都采用一体化的接红外接收管,红外线一体化接收头是集红外接收、放大、滤波和比较器输出等的模块,性能稳定、可靠。所以,有了一体化接收头,人们不再制作接收放大电路,这样红外接收电路不仅简单而且可靠性大大提高。图 3-6 是常用的红外接收头的外形,均有三只引脚,即电源正 VDD、电源负(GND)和数据输出(Out)。接收头的引脚排列因型号不同而不尽相同,图 3-6列出了因接收头的外形不同而引脚的区别,本设计采用此型号的接收管。图 3-6 红外接收管14红外接收头的主要参数如下表 3-2:表 3-2 红外接收头主要参数工作电压 4.85.3V 工作电流 1.7
33、2.7MA接收频率 38KZ 静态输出 高电平峰值波长 980NM 输出电压 0.4V输出高电平 4.85.3V设计中的红外接收管可以接收各种红外线遥控和红外线数据传输。红外接收管及电气原理图如图 3-7。图 3-7 红外接收管及电路3.4 过零检测电路交流电过零检测电路如图 3-8 所示。过零检测电路由桥式整流电路和两个9013 三极管组成。当 Q2 的基极电压大于等于 0.7V 时,Q2 三极管导通,Q1 截止,P2.0 为高电平;当 Q2 的基极电压小于 0.7V 时,Q2 三极管截止,Q1 导通,P2.0 为低电平。单片机通过检测 P2.0 口的状态来发送控制信号。北京理工大学珠海学院
34、 2009 届本科生毕业设计15图 3-8 交流电过零检测电路3.5 LCD 显示电路本设计是在单片机系统中采用液晶显示器作为输出器件有以下几个优点:1)显示质量高:由于液晶显示器每一点在收到信号后就一直保持那种色彩和亮度,恒定发光,不需要不断刷新新亮点,不会闪烁;2)数字式接口:液晶显示都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便;3)体积小,重量轻:液晶显示器通过显示屏上的电极控制液晶分子状态达到显示的目的,在重量上比相同显示面积的传统显示器要轻的多;4)功耗低:相对而言,液晶显示器的功耗主要消耗在其内部的电极和驱动IC 上,因而耗电量比其他显示器要少的多。1602 液晶模块
35、内部的字符发生存储器(CGROM)已经存储了 160 个不同的点阵字符图形,如表 3-3 所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码。本设计中使用到的状态显示,也就是字符的相应显示,1602 自带字符发生器和控制器,显示字符也就比较简单,可以让控制器工作在文本方式,根据在 LCD 上开始显示的行列号以及每行的列数找出显示 RAM 对应的地址,设立光标,在此送上该字符对应的代码即可。表 3-3 点阵字符和对照表低位 高位 0011 0100 0101 0110 01110001 1 A Q a q0010 2 B R b r0011 3
36、 C S c s0100 4 D T d t0101 5 E U e u0110 6 F V f v0111 7 G W g w1000 8 H X h x1001 9 I Y i y1010 : J Z j z1011 ; K k1100 N n1111 O o例如英文字母“B 的代码是 B(42H),显示时模块把地址 42H 中的点阵字符图形显示出来,我们就能看到字母“B”,而 DM-162 液晶显示模块可以和单片机 AT89S52 直接接口,电路如图 3-9 所示。图 3-9 液晶显示电气原理图3.6 可控硅控制电机电路图 3-10 为可控硅电机控制电路设计原理图。电机转速和启/停是由可
37、控硅的导通角控制的。AT89S52 产生可控硅控制的移相脉冲,移相角的改变实现导通角的改变,即当移相角较大时,可控硅的导通角较小,输出电压较低,电机转速较慢;当移相角较小时,可控硅的导通角较大,输出电压较高,电机转的快;当导通角不为 0 时,电机启动;当导通角为 0 时电机停转。当 AT89S52 的 P1.7 脚为低电平时,9012 三极管导通,三极管集电极电流驱动光电耦合器导通,使可控硅的 G 极产生脉冲信号触发可控硅导通;当AT89S52 的 P1.7 脚为高电平时,9012 三极管,三电耦合器导通,可控硅都处于截止状态。图 3-10 可控硅电机控制电路设计原理图北京理工大学珠海学院 2
38、009 届本科生毕业设计173.7 步进电机控制电路步进电机的驱动电路本设计采用的是 ULN2003,ULN2003(国产型号为5G1413)是七路达林顿驱动器阵列,是个集电极开路(OC)输出的反器。ULN2003 是高耐压、大电流达林顿陈列,由七个硅 NPN 达林顿管组成。ULN2003 的每一对达林顿都串联一个 2.7K 的基极电阻,在 5V 的工作电压下它能与 TTL 和 CMOS 电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。ULN2003 工作电压高,工作电流大,灌电流可达 500mA,并且能够在关态时承受 50V 的电压,输出还可以在高负载电流并行运行。最大驱动电流
39、可以达到500mA,ULN2004 也有这样的优点,但是相比之下当然是 2003 价格优惠,经济使用,ULN2003 的参数见表 3-4,引脚介绍见图 3-11。表 3-4 ULN2003 主要参数参数名称 符号 数值 单位输入电压 VIN 30 V输入电流 IIN 25 mA功耗 PO 1 W工作环境温度 Topr -20to+85 贮存温度 Tstg -55to+150 图 3-11 ULN2003 引脚图本设计在驱动之前又加一个价格便宜的 74LS14 的反相器就可以实现最终的结果还是同相,步进电机根据 P1 口脉冲转动,具体的电气原理设计图如下图 3-12:18图 3-12 步进电机驱
40、动电路3.8 键盘和低功耗空闲方式控制电路行列式操作键盘又称为矩阵式键盘。用 I/O 线组成行、列结构,按键设置在行列的交点上,行列线分别连接到按键开关的两端,键盘中有无键按下是由列线送入扫描字、行线读入行线的状态来判断的。为了提高 CPU 效率,同时也为了节约电池电源能量,遥控器采用按键中断扫描方式。无键按下时,单片机处于低功耗空闲待机方式,有键按下时触发外部中断实现查键及执行键功能程序。AT89C2051 的 CPU 有两种节点工作方式即空闲方式和掉电方式,遥控器采用了空闲节电工作方式。当 CPU 执行完置 IDL=1(PCON.0=1)指令后,系统进入了空闲工作方式,这时内部时钟不向 C
41、PU 提供,而只提供给中断、串行口、定时器部分。遥控器退出低功耗空闲方式电路由 IN4148 二极管组成“与门”实现。当有键按下时,由“与门”触发外部中断 1 发生中断,单片机退出空闲工作方式,进入键盘和红外发射程序,结束后又进入低功耗空闲方式待机。使用过程中单片机基本上都处于空闲工作方式,功耗相当低,从而为使用电池电源提供了保障。具体电路如下图 3-13 所示。北京理工大学珠海学院 2009 届本科生毕业设计19图 3-13 遥控器部分电路3.9 小结 在接到毕业设计题目-基于单片机的红外遥控系统时,我考虑了很久,清楚知道系统硬件设计是本次设计的首先要解决的问题,经过到图书馆查很多相关的资料
42、,经过张老师的指导,而且我对单片机的爱好,最后确定了这个红外遥控控制直流电机和步进电机的方案。方案定下来之后,我进一步分析它的可行性,通过进一步的专项资料查找,我进一步优化了系统的设计,包括元器件的选择也做了详细的筛选,最后才确立了最终方案。方案确定后,我便开始采购元器件,着手焊接电路板,边焊接边测试电路的导通情况。焊好的部分电路我都会采用小软件烧入测试的方式检验电路板各个端点电气性是否满足设计要求。经过自己的努力,我成功的焊接好了各个元器件,为后面的软件总体调试打下了坚实的基础。204 系统软件设计4.1 单片机 MCS-51 系列简介关于单片机 MCS-51 的编程目前比较多用的是汇编和
43、C 语言:汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的 CPU,其汇编语言可能有所差异,所以不易移植。然而对于目前普遍使用的 RISC 架构的 8bit MCU 来说,其内部 ROM、RAM、STACK 等资源都有限,如果使用 C 语言编写,一条 C 语言指令编译后,会变成很多条机器码,很容易出现 ROM 空间不够、堆栈溢出等问题。而且一些单片机厂家也不一定能提供 C 编译器。而汇编语言,一条指令就对应一个机器码,每一步执行什么动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。所以本设计采
44、用汇编语言编写。本设计采用 Keil C51 软件进行编程, Keil C51 软件是众多单片机应用开发的优秀软件之一,它集编辑,编译,仿真于一体,支持汇编、PLM 语言和 C 语言的程序设计,界面友好,易学易用,给我在设计者带来很大的方便。4.2 遥控器系统的程序设计4.2.1 初始化程序和主程序初始化程序和主程序流程图 4-1 和图 4-2 所示。初始化程序主要是设置 P1口和 P3 口为高电平状态,关 P3.5 遥控输出,设置堆栈 SP,设置中断优先级IP,选择定时器/计数器 1 和设置操作模式为自动 8 位重载模式。主程序部分首先调用初始化程序,再进入主程序循环状态。在循环中主要有两个
45、任务,即调用键盘程序和进入低功耗空闲待机方式。系统完成键盘查询程序后即进入空闲节点方式,直到外部中断 1 中断或硬件复位退出,CPU 再次转向循环部分调用键盘程序。北京理工大学珠海学院 2009 届本科生毕业设计21图 4-1 初始化流程图 图 4-2 主程序流程图4.2.2 外部中断 1 和定时器 1 中断服务程序INT1SERVE:CLR IE1ANL PCON,#00HRETI外部中断 1 中断服务程序的功能是:当有键按下时,通过与门触发中断 1中断,IDL 被硬件清零,单片机结束低功耗空闲节电方式,执行进入低功耗空闲方式命令后面的一条指令。所以在外部中断 1 中断服务程序中需一条中断返
46、回指令。T1SERVE:CPL P3.5RETISTARTP1,P3 口复位关 P3.5 遥控口输出设置堆栈设置中断优先级定时器/计数器 1 方式 2 选择,初值设置开外中断 1开总中断允许返回START调用初始化程序调接收程序进入低功耗空闲节电方式外中断 1 中断?N硬件退出低功耗空闲方式Y22定时器 1 中断服务程序的功能是:红外管发射的信号需经过高频调制载波才可以发射出去,利用定时器 1 的定时作用,在发射高频脉冲时,通过定时对P3.5 口的取反操作,使发射信号调制成 38.5kHz 高频。4.2.3 键盘扫描和红外发射程序键盘扫描和红外发射程序流程图如下所示。图 4-3 键盘扫描和红外发射程序流程图遥控器的编码采用脉冲个数编码格式,不同的脉冲个数代表不同的操作码,最少为 2 个脉冲,其他信息码的脉冲个数逐个递增。为了使接收可靠,第一位码宽为 3ms,其余为 1ms,码间距为 1ms,遥控码数据帧间隔大于 10ms。遥控器上每个键都有唯一的一个键号,CPU 通过查询按下键的键值发射约定个数的脉冲。遥控器编码格式如下图 4-4 所示:START逐行扫描查列号由键号转至发射程序查表确定键号返回START装载发射脉冲个数发 3ms 首脉冲停发 1ms 码间距发射脉冲个数减1 为 0 吗?N发 1ms 脉冲Y有键按下?NY返回停发 1ms 脉冲