




已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机的步进电机控制系统设计与实现摘要步进电机是一种纯粹的数字控制电动机,是一种受电脉冲信号控制的无刷式直流电动机,是现代定位驱动装置的核心,广泛应用在机械、电力、纺织、电子、仪表、印刷以及航空航天、船舶、兵器等国防工业等领域。基于单片机的步进电机控制系统具有稳定度高、成本低、控制方便、应用范围广等特点。本系统是由STC89C52单片机核心处理模块,遥控器命令输入模块,ULN2003及28BYJ48步进电机组成的电机模块,12864液晶输出模块共同组成的基于单片机的步进电机控制系统。本设计以载波为38KHZ的红外遥控器作为用户的控制端,它的功能是把用户的命令转换为红外信号。红外信号由TL1838接收,它可以将光信号转换为电信号,并将其发送给微控制器STC89C52。STC89C52对电信号进行相应处理即可获得用户所发出的指令,并依此来控制28BYJ48型四相八拍电机并以12864液晶作为当前状态的显示器。用户可以对步进电机进行加速、减速、正转、反转的控制。本步进电机控制系统具有精度高、运行稳定、控制方便、维护简单、应用范围广等特点。关键词STC89C5212864液晶步进电机红外遥控DESIGNANDIMPLEMENTATIONOFSTEPPERMOTORCONTROLSYSTEMBASEDONMCUABSTRACTSTEPPERMOTORISAKINDOFPUREDIGITALCONTROLMOTORANDBRUSHLESSDCMOTORCONTROLLEDBYELECTRICPULSESIGNALTYPESTEPPERMOTORISTHECOREOFTHEMODERNORIENTATIONDRIVE,WIDELYUSEDINMACHINERY,ELECTRICPOWER,TEXTILE,ELECTRONICS,INSTRUMENTS,PRINTINGANDAEROSPACE,SHIPS,WEAPONS,ANDOTHERAREASOFTHEDEFENSEINDUSTRY,ETCTHECHARACTERISTICSOFTHESTEPPINGMOTORCONTROLSYSTEMBASEDONSINGLECHIPMICROCOMPUTERINCLUDEHIGHSTABILITY,LOWCOST,CONVENIENTCONTROLANDWIDEAPPLICATION,ETCTHESTEPPERMOTORCONTROLSYSTEMCONSISTSOFCOREPROCESSORUSINGTHESINGLECHIPPROCESSOR,COMMANDINPUTCONTROLMODULEUSINGIRREMOTECONTROL,DISPLAYMODULEUSING12864LCDAND28BYJ48STEPPINGMOTORMODULEWHICHUSINGULN2003ASDRIVERTHEINFRAREDREMOTECONTROLWITHCARRIERFOR38KHZISUSEDASTHECONTROLENDOFTHEUSER,WHICHCANCONVERTTHEUSERSCOMMANDSINTOTHEINFRAREDSIGNALTHETL1838CANRECEIVETHEINFRAREDSIGNALANDCONVERTITINTOELECTRICALSIGNAL,WHICHINPUTTOTSTC89C52THEMCUCANOBTAININSTRUCTIONSOFUSERSBYPROCESSINGTHEINCOMINGSIGNALANDCONTROLSTEPPINGMOTOROFTHE28BYJ48TYPE,THECURRENTSTATUSCANBESHOWNBY12864LCDUSERSCOULDCONTROLACCELERATION,DECELERATION,FORWARD,INVERSIONFORTHESTEPPINGMOTORTHEFEATURESOFTHECONTROLSYSTEMOFSTEPPERMOTORINCLUDESHIGHPRECISION,STABLERUNNING,CONVENIENTCONTROLANDSIMPLEMAINTENANCEANDWIDEAPPLICATION,ETCKEYWORDMCU12864LCDSTEPPERMOTORINFRAREDREMOTECONTROL目录1引言12总体设计方案221系统设计原理222总体设计框图23系统硬件模块的组成331单片机控制模块3311STC89C52主要结构3312STC89C52功能特性描述3313时钟电路6314复位电路632步进电机模块7321步进电机简介7322步进电机的结构832328BYJ48步进电机工作原理833ULN2003芯片概述与特点934红外线发射接收模块10341红外线遥控的介绍10342红外通信基本原理10343红外遥控发射系统12344红外遥控接收系统12345TL1838与单片机的接口143512864显示模块1435112864液晶的特点1435212864液晶的引脚说明1535312864液晶的读写操作1735412864液晶的控制指令1735512864液晶接口电路2036蜂鸣器模块20361蜂鸣器介绍20362蜂鸣器的接口电路214软件设计与调试2241主程序流程图2242程序设计思路23421遥控器的解码23422步进电机的控制23423显示屏的控制24424蜂鸣器的控制24425模块中的通信245编程与下载软件2551KEIL软件2552STCISP下载软件266硬件电路制作2761原理图的绘制2762电路实现的基本步骤277结论30谢辞31参考文献32附录331引言步进电机是一种纯粹的数字控制电动机,又称为阶跃电机或脉冲电机1。是一种转动速率与转动步数可以由脉冲数量与频率控制的直流电机,也就是说这是一种转动速度与脉冲频率相一致的同步电机。它是一种将电脉冲能量转换为机械能的机制,这种方式使它转动的每一个角度,每个角度占用的时间都由用户掌控。随着科学技术的迅猛发展,步进电机的研究也到达了新的水准。定位驱动系统已完全由步进系统所主宰。在过去,人们认为步进系统在很多方面都不及伺服系统,但是由于技术的不断革新,材料的不断升级优化以及计算机技术的不断成熟,使得步进控制系统在技术层面上迎来了崭新的一页。定位驱动系统是处于不断发展状态的,经历了步进系统、直流伺服系统、交流伺服系统等过程的发展与过度,现在又回到了步进控制系统。定位驱动装置之所以再一次回到步进系统,是因为它可以将系统简化,维护非常简单,它所构成的开环控制系统是无需反馈的,同时又能保持非常高的精度。所以现如今的定位驱动装置大多是采用步进系统的,这在将来的几十年都不会改变,这种由脉冲去控制转动方位,脉冲频率决定转动速度的定位方式一定会在很大程度上决定着工业与生活中的定位装置的发展趋势。步进电机的上述特点使得它广泛应用于冶金、机械、电力、纺织、电子、轻工、重工、电子、医疗、印刷以及航空航天等国防工业等领域。举一个典型的例子,数控机床在机械行业中有着举足轻重的地位,而数控机床的正常运转又是依赖步进电机的,它核心就是步进电机系统。这种无需反馈的开环系统决定了数控机床的工作可靠、性能稳定、维护方便、加工迅捷的特点,也使数控机床成为如今机床发展的主要方向。在其他的许多行业中,步进控制系统也发挥着举足轻重的作用。比如我们在生活中常见的有钟表、广告牌、绘图仪等,在生产中常见的有印刷机器、纺织机、包装机械等。本设计主要是基于单片机的步进电机控制系统,可以通过遥控器的键盘设置期望的步进电机转动状态,通过红外发射装置及接收装置,使单片机接收到用户需要的控制命令,进行相应的处理,使步进电机改变运动状态并在LCD显示屏显示出来。本设计虽然是理论上的步进系统,并没有广泛应用于工业中的定位装置与生产当中。但是随着步进电机技术的不断革新和电机身上所固有的脉冲与角位移严格成正比的特点,以及红外遥控的准确、迅捷、易于控制的优势,步进电机对步进电机稳定、高效、准确的控制,都决定了基于单片机的红外控制步进电机系统将在生活生产中迎来广阔的市场。为了表现步进电机的在生活生产中的应用广泛性,本设计的一些功能的设定有一定的针对性,可以具体的表现出红外控制的步进系统的优越性能。2总体设计方案21系统设计原理单片机STC89C52是整个系统关键部分,通过对遥控器上键盘的命令输入,经遥控器编码后发出红外信号,TL1838接收到信号并在单片机中解码。本文提出的采用38KHZ的遥控器为核心控制器件的步进电机控制系统,根据输出信号的不同可以控制步进电机的转动状态,其中采用了28BYJ48的步进电机,以ULN2003为驱动芯片,并通过单片机程序控制和处理,从而实现了步进电机的状态控制及相应状态显示。本系统采用STC89C52单片机为核心处理器,遥控器为命令输入模块,由ULN2003及28BYJ48步进电机组成的转动模块、12864液晶的输出模块共同组成的基于单片机的步进电机控制系统。22总体设计框图本设计采用STC89C52单片机为核心处理器,利用载波为38KHZ的遥控器为输入模块键盘输入模块,控制步进电机的正转和反转,并以三种不同的速度进行转动,并且转动状态在12864液晶上显示。系统构成如图21所示。图21系统框图由系统框图可知,遥控器和TL1838为输入装置,步进电机、12864液晶、蜂鸣器为输出装置,单片机为中心处理装置,ULN2003为驱动器。遥控器TL1838单片机ULN2003步进电机12864液晶蜂鸣器3系统硬件模块的组成31单片机控制模块主控电路中,以单片机为主体,通过分析遥控输入的指令,改变步进电机的运行参数和显示参数。它是系统的大脑。单片机(MICROCONTROLLER,又称微控制器)是在一块硅片上集成了各种部件的微型机算计,这些部件包括中央处理器CPU、数据存贮器RAM、程序存贮器ROM、定时器/计数器和多种I/O接口电路3。311STC89C52主要结构STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程FLASH存储器。在单芯片上,拥有灵巧的8位CPU和在系统可编程FLASH,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能8K字节FLASH,512字节RAM,32位I/O口线,内置4KBEEPROM,MAX810复位电路,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口4。312STC89C52功能特性描述STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程FLASH存储器。使用宏晶公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上FLASH允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程FLASH,使得STC89C52为众多嵌入式控制应用系统提供高灵活、有效的解决方案。STC89C52具有以下标准功能8K字节FLASH、256字节RAM、32位I/O口线、看门狗定时器、2个数据指针、三个16位定时器/计数器、一个6向量2级中断结构、全双工串行口、片内晶振及时钟电路。另外,STC89C52可降至0HZ静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下个中断或硬件复位为止5。STC89C52的引脚结构如图31所示。图31STC89C52单片机引脚图GND接地。VCC供电电压。P0口P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在FLASH编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。此外,P10和P12分别作定时器/计数器2的外部计数输入(P10/T2)和时器/计数器2的触发输入(P11/T2EX),在FLASH编程和校验时,P1口接收低8位地址字节。P2口P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器。能驱动4个TTL逻辑电平。P2口P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输P0TEX3567RS9XDINWALVCU出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如表31所示。表31P3口的第二功能信道位第二功能说明P30RXD串行口的输出P31TXD串行口的输入P32ERROR外部中断0的中断请求输入P33ERROR外部中断1的中断请求输入P34T0计数器0的计数输入P35T1计数器1的计数输入P36ERROR外部数据存储器的写选通信号P37ERROR外部数据存储器的读选通信号RST复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机PSEN器周期两次有效。但在访问外部数据存储器时,这两次有效的信号将PSEN不出现。/VPP当保持低电平时,则在此期间外部程序存储器(0000HEAFFFFH),不管是否有内部程序存储器。注意加密方式1时,将内部锁定为EARESET;当端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2来自反向振荡器的输出。313时钟电路STC89C52有内部时钟和外部时钟两种连接方式。设计中使用内部时钟,即在RXD和TXD两端并联晶振和适当电容。需要注意的是并不是晶振有定时的作用,而是通过和单片机内部的高增益反相放大器连接,使它可以在一定频率下稳定震动,起到口令的作用。其连接电路如图32所示。图32时钟电路在RXD和TXD引脚上并联的晶振是系统的定时元件,内部振荡器就产生自激振荡。时钟电路中选用的晶振可以在1224MHZ之间选择,并联的电容值可在530PF之间选择,为单片机提供了有序准确的命令,是单片机正常运行的前提。314复位电路AT89C52的外围电路是必须有复位功能的,一般分为自动复位和按键复位。设计使用的是手动复位,电路原理是在普通RC复位电路的基础上接一个有下拉电阻10K、上拉电容10F接VCC,电源由开关经串接的1K限流电阻至复位脚(和上拉电容并联),上拉电容支路负责在“上电”瞬间实施复位;开关通过1K上拉电阻和10K下拉电阻分压器,保证对单片机实施按键电平复位6。电路图如图33所示。2Y09M3PFCASEMIXTLGND图33复位电路复位可以对单片机初始化。其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序7。复位一般有两种作用,一种是在进入系统时要正常的初始化,另一种是程序可能会出现错误,运行混乱,是系统处于死锁状态,为了解决这种困境,通常采用复位方式。32步进电机模块321步进电机简介人类社会进入自动化时代的今天,传统电动机的功能已不能满足各种运动控制系统的要求。为了适应这些要求,发展了一系列新的具备控制功能的电动机系统,其中较有自己特点,且应用十分广泛的一类便是步进电机。从发展趋向来讲,步进电机已经能与直流电动机,异步电动机,以及同步电动机并列,成为电动机的一种基本类型,步进电机己成为除直流电动机和交流电动机以外的第三类电动机。步进电机是电动脉冲信号为角位移或线位移的开环步进电机控制元件块。步进电机对于其他种类电机的优势是在非超载的情况下,电机的运动状态如电动机转速、停止的位置非常稳定,可以完全在用户的掌控之中的,负载的变化,在恶劣环境下都不会对它产生影响,这取决于它的控制方式的与众不同。步进电机的转动圈数完全取决于给它脉冲的数量,它转动速度又完全取决于脉冲频率。只要给步进电机一个脉冲,就会驱动电机在旋转方向上转动一个固定的角度,称为“步进角”,旋转角度是固定的一步一步的操作8。所以它的可操作性非常优越,但是步进电机的转动速度是比较慢的,随着科技的发展,这种缺点也在逐渐改善。步进电机的实物图如图34所示。10KR5VUFC2SWPBGNDT图3428BYJ48型四相八拍电机本设计选择28BYJ48步进电机作为设计对象,步进电机28BYJ48型四相八拍电机,电压为DC5VDC12V。使步进电机连续转动的方法是不断的供给控制脉冲。每个脉冲都对应步进电机的某一项或两项绕组,当它的通电状态改变时对应的转子就会转过一定角度,这个角度叫做步距角。通电状态改变一个周期时转子所转的角度成为齿距。四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(ABCDA),双(双相绕组通电)四拍(ABBCCDDAAB),八拍(AABBBCCCDDDAA)。322步进电机的结构步进电机有转子和定子两部分,在电流作用下的,定子和转子的相互作用,使得电机不停转动。28BYJ48步进电机的定子是由硅钢片叠成的,定子上有8大磁极,每2个相对的磁极(N,S)组成一对,共有4对,如图35所示。定子齿有个励磁绕阻,其几何轴线依次分别与转子齿轴线错开。0、1/4、2/4、3/4(相邻两转子齿轴线间的距离为齿距以表示),即A与齿1相对齐,B与齿2向右错开1/4,C与齿3向右错开1/2,D与齿4向右错开3/4。而转子是由软磁材料制成,其外表面也均匀地分布着小齿,与定子上的小齿相同,并且小齿的大小相同,间距相同。32328BYJ48步进电机工作原理步进电机是一种将电脉冲转换为角位移的执行机构,步进电机的转动圈数完全取决于给它脉冲的数量,它转动速度又完全取决于脉冲频率。只要给步进电机一个脉冲,就会驱动电机在旋转方向上转动一个固定的角度,可以通过电脉冲个数来控制角偏移量,从而达到准确定位的目的,同时可以通过控制脉冲频率,来控制电机转动的速度和加速度,从而达到调速的目的。本设计选择28BYJ48步进电机作为设计对象,其原理图如35所示。图35步进电机接线示意图在图中可以看到附在周围的是定子,在中间的是转子。定子的作用是产生一个电磁场,这个电磁场和转子的磁场可以产生一个扭力9,使得步进电机转动。但是定子的电磁场是不能和转子磁场在同一直线的。使步进电机不停转动的前提是定子的磁场不停的变换,这个变换是通过一次改变绕组的磁场,始终是定子和转子的磁场产生错位,促使步进电机的稳定转动。而改变磁场切换的时间间隔,就可以控制步进电机的速度了,这就是步进电机的驱动原理。由于单片机的驱动电流较小,不能直接用来驱动步进电机,优势不能充分展现,所以一般都是使用ULN2003达林顿阵列驱动,可以为步进电机提供较大的扭力,使电机稳定工作。33ULN2003芯片概述与特点ULN2003芯片是高耐压、大电流达林顿阵列,由7组达林顿晶体管阵列和相应的电阻网络以及钳位二极管网络构成,具有同时驱动7组负载的能力,为单片双极型大功率高速集成电路10。由于步进电机并不是简单的转动,它要带动不同的负载,完成不同的工作,所以需要产生较大的扭力,又由于直接使用三极管驱动的局限和功率电子电路大多要求具有大电流输出能力,所以步进电机的驱动一般使用ULN2003。ULN2003芯片高压大电流达林顿晶体管阵列产品属于可控大功率器件功率驱动电路,可控大功率驱动器件驱动电路是功率电子设备输出电路的一个重要组成部分。具体电路图如图36所示。图36ULN2003接线示意图ULN2003实际上只是一个放大电路,用来放大电流,对于实际的逻辑控制没有任何作用。如果没有这个芯片电机也会转动,只是转动的扭力会受很大影响,制约步进电机的性能。34红外线发射接收模块341红外线遥控的介绍红外线是太阳光线中众多不可见光线中的一种,在太阳光中就包含着红外线。由德国科学家霍胥尔于1800年发现,又称为红外热辐射。很多人不知道红外线与紫外线等不可见光线或者红光等可见光线的产生区别,它们最大的区别是波长不同,波长是震荡频率的结果。人眼能够识别的可见光的种类为红、橙、黄、绿、青、蓝、紫,波长是从长到短排列的。其中红光的波长范围为062076UM;紫光的波长范围为038046。比紫光的波长还要短的光叫紫外线,比红光的波长还要长的光叫红外线。红外线遥控技术就是利用波长为07615M之间的近红外线来传送控制信号的。红外线是我们最常用的一种不可见光线,家用电器的遥控器基本上都是使用红外线。有一个很有趣的特点,当按下遥控器的键盘时,我们看不到红外发射头发出的光线,但是如果我们用照相机来对着红外发射头,按下键盘时,在相机中我们可以观察到它发出了亮光。红外遥控的特点是造价较低,适合市场的推广,各类家庭用户的使用。编解码较容易,不会因为程序电路的复杂性而经常出现故障。它由32位码长,4段码,通过用户码的不同区别开了不同产品的不同遥控,以免互相干扰,不影响周边环境、不干扰其它电器设备。还有一个重要原因,红外线不会对人体造成伤害,发射接收距离较长,方便用户使用。一般在10米以内可以灵敏接收的。342红外通信基本原理通信控制系统大多是由发射与接收两部分组成的,红外通信也不例外。发射系统对一个红外辐射源进行调制后发射红外信号,而接收系统用红外一体化接收头进行接收,两者联合构成了红外通信系统。红外通信的基本原理是发送端将基带二进制信号调制为一系列的脉冲串信号(载波信号),通过红外发射管发射红外信号。红外信号由接收端转换成电信号,并对其进行放大、滤波等处理,还原成二进制数字信号,并将其输出。由于各遥控产品的不同,还有很多不同的遥控厂商,必须有一个通信协议来保障不同种类的红外产品获得最佳的通信效果。红外线的波长在750NM至1MM之间,红外通信一般采用红外波段内的近红外线,波长在075UM至25UM之间。红外数据协会将红外通信协议定为波长限定在850NM900NM范围之间。红外线的调制方法常用的有两种,一种是通过脉冲宽度来实现信号调制的脉宽调制(PWM),另一种是通过脉冲串之间的时间间隔来实现信号调制的脉冲调制(PPM)13。本设计采用脉冲调制方法,即二进制信息由两个脉冲的时间间隔来表示,首先产生一个同步头,然后产生2个8位用户码,接着8位数据码和8位数据反码,如图37所示。图37PPM调制波形图红外遥控的一个数据帧是由引导码、用户码、数据码和数据反码组成的。每个品牌的用户码一般都是不同的,数据码同种种类的遥控器一般差异不大。每段码都为8位,2段用户码,数据码及其反码只有1段。每帧数据由一个起始位、2段8个用户码位8个数据码和数据反码构成,如图38所示。每帧传送1个字节的数据。图38数据帧结构示意图由于红外光存在反射,在全双工的方式下发送的信号也可能会被本身接收,因056MS056MS1125MS225MS数据0数据145MS45MS引导码用户码用户码数据码数据反码数据帧结构8位8位8位8位此,红外通信应采用异步半双工方式,即通信的某一方发送和接收交替进行。343红外遥控发射系统红外遥控系统结构红外遥控系统主要分为调制、发射、接收和解调四部分,如图39所示。图39红外遥控系统调制红外遥控发射数据时采用调制的方式,即把数据和一定频率的载波进行“与”操作,这样可以提高发射效率和降低电源功耗。调制载波频率一般在30KHZ到60KHZ之间,一般红外遥控使用的是38KHZ,占空比1/3的方波。如图310所示。88US264US图310载波波形有很多芯片都可以发射红外光,但是对于遥控的芯片选择要考虑使用设备和编码种类的不同。对于家用电器的遥控,必须功率要低,这样电池才可以长时间使用,一般都使用可休眠的的发射芯片,能不按键时遥控处于不工作模式。芯片一般选用的晶振为陶瓷共鸣器,因为其有足够的物理撞击能力,虽然准确性不如石英晶体,但是通常是可以允许一些误差的。经过编码后,要用专用的发射头发射出去。普通的发光二极管是不能担此重任的,因为它只能发射出可见光。红外发射二极管是专门用来发射红外线的,它的内部材料是与普通二极管完全不同的,所以导致了其发出的是红外线而不是可见光12。听上去红外发射二极管价格也很便宜,与普通发光二极管差不多,某些方面也促进了红外通信技术的发展。344红外遥控接收系统有发射就要有接收,由于发射的红外线有38K的载波,所以一定要先把接收的信号滤波才行,为了得到准确的编码,还要把信号进行放大、积分等。这是一个复杂的过程,也应该有复杂的电路来处理。随着科技的发展,芯片集成能力的不断提高,这个看似复杂的任务只需要一个叫做红外接收头的电子器件就可以完成工作。常用的红外接收头有HX1838,TL1838等,它们的性能、结构基本都是一样的,可以把38K载波滤掉,并进行一定的处理,使中心处理器件接收到准确的编码,但需要注意的是它处理后的是原来编码的反码。图311中就是TL1838一体化红外接收头,其38就是接收38K载波的意思。图311TL1838实物图TL1838如图311所示,从左边开始,分别为1脚、2脚、3脚,分别为信号输出脚、地和电源,其电平与TTL兼容。TL1838系列特性如下工作电压2755V工作电流14MA距离15M频率38K角度45波长940NM当TL1838接收到红外光信号时,内部的PIN红外接收管将其装换为电信号,又经过放大电路、解调电路的作用,由输出引脚输出与TTL电平兼容的电信号,该电信号可以直接送到微处理器中处理。TL1838的输出波形如图312所示。当接收到频带内的红外信号时,TL1838接收器会输出低电平,否则数出高电平,从而“将时断时续”的红外信号解调成原来的连续方波信号。需要注意的一点是,它并没有把红外信号解码,因为它处理后发出的信号不是标准的1、0高低电平。不管是1还是0,都包含着高低电平,只是高低电平所持续的时间是不同的,这需要单片机自己通过程序来判断了。图312A已调制红外信号BTL1838输出信号TL1838的有效传输距离是15M,它的工作电压为2755V,接收稳定,功率小,在各种红外接收场合的可以使用。TL1838由于它的稳定性能,低廉的价格,是一款性价比很高的红外一体化接收头13。345TL1838与单片机的接口本设计的红外遥控系统是将普通遥控器解码,把它的32位码写进单片机程序中,使得可以通过对遥控器键盘的控制,单片机可以得到相对指令。其连接线电路如图313所示。图313遥控的接收头的连线把其输出端接单片机的外部中断0,每当遥控器发出信号时都会触发单片机外部中断,这时再触发单片机的定时中断对其发出的信号进行鉴定,以检测出其码位。3512864显示模块35112864液晶的特点现在的字符型液晶模块已经是单片机应用设计中最常用的信息显示器件了。12864型液晶显示模块具有体积小,功耗低,显示内容丰富等特点。设计中用到的就是这种显示屏。其实物图如图314所示。低电平高电平GND5V123UTL8P图31412864实物图12864型液晶显示屏共有20个引脚,其中有8位数据总线D0D7,5个控制引脚R/W、E、RS、PSB、RST,5个电源引脚,其中包括背光电源和显示器电源。三个用于调节背景亮度和字符亮度以及供电的引脚。12864型液晶是利用液晶经过处理后能够改变光线传输方向的特性,达到显示字符或图形的目的。它由点阵字符显示器件和专用的行和列驱动器组成,体积小、功耗极低、显示内容丰富。可以通过对外围电路的调节来控制屏幕亮度,工作电压为5V。本设计使用的液晶使用ST7920控制器,5V电压驱动,带背光,内置8192个1616点阵、128个字符(816点阵)及64256点阵显示RAM。与外部CPU接口采用并行或串行两种控制方式。35212864液晶的引脚说明12864液晶有多种驱动芯片,虽然驱动芯片有很多种,但原理基本相同。本次设计采用驱动芯片为ST7920的12864液晶对步进电机工作状态进行显示,其引脚分布图如图315所示。图31512864液晶管脚图12864液晶管脚及其功能描述,如表32所示表3212864管脚说明管脚号管脚名称电平管脚功能描述1VSS0V电源地2VCC35V电源正3V0对比度(亮度)调整4RSCSH/LRS“H”,表示DB7DB0为显示数据RS“L”,表示DB7DB0为显示指令数据5R/WSIDH/LR/W“H”,E“H”,数据被读到DB7DB0R/W“L”,E“HL”,DB7DB0的数据被写到R或DR6ESCLKH/L使能信号7DB0H/L三态数据线8DB1H/L三态数据线9DB2H/L三态数据线10DB3H/L三态数据线11DB4H/L三态数据线12DB5H/L三态数据线13DB6H/L三态数据线14DB7H/L三态数据线15PSBH/LH8位或4位并口方式,L串口方式16NC空脚17RESETH/L复位端,低电平有效18VOUTLCD驱动电压输出端19AVDD背光源正端VSC0EDBNPK/WTOU在对液晶模块进行操作时,其忙标志位(BF)提供内部工作情况,BF1表示模块在进行内部操作,此时模块不接受外部指令和数据。BF0时,模块为准备状态,随时可以接受外部指令和数据14。原则上每次对控制器进行读/写操作之前,都必须进行读/写检测。实际上,由于单片机的操作速度低于液晶控制器的反应速度,因此可不必进行读/写检测,或只进行简短的延时即可。35312864液晶的读写操作12864与外部CPU接口有并行或串行两种控制方式,由于本设计采用的是并行读写模式,所以主要介绍并行控制方式。读状态的操作时序为RSL,R/WH,EH;读数据操作时序为RSH,R/WH,EH;时序图如图316所示。图31612864液晶的读时序20KVSS背光源负端写指令的操作指令为RSL,R/WL,E高脉冲脉冲,DB0DB7指令码。写数据的操作指令为RSH,R/WL,E高脉冲,DB0DB7数据14,时序图如317所示。图31712864液晶的写时序12864液晶是一种可以读数据和存数据的器件。由于设计中只用到了些操作,所以要着重说明写操作的方法。E端为使能端,R/W来区分读和写,RS来控制数据还是指令,时序的协调性非常重要。35412864液晶的控制指令12864共有18条控制指令,来对显示器写状态。现在详细分析液晶的显示集。1清除显示CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLLH功能清除显示屏幕,把DDRAM位址计数器调整为“00H”。2位址归位CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLHX功能把DDRAM位址计数器调整为“00H”,游标回原点,该功能不影响显示DDRAM。3位址归位CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLHI/DS功能把DDRAM位址计数器调整为“00H”,游标回原点,该功能不影响显示DDRAM4显示状态开/关CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLHDCB功能D1;整体显示ONC1;游标ONB1;游标位置ON5游标或显示移位控制CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLHS/CR/LXX功能设定游标的移动与显示的移位控制位这个指令并不改变DDRAM的内容。6功能设定CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLHDLX0REXX功能DL1(必须设为1)RE1;扩充指令集动作RE0基本指令集动作。7设定CGRAM位址CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLHAC5AC4AC3AC2AC1AC0功能设定CGRAM位址到位址计数器(AC)。8设定DDRAM位址CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLHAC6AC5AC4AC3AC2AC1AC0功能设定DDRAM位址到位址计数器(AC)。9读取忙碌状态(BF)和位址CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LHBFAC6AC5AC4AC3AC2AC1AC0功能读取忙碌状态(BF)可以确认内部动作是否完成,同时可以读出位址计数器(AC)的值。10写资料到RAMCODERWRSDB7DB6DB5DB4DB3DB2DB1DB0HLD7D6D5D4D3D2D1D0功能写入资料到内部的RAM(DDRAM/CGRAM/TRAM/GDRAM)。11读出RAM的值CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0HHD7D6D5D4D3D2D1D0功能从内部RAM读取资料(DDRAM/CGRAM/TRAM/GDRAM)。12待命模式(12H)CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLLH功能进入待命模式,执行其他命令都可终止待命模式。13卷动位址或IRAM位址选择(13H)CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLHSR功能SR1;允许输入卷动位址SR0;允许输入IRAM位址。14反白选择(14H)CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLHR1R0功能选择4行中的任一行作反白显示,并可决定反白的与否。15睡眠模式(015H)CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLHSLXX功能SL1;脱离睡眠模式SL0;进入睡眠模式。16扩充功能设定(016H)CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLLHHX1REGL功能RE1;扩充指令集动作RE0;基本指令集动作G1;绘图显示ONG0;绘图显示OFF。17设定IRAM位址或卷动位址(017H)CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLLHAC5AC4AC3AC2AC1AC0功能SR1;AC5AC0为垂直卷动位址SR0;AC3AC0写ICONRAM位址。18设定绘图RAM位址(018H)CODERWRSDB7DB6DB5DB4DB3DB2DB1DB0LLHAC6AC5AC4AC3AC2AC1AC0功能设定GDRAM位址到位址计数器(AC)。35512864液晶接口电路本设计中显示器显示出电机的转动状态,正转、反转、速度等显示内容。本设计的液晶电路如图318所示。图318LCD连接电路图此电路是液晶的驱动电路,使液晶显示电机状态,单片机的P1口为数据接口,P35及P36控制液晶的命令与数据传输。滑动电阻器用来控制液晶的亮度。36蜂鸣器模块361蜂鸣器介绍蜂鸣器是一种常见的一体化结构的电子讯响器,采用直流电压供电,在计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中广泛应用。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示15。362蜂鸣器的接口电路蜂鸣器有无源蜂鸣器和有源蜂鸣器之分。有源蜂鸣器在接通接通电源后,内部振荡器产生的音频信号电流通过电磁线圈,产生震荡,使蜂鸣器周期性发声。无源蜂鸣器需要通过外接信号震荡,从而使蜂鸣器发声。设计中使用的是无源扬声器,所以必须由单片机供给震荡信号。其连接电路如图319所示。U512864晶P307NCKRESTAPVGD图319蜂鸣器连接电路图由于设计所用的是无源蜂鸣器,接PNP三极管以放大电流,单片机P00口用来发出脉冲以驱动蜂鸣器,每当按下遥控器的键盘时蜂鸣器都会发出声音。4软件设计与调试41主程序流程图通过在遥控器上的指令输入,发出红外信号,设计中的TL1838接收到红外信号滤波并处理传送给单片机,单片机对所得到的信号进行解码,以判断所得命令的用意,来控制步进电机的转动以及显示器的显示。主程序流程图如41所示。Q12N3906VCR5ESPLSBLGD否否是是完毕完毕图41主程序流程图设计中的程序主要是由中断函数来主宰。主要用了外部中断1,定时中断2,而主函数主要用来初始化和等待中断。当收到外部中断0的触发时,证明遥控器已发射信号需要解码,定时器2产生中断时来供给步进电机脉冲。42程序设计思路本设计的程序设计包括遥控的解码,显示屏的显示及步进电机的驱动。其中遥控发出的码位通过TL1838接收由单片机中程序解码并依此来控制步进电机及显主程序输入初始化LCD显示WHILE循环改变电机转动状态及相应显示是否触发外部中断0定时器1是否中断产生脉冲驱动电机遥控解码驱动蜂鸣器开始结束示屏。421遥控器的解码遥控器具有发射指令作用,由于本设计所用遥控器是任意电视遥控,其载频为38KHZ,所以需将遥控器的所有用到键位解码,得到相应键位编码后,将其键位编码放到单片机程序中,当遥控器向TL1838发射时,单片机又对其解码,如果其编码与单片机所存编码相同时即认定此为用户要发的命令,执行这个命令来控制显示器及步进电机。由上所述,遥控器的解码很重要。遥控器发射32位码,当我想要知道其所用的键的编码时,必须编一个程序可以显示相应的键的编码。将TL1838连接到单片机的外部中断0口,当接受到所发信息后,TL1838会首先去掉其38K的载频,以此得到真正要发射的信息。由于发射的信息是二进制码,所以只包含1和0,又因为发射的1和0都包括高电平和低电平,只是其高低电平的时间不同,所以当外部中断采用脉冲触发时,每个码都会触发外部中断,当触发外部中断时,立刻开启定时器定时,以此判断1和0,同时把其编码发送到显示器上并记录,然后写到本设计的程序中。在本设计中,识别遥控器的编码的程序思路与上面所述是相同的,只是设计中将其编码进行比较来判断。422步进电机的控制在本设计中,当单片机发送一组步进电机识别的编码脉冲时,步进电机就会转动。所以在程序中,将其脉冲编码放在数组中,以供程序调用并控制电机。此脉冲编码共有8个状态,正反转是相同的只是其调用书序相反,需要注意的是调用时编码必须按顺序,其编码表为0X01,0X03,0X02,0X06,0X04,0X0C,0X08,0X09。当发送完这一串编码后,步进电机只转动45度,所以要转动一圈,需要调用8次,也就是说,转动一圈需要64个脉冲。要控制步进电机的速度,只需在每次发完编码表一次后,延时。步进电机的优点就是转动角位移准确,所以设计中用定时器发送脉冲,这样可以得到非常准确的转动速度。设计中,用P2口发送脉冲编码,即把脉冲编码一个一个的通过P2口发送给步进电机。而此动作放在定时中断中,每次中断传送一个编码,这样步进电机优化了普通延时程序的不稳定、不准确等问题。423显示屏的控制12864液晶是一种带存贮功能的器件,有4个显示行,每行可显示8个汉字、16个英文字符,一共有20个引脚,带有背光灯,亮度可以调节。在控制显示屏的显示时,分为命令和数据的控制。无论是数据控制还是命令控制,都需要向显示器的数据口中写数据,此数据口为8位,在本设计中用单片机的P1口来传输。而写数据和写命令控制上的区别是RS和E引脚。写命令时控制方法是,RS置为0,E置为0,将要写命令通过数据口用单片机传输,然后将E置为1,即把命令写入显示器中。写数据时先将RS置为1,E置为0,将要写数据通过数据口用单片机传输,然后将E职位1,即把数据写入显示器中。写命令和写数据是相互配合使用的。写命令是控制显示器的显示格式、显示位置、清屏、光标设置等,只有指定了上述的命令,才可以写数据写到自己满意的地方。写数据就是写命令之后把自己要显示的内容写到显示器中。424蜂鸣器的控制设计中扬声器用的是无源蜂鸣器,用来指示遥控按键后单片机是否解码成功。无源蜂鸣器的声音往往大于有源蜂鸣器,所以本设计选用了无源蜂鸣器。无源蜂鸣器和有源蜂鸣器程序上控制的区别在于有源蜂鸣器给正5V电压即可发出声音。而无源蜂鸣器必须有震荡,所以要发送高频脉冲。为了方便,设计中直接用延时函数并且0与1不停的连续发送。425模块中的通信依前面所述,各模块都可以单独工作,但是要称为一个整体,就必须找到一个模块之间通信的方法。本设计用的是控制变量的方式来协调各模块的工作。当遥控器发出命令后,TL1838接收并传送到单片机中,单片机接收并解码,判断所发出命令。设置一个变量NUM,不同的遥控器按键给NUM不同的数值。通过这个NUM的数值,传递给步进电机和显示屏。在步进电机和显示屏中都用条件语句,来判断NUM的值并响应不同的动作。程序运行初始化以后即进入WHILE循环中,这是一个死循环。死循环的作用是等待,等待定时器1的中断,等待外部中断0的中断。其中设置定时器1的中断优先级高于外部中断0。把解码程序放入外部中断0中,驱动电机的程序放入定时器1中断中,再通过对变量的赋值的判断,即可完成整个设计的不同模块之间的通信。5编程与下载软件单片机的正常运行需要程序的支持,一般使用汇编语言或C语言的编程,编译链接成HEX文件并下载到单片机中。KEIL软件为用户提供了程序编辑、编译、链接、调试等功能,为用户提供一套完整的程序开发环境。但是KEIL生成的HEX文件必须依靠STCISP软件才能下载到STC89C52中。下面介绍KEIL和STCISP的特点及使用方法。51KEIL软件随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,KEIL软件是目前最流行开发MCS51系列单片机的软件。KEIL提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(UVISION)将这些部份组合在一起。运行KEIL软件需要PENTIUM或以上的CPU,16MB或更多RAM、20M以上空闲的硬盘空间、WIN98、NT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-湖北-湖北热处理工四级(中级工)历年参考题库典型考点含答案解析
- 2025年消费与零售行业食品行业行业热点追踪报告
- 新零售时代实体书店如何打造线上线下无缝对接策略研究报告
- 2025年事业单位工勤技能-湖北-湖北保健按摩师三级(高级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-河南-河南热力运行工三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-河南-河南园林绿化工四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-河北-河北计算机操作员二级(技师)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-河北-河北城管监察员五级(初级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-江西-江西林木种苗工五级(初级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-江苏-江苏殡葬服务工四级(中级工)历年参考题库含答案解析
- 2025年内江市总工会公开招聘工会社会工作者(14人)笔试模拟试题及答案解析
- 2025云南辅警笔试题目及答案
- 2025四川内江市总工会招聘工会社会工作者14人笔试备考试题及答案解析
- 2025年三支扶陕西试题及答案
- NB-T 10316-2019 风电场动态无功补偿装置并网性能测试规范
- JJF(纺织)010-2012纱线捻度仪校准规范
- GB/T 16288-2008塑料制品的标志
- GB/T 14486-2008塑料模塑件尺寸公差
- 第三单元名著导读《朝花夕拾-二十四孝图》课件(15张PPT) 部编版语文七年级上册
- 口部运动功能评估分级标准
- 《汉服发展史》PPT课件
评论
0/150
提交评论