电气化毕业论文:基于单片机的步进电机控制系统设计_第1页
电气化毕业论文:基于单片机的步进电机控制系统设计_第2页
电气化毕业论文:基于单片机的步进电机控制系统设计_第3页
电气化毕业论文:基于单片机的步进电机控制系统设计_第4页
电气化毕业论文:基于单片机的步进电机控制系统设计_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于单片机的步进电机控制系统设计作者姓名付有超专业名称自动化指导教师杨明摘要步进电机在近20年来,已经广泛地应用于数字控制系统中,例如数控机床,绘图机,计算机外围设备,自动记录仪表,钟表和数模转换装置等,相应其研制工作进展迅速发展,电机的性能也有较大的提高。单片机自20世纪70年代问世以来,以其极高的性能价格比,收到人们的重视和关注,应用很广,发展很快。在我国,单片机已广泛地应用在工业自动化控制,自动检测,智能仪器仪表,家用电器,电力电子,机电一体化设备等各个方面。本文通过MCSC51单片机对步进电机进行控制,主要介绍了步进电机控制系统,驱动电路和LED显示电路的设计,包括硬件系统设计和系统软件设计,来实现步进电机的控制,系统为一自动控制系统,通过按键向单片机输送控制信号,控制步进电机的转速和正反转,在步进电机控制系统的设计中,重点阐述了脉冲产生电路以及对速度的控制,该系统具有成本低,控制方便的特点。采用MCSC51单片机指令系统进行编程来实现软件部分测试,系统能实现上述功能。关键词MCSC51步进电机控制系统ABSTRACTSTEPPERMOTORINTHEPAST20YEARS,HASBEENWIDELYUSEDINDIGITALCONTROLSYSTEMS,SUCHASCNCMACHINETOOLS,PLOTTERS,COMPUTERPERIPHERALS,AUTOMATICRECORDINGINSTRUMENTS,WATCHESANDDIGITALANALOGCONVERSIONDEVICES,CORRESPONDINGPROGRESSINTHEDEVELOPMENTOFRAPIDDEVELOPMENTMOTORPERFORMANCEHASGREATLYIMPROVEDSCM70SINCETHEADVENTOFTHE20THCENTURY,WITHITSHIGHPERFORMANCEANDLOWCOST,RECEIVEPEOPLESATTENTIONANDCONCERN,ISWIDELYUSEDANDFASTDEVELOPMENTINCHINA,THESCMHASBEENWIDELYUSEDININDUSTRIALAUTOMATIONANDCONTROL,AUTOMATICDETECTION,INTELLIGENTINSTRUMENTSANDMETERS,HOUSEHOLDAPPLIANCES,POWERELECTRONICS,ELECTROMECHANICALINTEGRATIONEQUIPMENTANDOTHERASPECTSINTHISPAPER,MCS51MICROCONTROLLERTOCONTROLTHESTEPPERMOTOR,STEPPERMOTORCONTROLAREINTRODUCEDSYSTEM,DRIVECIRCUITANDLEDDISPLAYCIRCUITDESIGN,INCLUDINGHARDWARE,SYSTEMDESIGNANDSYSTEMSOFTWAREDESIGN,TOACHIEVETHESTEPPERMOTORCONTROLSYSTEMANAUTOMATICCONTROLSYSTEM,KEYTOTHEMICROCONTROLLERTHROUGHTHEDELIVERYCONTROLSIGNALTOCONTROLTHESTEPPERMOTORSPEEDANDREVERSING,THESTEPPERMOTORCONTROLSYSTEMDESIGN,FOCUSESONTHEPULSEGENERATORCIRCUITANDTHESPEEDCONTROL,THESYSTEMISLOWCOSTANDCONVENIENTCONTROLFEATURESWITHMCSC51MICROCONTROLLERINSTRUCTIONTOIMPLEMENTSOFTWAREPROGRAMMINGSOMEOFTHETEST,THESYSTEMCANACHIEVETHESEFUNCTIONSKEYWORDSMCS51,STEPPINGMOTOR,CONTROLSYSTEM目录摘要IABSTRACTII目录III前言11绪论211步进电机的发展概况及现状212单片机的发展概况及现状213本课论文的意义及内容32步进电机概述421步进电机简介422步进电机分类423步进电机工作原理5231基本原理6232转速控制原理6233步进电机加减速控制724步进电机的换向控制925步进电机的位置控制1026步进电机的驱动系统113单片机概述1231单片机简介1232单片机的硬件结构1333MCS51单片机的引脚及其功能1434MCS51存储器16341MCS51内部数据存储器16342对8051扩展的外部程序存储器1835MCS51存储器204控制系统2241步进电机接线及驱动电路模块2242数码显示23421数码线线路选用23422数码管现实电路设计23423按键电路设计245系统设计2551设计框图2553程序流程图2654程序代码26总结31致谢33参考文献34前言步进电机最早是在20世纪20年代由英国人开发的,50年代后期晶体管的发明也逐渐应用于步进电机上,对于数字化的控制变得更为容易。往后经过不断改良,使得今日步进电机已广泛应用在需要高精度,高分辨能力,高响应性,信赖性等灵活控制性高的机械系统中。在生产过程中要求自动化,省人力,效率高的机器中,都有步进电机的踪迹,尤其以重视速度,位置控制,需要精确操作各项指令动作灵活控制场合步进电机用得最多。步进电机是一种通过电脉冲信号控制相绕组电流实现定角转动的机电元件,与其他类型电机相比具有易于开环精确控制、无积累误差等优点,在众多领域中获得了广泛的应用。为了得到性能优良的控制结果,出现了很多步进电机控制系统,其中采用单片机作为控制核心的控制系统得到了广泛的应用。很多这种控制系统在步进电机的驱动上已经做的非常好,比如细分驱动技术。随着集成电路技术的发展,单片微型计算机的功能也不断增强,许多高性能的新型机种不断涌现出来。单片机以其功能强、体积小、可靠性高、造价低和开发周期短等优点,成为自动化和各个测控领域中广泛应用的器件,在工业生产中成为必不可少的器件,尤其是在日常生活中发挥的作用也越来越大。此次毕业实习、毕业设计第一阶段的主要工作是,学习有关单片机控制步进电机系统的基本知识,了解单片机控制步进电机系统的相关技术,并在此基础上选择了使用8051单片机作为核心设计,并学习74LS164模拟电子技术等方面的知识。这是课题研究的基础性内容。第二阶段是在指导教师的指导下,设计出具体的电路,并确定满足具体技术指标的软件,掌握电路中重要器件的使用方法,以及编写单片机的步进电机控制系统程序,延时子程序。通过教师的悉心指导和自己的努力,完成了毕业设计的各项任务,成功完成单片机控制步进电机系统的设计。1绪论11步进电机的发展概况及现状步进电机最早是在1920年代由英国人所开发。1950年代后期晶体管的发明也逐渐应用在步进电机上,对于数字化的控制变得更为容易。往后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解能、高响应性、信赖性等灵活控制性高的机械系统中。在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。步进电机有多种不同的结构形式。经过近七十年的发展,逐渐形成以混合式与磁阻式为主的产品格局。混合式步进电机最初是作为一种低速永磁同步电机设计的,是工业应用最为广泛的步进电机品种。步进电机在工业自动化装备,办公自动化设备中有这广泛的应用,近年来,控制技术,计算机技术及微电子技术的迅速发展,有力地推动了步进电机控制技术的进步,提高了步进电机的高性能伺服控制的设计方法与具体实现技术,反映了步进电机伺服控制技术的最新发展。12单片机的发展概况及现状单片微计算机自20世纪70年代问世以来,已对人类社会产生了巨大的影响。尤其是美国INTEL公司生产的MCS51单片机基本内核为核心的各种扩展型,增强型的新型单片机不断推出,所以在今后若干年内,MCS51系列以及世界其他各大公司生产的与其兼容的各种增强型,扩展型的单片机。仍是我国单片机应用领域的主流机型。目前在工业控制,智能仪器仪表,办公室自动化,家用电器等诸多领域,到处都可见单片机的踪影,单片机技术开发应用水平已成为一个国家工业化发展水平的标志之一。13本课论文的意义及内容现在步进电机已被广泛使用,但步进电机不能像直流电机,交流电机在常规下使用,它必须有双环型脉冲信号,功率驱动电路等组成控制系统方可使用。因此,设计步进电机具有现实意义和实用价值。本论文主要研究步进电机的启停,以及基于单片机的步进电机速度,方向,和加减速的控制,位置控制等方案。利用单片机能实现工业自动化,提高生产效率,安全,以及降低劳动强度。2步进电机概述21步进电机简介步进电机是一种感应电机,它的工作原理是利用电子电路,将直流电变成分时供电的,多相时序控制电流,用这种电流为步进电机供电,步进电机才能正常工作,驱动器就是为步进电机分时供电的,多相时序控制器。虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。22步进电机分类步进电机的形式很多其分类方式也很多,常见的分类方式是按产生力矩的原理,按输出力矩的大小以及定子和转子的数量分类等。根据不同的分类方式,可将步进电机分为多种类型。见表21所示。表21步进电机的分类分类型式具体类型按力矩产生的原理反应式转子无绕组,由被励磁的定子绕组产生反应力矩实现步进运行。励磁式定、转子均有励磁绕组或转子用永久磁钢制成由电磁力矩实现步进运行。按输出力矩的大小伺服式输出力矩在几百几KNCM,只能驱动较小的负载,要与液压扭矩放大器配用,才能驱动大负载。功率式输出力矩在550NM以上,可以直接驱动大负载。按定转子数1单定子式;2双定子式;3三定子式;4多定子式。按各相绕组分布径向分相式电机各相按圆周依次排列轴向分相式电机各相按轴向依次排列目前,我国使用的步进电机主要是反应式步进电机。如图21所示,这是一台典型的三相反应式步进电机。它的定子和转子是用硅钢片和其他软磁材料制成的。定子上共有六个磁极,每个磁极上都有许多小齿。在径向相对的两个磁极上的线圈串联起来组成一相绕组,沿周围也有许多小齿。根据工作要求,定子磁极上的小齿的齿距与转子磁极上的小齿必须相等,而且转子上齿数有一定的限制。图21三相反应式步进电机的结构23步进电机工作原理现在比较常用的步进电机包括反应式步进电机(VR)、永磁式步进电机(PM)、混合式步进电机(HB)和单相式步进电机等。1永磁式步进电机永磁式步进电机一般为两相,转矩和体积较小,步进角一般为75度或15度;永磁式步进电动机输出力矩大,动态性能好,但步距角大。2反应式步进电机反应式步进电机一般为三相,可实现大转矩输出,步进角一般为15度,但噪声和振动都很大。反应式步进电机的转子磁路由软磁材料制成,定子上有多相励磁绕组,利用磁导的变化产生转矩。反应式步进电动机结构简单,生产成本低,步距角小;但动态性能差。3混合式步进电机混合式步进电动机综合了反应式、永磁式步进电动机两者的优点,它的步距角小,出力大,动态性能好,是目前性能最高的步进电动机。它有时也称作永磁感应子式步进电动机。这种步进电机的应用最为广泛。231基本原理通常电机的转子为永磁体,当电流流过定子绕组时,定子绕组产生一矢量磁场。该磁场会带动转子旋转一角度,使得转子的一对磁场方向与定子的磁场方向一致。当定子的矢量磁场旋转一个角度。转子也随着该磁场转一个角度。每输入一个电脉冲,电动机转动一个角度前进一步。它输出的角位移与输入的脉冲数成正比、转速与脉冲频率成正比。改变绕组通电的顺序,电机就会反转。所以可用控制脉冲数量、频率及电动机各相绕组的通电顺序来控制步进电机的转动。232转速控制原理电机每转动1圈需要脉冲数为,则每转一圈要360/1524N240个脉冲,若要求25转/分,则每秒要产生脉冲数为125/4为此我们得出转速与每秒产生的脉冲个数关系为/60NV式中V为要控制的速度,N为所需脉冲个数。有了上述关系我们就不难推出定时时间与速度之间的关系1/4T若定时器控制位TMOD01H,那么定时器的计数初值与转速之间的关系为26/12XVFOC式中FOC为晶振频率。为此我们可以得出步进电机转速与定时器定时常数关系,见下表(表22示)表22步进电机转速与定时器定器初值设定表步进电机转速与定时器定时常数关系速度定时时间USTH1值TH2值2510000D8F0269615DA71279259DBD5288928DD1F298620DE54308333DF73318064E080为此我们只要将定时器的初值写入表格,利用查表程序就可以完成电机速度的控制。233步进电机加减速控制速度控制的加、减控制是最基本的控制。电机由静止达到设定的最大速度所需要的时间是由调试决定的,加速度太大,电机甚至不能克服惯量性而失步,加速度太少,则完成指令的运动耗费时间太多。SSSSTF图21线性加减速控制曲线加速度有两种方案线性加/减速度控制和等步距加/减速度控制。前者规定从加速度开始,每一加速度周期指令电机速度递增相同增量F;后者则是要求每一加速度周期电机走过相同的步数。等步距加/减速度控制的优点,在于加/减过程中电机走的步数可以非常精确的计算,这一点对于加/减的位置控制非常重要,但从电机要克服惯性力来看,线性加速度方案好些,调试也方便。线性加/减控制曲线如图22;其中F可以用公式求出21/FFN其中N为加速过程的台阶数,减速控制也类似,只是F为负值。步进电机的最高启动频率(突跳频率)一般为01KHZ到34KHZ,而醉倒运行频率则可以达到N102KHZ以超过最到启动频率的频率直接启动,将出现“失步”现象。甚至无法启动,较为理想的启动曲线,应是按指数启动。但实际应用对启动段的处理可采用直线拟合的方法。即“阶梯升速法”。可按两种情况处理1已知突跳频率则按突跳频率分段启动,分段数为NF/FQ。2位置突跳频率则按拟合至给定的启动频率,每段频率的递增量(后称阶梯频率),即采用8段拟合。/F在运行控制过程中,将起始的速度(频率)分为N分座位阶梯频率,采用“阶梯升速法”将速度连续升到所需要的速度,然后锁定,按预置的曲线运行,如图22所示;TF放大器的启动过程启动频率F2F1F图22阶梯升速法用单片机实现步进电机的加/减速控制,实际上是控制发脉冲的频率,升速时,使脉冲频率增高,减速时相反。如果使用定时中断来控制电机的速度,加减速控制就是不断改变定时器的初值。速度从V1V2,如果是线性加速度,则按给定的斜率升/降速;如果是突变,则按“阶梯升速法”处理。在此过程中要处理好两个问题。1速度转换时间应尽量短为了缩短速度转换的时间,可以采用建立数据表的方法。结合各曲线段的频率和各段间的阶梯频率便可以建立一个连续的数据表,并通过转换程序将其转换为定时初值的计算是在定时中断外实现的,并不占用中断时间,保证电机的高速运行。2保证控制速度的精确性要从一个速度准确达到另外一个速度,就要建立一个校验机制,以防超过或未达到所需速度。24步进电机的换向控制一般步进电机来说,驱动器的输入共用3路,它们是步进脉冲信号CP,方向电平DIR,脱机信号PREE它们在驱动器内容分别通过内部分别通过限流电阻接入光耦的负输入端,且电路形式完全相同。在这三路输入信号的共同的控制下,驱动器一般有一个接入端0PT0,该端口为三路信号的公共端,三路输入信号在驱动器内部竭诚共阳方式,所以OPTO端须接外部系统的VCC,并在需要的情况下加限流电阻R,保证驱动器内部光耦提供合适的电流。1步进脉冲信号CP步进脉冲信号CP用于控制步进电机的位置与速度,也就是说;驱动器每接受一个CP脉冲就驱动步进电机一个旋转的步距角,CP脉冲的频率改变则会使步进电机的转速改变,控制CP脉冲的个数,则可以使步进电机精确定位。2方向电平DIR方向电平信号DIR用于控制步进电机的旋转方向,此端为高电平时,电机一个转向,此端为低电平时,电机转向另一个方向,电机转向必须在电机停机或者降到某一值后进行,并且换向信号一定要在前一个方向的最后一个CP脉冲结束以及下一个方向的第一个脉冲前发出。3脱机电平信号PREE当驱动器上电平后,步进电机处于锁定状态(未施加CP脉冲时)或则运行状态(施加CP脉冲时),但当用户想手动调整电机而不想关闭驱动器电源,这时就可以用到此信号,当此信号起到作用时(低电平有效)。电机处于自由无力矩状态,当此信号为高电平时或悬空不接时,取消脱机状态,此信号用户可选用,如果不需要此功能,此端不接即可。步进电机换向时,一定要在电机降速停止或降到突跳范围之内再换向,以免产生较大的冲击而损坏电机,换向信号一定要在前一个方向的最后一个CP脉冲结束后以及下一个方向的第一个CP脉冲前发出。如图23所示。对于CP脉冲的设计主要要求具有一定的脉冲宽度(一般不小于5US)、脉冲序列的均匀度及高低电平方式,在某一高速下的正、反向切换实质包含了降速换向升速三个过程。脉冲CP方向DIR前DIR的最后一个CP脉冲下DIR的第一个CP脉冲此时DIR的转向图23升降速换向三个过程25步进电机的位置控制步进电机不需要位置传感器,就可依照输入的脉冲数决定移动量,并将负载顺利、正确地送达指定位置点上。移动量的大小,是依照电机分辨率的大小与输入的脉冲数决定的,脉冲数与位移量间的关系如下位置移动量步进电机分分辨率输入脉冲数步进电机的位置控制是指要求电机从当前位置转过一个给定的步数,电机不丢失这一控制的实际,就是要求精确地发出定量的步进脉冲,例如,机器人再现工作时的启动信号后,要走到示教时给出的初始作业位置,就是用到位置控制,不过不带加/减速控制,位置控制很容易实现的。将发给电机的脉冲,用计数器通道计数,到最后通过CPU停发脉冲就是了,但是这种不带加/减速控制的位置控制,除非速度特别低,否则会在起停时造成器械冲击、失步。图24示出了参加加减速控制的速度曲线,此曲线,跟T轴间包含的面积正比于电机走过的步数S,显然,电机走过的总步数S由三部分构成加速阶段电机走的步数向阶梯段电机走过的步数和减速阶段电机走的步数。TFSABAF2SAF0图24加减速控制速度曲线26步进电机的驱动系统步进电机在仅给予电压时,电机是不会动作的,必须透过脉冲产生器提供位置(脉波数)、速度的脉冲信号指令,以及驱动器电流流过电机内线圈,依顺序切换激励磁相序的方式才能让电机运转。所以,欲使步进电机动作的必要系统组成如下1脉冲产生器产生角度(位置移动量)、动作速度及运转方向等脉冲信号的电机驱动指令。2步进驱动器依控制器所投入的脉冲信号指令提供电流,驱动步进电机动作。3步进电机提供转矩动力输出来带动负载。3单片机概述31单片机简介单片机MCU是指一个集成在一块芯片上的完整计算机系统。尽管它的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器、实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机也被称为微控制器,由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。单片机是70年代中期发展起来的一种大规模集成电路芯片,是CPU、RAM、ROM、I/O接口和中断系统集成于同一硅片的器件。单片机用于控制有利于实现系统控制的最小化和单片化,简化一些专用接口电路,如编程计数器、锁相环PLL、模拟开关、A/D和D/A变换器、电压比较器等组成的专用控制处理功能的单板式微系统。单片机是所有微处理机中性价比最高的一种,随着种类的不断全面,功能不断完善,其应用领域也迅速扩大。单片机在智能仪表、实时控制、机电一体化、办公机械、家用电器等方面都有相当的应用领域。当前,8位单片机主要用于工业控制,如温度、压力、流量、计量和机械加工的测量和控制场合;高效能的16位单片机如MCS96、MK68200可用在更复杂的计算机网络。可以说,微机测控技术的应用已渗透到国民经济的各个部门,微机测控技术的应用是产品提高档次和推陈出新的有效途径。32单片机的硬件结构当今时代,单片机使用最为广泛为MCS51单片机。即8051单片机,其基本组成参见图31中央处理器、程序存储器ROM、数据存储器RAM、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。1中央处理器CPU中央处理器是单片机的核心,完成运算和控制功能。中央处理器CPU是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。2内部数据存储器内部RAMCPU时钟电路P0P3P2P1TXDRXDINT0INT1并行接口串行接口中断系统定时/计数器RAMROMT0T1图31MCS51单片机结构框图8051芯片中共有256个RAM单元,但其中后128单元被专用寄存器占用,能作为寄存器供用户使用的只是前128单元,用于存放可读写的数据,简称内部RAM。3程序存储器ROM8051内部自带程序存储器,用于存放程序、原始数据或表格,不需外接程序存储器。4定时/计数器8051共有两个16位的定时/计数器,以实现定时或计数功能,并以其定时或计数结果对计算机进行控制。5并行I/O口MCS51共有4个8位的I/O口P0、P1、P2、P3,以实现外部数据的并行输入/输出。在实训中我们已经使用了P1口,通过P1口连接8个发光二极管。6串行口MCS51单片机有一个全双工的串行口,以实现单片机和其它设备之间的串行数据传送。该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为同步移位器使用。7中断控制系统MCS51单片机的中断功能较强,以满足控制应用的需要。8051共有5个中断源,即外中断两个,定时/计数中断两个,串行中断一个。全部中断分为高级和低级共两个优先级别。8时钟电路MCS51芯片的内部有时钟电路,但石英晶体和微调电容需外接。时钟电路为单片机产生时钟脉冲序列。系统允许的晶振频率一般为6MHZ和12MHZ。从上述内容可以看出,MCS51虽然是一个单片机芯片,但作为计算机应该具有的基本部件它都包括,因此,实际上它已是一个简单的微型计算机系统了。33MCS51单片机的引脚及其功能MCS51是标准的40引脚双列直插式集成电路芯片,引脚排列请参见图32。1信号引脚介绍MCS51系列单片机中的8031、8051及8751均采用40PIN封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。输入输出I/O引脚P00P07P0口8位双向口线。P10P17P1口8位双向口线。P20P27P2口8位双向口线。P30P37P3口8位双向口线。P101P112P123P134P145P156P167P178RST/VPD9RXD/P3010TXD/P3111INT0/P3212INT1/P3313T0/P3414T1/P3515WR/P3616RD/P3717XTAL218XTAL119VSS20P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/PROG30EA/VPP31P0732P0633P0534P0435P0336P0237P0138P0039VCC40MCS51图32单片机的引脚ALE地址锁存控制信号。在系统扩展时,ALE用于控制把P0口输出的低8位地址锁存起来,以实现低位地址和数据的隔离。外部程序存储器读选通信号。在读外部ROM时,有效PSEN低电平,以实现外部ROM单元的读操作。访问程序存储控制信号。当信号为低电平时,对ROM的读A操作限定在外部程序存储器;当信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。RST复位信号。当输入的复位信号延续两个机器周期以上的高电平时即为有效,用以完成单片机的复位初始化操作。VSS地线,VCC5V电源。2信号引脚的第二功脚由于工艺及标准化等原因,芯片的引脚数目是有限制的。但单片机为实现其功能所需要的信号数目却远远超过此数,因此就出现了需要与可能的矛盾,给一些信号引脚赋以双重功能。除了第一功能,则根据需要再定义它的第二功能。下面介绍一些信号引脚的第二功能。1P3口线的第二功能P3的8条口线都定义有第二功能,详见表31。2EPROM存储器程序固化所需要的信号。有内部EPROM的单片机芯片例如8751,为写入程序需提供专门的编程脉冲和编程电源,这些信号也是由信号引脚以第二功能的形式提供的,即编程脉冲30脚ALE/ERROR编程电压25V31脚ERROR/VPP表31P3口各引脚与第二功能表引脚端口第二功能P30RXD串行数据接收P31TXD串行数据发送P32外部中断0申请P33外部中断1申请P34T0定时/计数器0的外部输入P35T1定时/计数器1的外部输入P36外部RAM写选通P37外部RAM读选通34MCS51存储器341MCS51内部数据存储器MCS51单片机的芯片内部有RAM和ROM两类存储器,即所谓的内部RAM和内部ROM,首先分析内部RAM。1内部数据存储器低128个单元8051的内部RAM共有256个单元,通常把这256个单元按其功能划分为两部分低128单元单元地址00H7FH和高128单元地址80H单元地址80HFFH。低128单元的配置图如表32所示表32片内RAM的配置30H7FH数据缓冲区20H2FH位寻址区00H7FH18H1FH工作寄存器3区R7R010H17H工作寄存器2区R7R008H0FH工作寄存器1区R7R000H07H工作寄存器0区R7R0低128单元是单片机的真正RAM存储器,按其用途划分为寄存器区、位寻址区和用户RAM区三个区域。1寄存器区8051共有4组寄存器,每组8个寄存单元各为8,各组都以R0R7作寄存单元编号,占据内部RAM的00H1FH单元地址。2位寻址区内部RAM的20H2FH单元,既可作为一般RAM单元使用,对单元中每一位进行位操作,因此称之为位寻址区。位寻址区共有16个RAM单元,计128位,地址为00H7FH。3用户RAM区在内部RAM低128单元中,通用寄存器占去32个单元,位寻址区占去16个单元,剩下80个单元,这就是供用户使用的RAM区,其单元地址为30H7FH。2内部数据存储器高128单元内部RAM的高128单元是供给专用寄存器使用的,其单元地址为80HFFH。因这些寄存器的功能已作专门规定,故称之为专用寄存器SPECIALFUNCTIONREGISTER,也可称为特殊功能寄存器。1专用寄存器SFR简介8051共有21个专用寄存器,现把其中部分寄存器简单介绍如下1程序计数器PCPROGRAMCOUNTER。PC是一个16位的计数器,自动加1功能,用来控制程序的执行顺序;PC没有地址,是不可寻址的,用户无法对它进行读写,但可以通过转移、调用、返回等指令改变其内容,以实现程序的转移。2累加器ACCACCUMULATOR。累加器为8位寄存器,是最常用的专用寄存器,功能较多,地位重要。它既可用于存放操作数,也可用来存放运算的中间结果。3B寄存器。B寄存器是一个8位寄存器,主要用于乘除运算。乘法运算时,B存乘数。乘法操作后,乘积的高8位存于B中,除法运算时,B存除数。除法操作后,余数存于B中。4程序状态字PSWPROGRAMSTATUSWORD。程序状态字是一个8位寄存器,用于存放程序运行中的各种状态信息。PSW各位定义如下表33PSW的位地址定义PSW位地址D7HD6HD5HD4HD3HD2HD1HD0H字节址D0HCYACF0RS1RS0OVF1P除PSW1位保留未用外,其余各位的定义及使用如下CYPSW7进位标志位。CY是PSW中最常用的标志位,其功能是存放算术运算的进位标志,进行加或减运算。ACPSW6辅助进位标志位。用户标志位RS1和RS0PSW4,PSW3寄存器组选择位。它们被用于选择CPU当前使用的通用寄存器组共有4组。单片机上电或复位后,RS1RS000。OVPSW2溢出标志位。5数据指针DPTR。数据指针为16位寄存器。编程时,DPTR既可以按16位寄存器使用,也可以按两个8位寄存器分开使用。6堆栈指针SPSTACKPOINTER。堆栈是一个特殊的存储区,用来暂存数据和地址,它是按先进后出的原则存取数据的。2专用寄存器中的字节寻址和位地址MCS51系列单片机有21个可寻址的专用寄存器,其中有11个专用寄存器是可以位寻址的。对此问题作如下说明121个可字节寻址的专用寄存器是不连续地分散在内部RAM高128单元之中,尽管还余有许多空闲地址,但用户并不能使用。2程序计数器PC不占据RAM单元,它在物理上是独立的,因此是不可寻址的寄存器。3对专用寄存器只能使用直接寻址方式,书写时既可使用寄存器符号,也可使用寄存器。342对8051扩展的外部程序存储器2732是一种4KX8位紫外线擦除电可编程只读存储器,数据存储器空间地址为0000H0FFFH,片外最多可扩至64KBROM/EPROM,其地址为1000HFFFFH,可以从0000H开始编址。2732管脚排列如图下所示。D0921A876354OE/VPCGNCRMKX图332732管脚排列其中A0A1112位地址线,可寻址4K字节;D0D78位数据线;CE片选信号;OE输出允许信号;VPP编程电源;VCC电源5V;GND地。需要说明的是1计算机的工作是按照事先编制好的程序命令条条循序执行的,程序存储器就是用来存放这些已编好的程序和表格常数,它由只读存储器ROM或EPROM组成。2单片机使用程序计数器PCPROGRAMCOUNTER作为程序存储器的地址指针,且PC总是指向将要执行的下一条指令所在的程序存储器单元地址。3实际应用时,程序存储器的容量分别是0000H单元是系统的起始地址,0003H、000BH、0013H、001BH和0023H对应5种中断源的中断服务入口地址。程序存储器中的复位和中断源共6个固定的入口地址见表24。表34MCS51单片机复位、中断入口地址操作入口地址复位0000H外部中断ERROR0003H定时器/计数器0溢出000BH外部中断ERROR0013H定时器/计数器1溢出001BH串行口中断0023H定时器/计数器2溢出或T2EX端负跳变002BH35MCS51存储器时序是用定时单位来说明的。MCS51的时序定时单位共有4个,从小到大依次是节拍、状态、机器周期和指令周期。下面分别加以说明。1节拍与状态把振荡脉冲的周期定义为节拍用P表示。振荡脉冲经过二分频后,就是单片机的时钟信号的周期,其定义为状态用S表示。这样,一个状态就包含两个节拍,具前半周期对应的拍节叫节拍1P1,后半周期对应的节拍叫节拍2P2。2机器周期MCS51采用定时控制方式,因此它有固定的机器周期。规定一个机器周期的宽度为6个状态,并依次表示为S1S6。3指令周期指令周期是最大的时序定时单位,执行一条指令所需要的时间称为指令周期。它一般由若干个机器周期组成。单片机执行任何一条指令时都可以分为取指令阶段和执行指令阶段。MCS51的取指/执行时序1单字节单周期指令;2双字节单周期指令;3单字节双周期指令;由图24可示,ALE引脚上出现的信号是周期性的,在每个机器周期内出现两次高电平。第一次出现在S1P2和S2P1期间,第二次出现在S4P2和S5P1期间。ABCS1S2S3S4S5S6S1S2S3S4S5S6读操作码读操作码无效读操作码T时钟S1S2S3S4S5S6读操作码无效读下一条指令S1S2S3S4S5S6读下一条指令读操作码读第二字节ALE图34MCS51单片机的取指/执行时序图34A、B所示分别给出了单字节单周期和双字节单周期指令的时序。单周期指令的执行始于S1P2,这时操作码被锁存到指令寄存器内。图34C给出了单字节双周期指令的时序,两个机器周期内进行4次读操作码操作,其为单字节指令,后三次读操作都是无效的4控制系统41步进电机接线及驱动电路模块下图是步进电机驱动接线图,其中A,A,B,B,接在步进电机,CW,CW接单片机。输入电源1840VAABB连接电机CP阳端CP步进脉冲CW阳端CW电平脉冲DC3300UF接两相混合式步进电机控制系统或控制器WZM驱动器电源其驱动器连接整流桥图41电机接线及其驱动42数码显示421数码线线路选用方案一串行接法设计中显示2位数字,用74LS164作为显示驱动,其中带锁存,使用串行接法可以节约IO资源,发送数据时容易控制。方案二并行接法使用并行接法时要对美国数码管用IO口单独输入数据,占用资源较多。由于设计中用一块单片机进行控制,资源有限,选择了方案一,另外,使用锁存也起到节约资源的作用。422数码管现实电路设计P10/TEX345678RS9XDINWALVCUBFGEDCBAPYFYMKQG图42数码管显示电路数码管的现实驱动使用74LS164,通过SPCE061A的IOBO口对DATA和CLK发送数据。423按键电路设计键盘主要用来提供人机接口,在本设计中,使用了标准的1X4键盘,键盘的设计图如图43所示P10/T2EX345678RS9XDINWALVCUBPFAYK图43按键电路5系统设计51设计框图以下是本控制系统的设计框图键盘单片机74LS164WZM2H042M数码管步进电机图51设计框图52设计总电路图以下是本控制系统的总电路图P/TEX38R9XDINAVCUBFGEDCBAPYFYKQG图52设计电路图53程序流程图以下是本控制系统的程序流程框图图53主程序初始化有按键按下否S2按下S1按下S3按下S4按下启动停止加速减速S5按下S6按下正转反转Y程序开始程序结束S2键按下YNN程序流程图54程序代码MISPEEDEQU25;初始速度MASPEEDEQU100;最大速度ORG000BH;定时器T0的中断入口地址JMPT0INT;间接跳转指令ORG001BHJMPT1INTORG0030HAJMPMAIN;无条件转移指令ORG0060HAJMPXIANSHIORG0100HAJMPANJIANMAINMOVR1,MISPEED;起始转动速度送入计数器MOVP2,0000011B;停转状态MOVTMOD,00000010B;工作在方式0SETBEA;CPU开中断SETBET0;允许T0中断SETBTR0;启动T0中断ACALLANJAN;调用按键子程序ACALLXIANSHI;调用显示子程序ANJANJBP10,QIDONG;电机启动,JBP12,TINGZHI;电机停转,返回主程序JBP13,JIASU;电机加速JBP14,JIANSU;电机减速JBP15,ZHENGZHUAN;调用正转子程序JBP16,FANZHUAN;调用反转子程序JNBP12,ANJIANRETQIDONGMOVP2,00000001BMOVP17,0BRETXIANSHIDIRSETBP31MOVR7,02H;寄存器寻址MOVR0,7FH;7FH7EH为显示数据缓冲区DL0MOVA,R0ADDA,0DHMOVCA,APCMOVSBUF,ADL1JNBT1,DL1;查询T1状态,1B的段码输出CLRTI;完否DECR0DJNZR7,DL0CLRP31SEGTABDB0C0H,0F9H,0A4H,0B0H,99HDB92H,82H,0F8H,80H,90HRETZHENGZHUANMOVR2,00000110BMOVP2,R2CALLDELAY;调用延时程序RETFANZHUANCALLDELAY;调用延时程序MOVR2,00000011BMOVP2,R2;给P0口装入A值RETJIASUCJNEA,MASPEED,TOPMOVR1,AINCR1MOVAR1TOP1CALLDELAYRETJIANSUCJNEA,MASPEED,TOPMOVR1,ADECR1MOVAR1CALLDELAYTOP2RETDELAYMOVSP,60HMOVTMOD,01HPUSHACCPUSHPSWACALLPT0M0HEREAJMPHEREPT0M0MOVA,SPEEDSUBBA,MINSEED;减基准数MOVDPTR,DHTABMOVA,ADPTRMOVTH0,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论