电气化毕业论文:基于单片机的步进电机控制系统设计

上传人:无*** 文档编号:149058505 上传时间:2022-09-06 格式:DOC 页数:39 大小:916KB
返回 下载 相关 举报
电气化毕业论文:基于单片机的步进电机控制系统设计_第1页
第1页 / 共39页
电气化毕业论文:基于单片机的步进电机控制系统设计_第2页
第2页 / 共39页
电气化毕业论文:基于单片机的步进电机控制系统设计_第3页
第3页 / 共39页
点击查看更多>>
资源描述
成都理工大学工程技术学院毕业论文基于单片机的步进电机控制系统设计作者姓名:付有超专业名称:自动化指导教师:杨明- 34 -基于单片机的步进电机控制系统设计摘要步进电机在近20年来,已经广泛地应用于数字控制系统中,例如数控机床,绘图机,计算机外围设备,自动记录仪表,钟表和数模转换装置等,相应其研制工作进展迅速发展,电机的性能也有较大的提高。单片机自20世纪70年代问世以来,以其极高的性能价格比,收到人们的重视和关注,应用很广,发展很快。在我国,单片机已广泛地应用在工业自动化控制,自动检测,智能仪器仪表,家用电器,电力电子,机电一体化设备等各个方面。本文通过MCS-C51单片机对步进电机进行控制,主要介绍了步进电机控制系统,驱动电路和LED显示电路的设计,包括硬件系统设计和系统软件设计,来实现步进电机的控制,系统为一自动控制系统,通过按键向单片机输送控制信号,控制步进电机的转速和正反转,在步进电机控制系统的设计中,重点阐述了脉冲产生电路以及对速度的控制,该系统具有成本低,控制方便的特点。采用MCS-C51单片机指令系统进行编程来实现软件部分测试,系统能实现上述功能。关键词:MCS-C51 步进电机 控制系统AbstractStepper motor in the past 20 years, has been widely used in digital control systems, such as CNC machine tools, plotters, computer peripherals, automatic recording instruments, watches and digital - analog conversion devices, corresponding progress in the development of rapid development motor performance has greatly improved. SCM 70 since the advent of the 20th century, with its high performance and low cost, receive peoples attention and concern, is widely used and fast development. In China, the SCM has been widely used in industrial automation and control, automatic detection, intelligent instruments and meters, household appliances, power electronics, electromechanical integration equipment and other aspects. In this paper, MCS-51 microcontroller to control the stepper motor, stepper motor control are introduced system, drive circuit and LED display circuit design, including hardware, system design and system software design, to achieve the stepper motor control system an automatic control system, key to the microcontroller through the delivery control signal to control the stepper motor speed and reversing, the stepper motor control system design, focuses on the pulse generator circuit and the speed control, the system is low cost and convenient control features. With MCS-C51 microcontroller instruction to implement software programming some of the test, the system can achieve these functions. Keywords: MCS-51,Stepping Motor, Control system目录摘要IAbstractII目录III前言11 绪论21.1 步进电机的发展概况及现状21.2 单片机的发展概况及现状21.3 本课论文的意义及内容32步进电机概述42.1 步进电机简介42.2 步进电机分类42.3 步进电机工作原理52.3.1基本原理62.3.2转速控制原理62.3.3 步进电机加减速控制72.4 步进电机的换向控制92.5步进电机的位置控制102.6步进电机的驱动系统113 单片机概述123.1 单片机简介123.2 单片机的硬件结构133.3 MCS-51单片机的引脚及其功能143.4 MCS-51存储器163.4 .1 MCS-51内部数据存储器163.4.2 对8051扩展的外部程序存储器183.5 MCS-51存储器204控制系统224.1 步进电机接线及驱动电路模块224.2 数码显示234.2.1数码线线路选用234.2.2数码管现实电路设计234.2.3 按键电路设计245 系统设计255.1 设计框图255.3 程序流程图265.4 程序代码26总结31致谢33参考文献34前言步进电机最早是在20世纪20年代由英国人开发的,50年代后期晶体管的发明也逐渐应用于步进电机上,对于数字化的控制变得更为容易。往后经过不断改良,使得今日步进电机已广泛应用在需要高精度,高分辨能力,高响应性,信赖性等灵活控制性高的机械系统中。在生产过程中要求自动化,省人力,效率高的机器中,都有步进电机的踪迹,尤其以重视速度,位置控制,需要精确操作各项指令动作灵活控制场合步进电机用得最多。步进电机是一种通过电脉冲信号控制相绕组电流实现定角转动的机电元件,与其他类型电机相比具有易于开环精确控制、无积累误差等优点,在众多领域中获得了广泛的应用。为了得到性能优良的控制结果,出现了很多步进电机控制系统,其中采用单片机作为控制核心的控制系统得到了广泛的应用。很多这种控制系统在步进电机的驱动上已经做的非常好,比如细分驱动技术。随着集成电路技术的发展,单片微型计算机的功能也不断增强,许多高性能的新型机种不断涌现出来。单片机以其功能强、体积小、可靠性高、造价低和开发周期短等优点,成为自动化和各个测控领域中广泛应用的器件,在工业生产中成为必不可少的器件,尤其是在日常生活中发挥的作用也越来越大。此次毕业实习、毕业设计第一阶段的主要工作是,学习有关单片机控制步进电机系统的基本知识,了解单片机控制步进电机系统的相关技术,并在此基础上选择了使用8051单片机作为核心设计,并学习74LS164模拟电子技术等方面的知识。这是课题研究的基础性内容。第二阶段是在指导教师的指导下,设计出具体的电路,并确定满足具体技术指标的软件,掌握电路中重要器件的使用方法,以及编写单片机的步进电机控制系统程序,延时子程序。通过教师的悉心指导和自己的努力,完成了毕业设计的各项任务,成功完成单片机控制步进电机系统的设计。1 绪论1.1 步进电机的发展概况及现状步进电机最早是在1920年代由英国人所开发。1950年代后期晶体管的发明也逐渐应用在步进电机上,对于数字化的控制变得更为容易。往后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解能、高响应性、信赖性等灵活控制性高的机械系统中。在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。步进电机有多种不同的结构形式。经过近七十年的发展,逐渐形成以混合式与磁阻式为主的产品格局。混合式步进电机最初是作为一种低速永磁同步电机设计的,是工业应用最为广泛的步进电机品种。步进电机在工业自动化装备,办公自动化设备中有这广泛的应用,近年来,控制技术,计算机技术及微电子技术的迅速发展,有力地推动了步进电机控制技术的进步,提高了步进电机的高性能伺服控制的设计方法与具体实现技术,反映了步进电机伺服控制技术的最新发展。1.2 单片机的发展概况及现状单片微计算机自20世纪70年代问世以来,已对人类社会产生了巨大的影响。尤其是美国INTEL公司生产的MCS-51单片机基本内核为核心的各种扩展型,增强型的新型单片机不断推出,所以在今后若干年内,MCS-51系列以及世界其他各大公司生产的与其兼容的各种增强型,扩展型的单片机。仍是我国单片机应用领域的主流机型。目前在工业控制,智能仪器仪表,办公室自动化,家用电器等诸多领域,到处都可见单片机的踪影,单片机技术开发应用水平已成为一个国家工业化发展水平的标志之一。1.3 本课论文的意义及内容现在步进电机已被广泛使用,但步进电机不能像直流电机,交流电机在常规下使用,它必须有双环型脉冲信号,功率驱动电路等组成控制系统方可使用。因此,设计步进电机具有现实意义和实用价值。本论文主要研究步进电机的启停,以及基于单片机的步进电机速度,方向,和加减速的控制,位置控制等方案。利用单片机能实现工业自动化,提高生产效率,安全,以及降低劳动强度。2步进电机概述2.1 步进电机简介步进电机是一种感应电机,它的工作原理是利用电子电路,将直流电变成分时供电的,多相时序控制电流,用这种电流为步进电机供电,步进电机才能正常工作,驱动器就是为步进电机分时供电的,多相时序控制器。虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。 步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。2.2 步进电机分类步进电机的形式很多其分类方式也很多,常见的分类方式是按产生力矩的原理,按输出力矩的大小以及定子和转子的数量分类等。根据不同的分类方式,可将步进电机分为多种类型。见表2.1所示。表2.1 步进电机的分类分类型式具体类型按力矩产生的原理反应式:转子无绕组,由被励磁的定子绕组产生反应力矩实现步进运行。励磁式:定、转子均有励磁绕组(或转子用永久磁钢制成)由电磁力矩实现步进运行。按输出力矩的大小伺服式:输出力矩在几百几KN.cm,只能驱动较小的负载,要与液压扭矩放大器配用,才能驱动大负载。功率式:输出力矩在550N.m以上,可以直接驱动大负载。按定转子数(1)单定子式;(2)双定子式;(3)三定子式;(4)多定子式。按各相绕组分布径向分相式:电机各相按圆周依次排列轴向分相式:电机各相按轴向依次排列目前,我国使用的步进电机主要是反应式步进电机。如图2.1所示,这是一台典型的三相反应式步进电机。它的定子和转子是用硅钢片和其他软磁材料制成的。定子上共有六个磁极,每个磁极上都有许多小齿。在径向相对的两个磁极上的线圈串联起来组成一相绕组,沿周围也有许多小齿。根据工作要求,定子磁极上的小齿的齿距与转子磁极上的小齿必须相等,而且转子上齿数有一定的限制。图2.1 三相反应式步进电机的结构2.3 步进电机工作原理现在比较常用的步进电机包括反应式步进电机(VR)、永磁式步进电机(PM)、混合式步进电机(HB)和单相式步进电机等。1. 永磁式步进电机永磁式步进电机一般为两相,转矩和体积较小,步进角一般为7.5度 或15度; 永磁式步进电动机输出力矩大,动态性能好,但步距角大。2. 反应式步进电机反应式步进电机一般为三相,可实现大转矩输出,步进角一般为1.5度,但噪声和振动都很大。反应式步进电机的转子磁路由软磁材料制成,定子上有多相励磁绕组,利用磁导的变化产生转矩。 反应式步进电动机结构简单,生产成本低,步距角小;但动态性能差。3. 混合式步进电机混合式步进电动机综合了反应式、永磁式步进电动机两者的优点,它的步距角小,出力大,动态性能好,是目前性能最高的步进电动机。它有时也称作永磁感应子式步进电动机。这种步进电机的应用最为广泛。2.3.1基本原理通常电机的转子为永磁体,当电流流过定子绕组时,定子绕组产生一矢量磁场。该磁场会带动转子旋转一角度,使得转子的一对磁场方向与定子的磁场方向一致。当定子的矢量磁场旋转一个角度。转子也随着该磁场转一个角度。每输入一个电脉冲,电动机转动一个角度前进一步。它输出的角位移与输入的脉冲数成正比、转速与脉冲频率成正比。改变绕组通电的顺序,电机就会反转。所以可用控制脉冲数量、频率及电动机各相绕组的通电顺序来控制步进电机的转动。2.3.2转速控制原理电机每转动1圈需要脉冲数为:,则每转一圈要240个脉冲,若要求25转/分,则每秒要产生脉冲数为:为此我们得出转速与每秒产生的脉冲个数关系为:式中V为要控制的速度,N为所需脉冲个数。有了上述关系我们就不难推出定时时间与速度之间的关系:若定时器控制位TMOD=01H,那么定时器的计数初值与转速之间的关系为:式中foc为晶振频率。为此我们可以得出步进电机转速与定时器定时常数关系,见下表(表2.2示):表2.2 步进电机转速与定时器定器初值设定表步进电机转速与定时器定时常数关系速度定时时间(us)TH1值TH2值2510000D8F0269615DA71279259DBD5288928DD1F298620DE54308333DF73318064E080为此我们只要将定时器的初值写入表格,利用查表程序就可以完成电机速度的控制。2.3.3 步进电机加减速控制 速度控制的加、减控制是最基本的控制。电机由静止达到设定的最大速度所需要的时间是由调试决定的,加速度太大,电机甚至不能克服惯量性而失步,加速度太少,则完成指令的运动耗费时间太多。图2.1 线性加减速控制曲线加速度有两种方案:线性加/ 减速度控制和等步距加/减速度控制。前者规定从加速度开始,每一加速度周期指令电机速度递增相同增量f;后者则是要求每一加速度周期电机走过相同的步数。等步距加/减速度控制的优点,在于加/减过程中电机走的步数可以非常精确的计算,这一点对于加/减的位置控制非常重要,但从电机要克服惯性力来看,线性加速度方案好些,调试也方便。线性加/减控制曲线如图2.2;其中f可以用公式求出其中n为加速过程的台阶数,减速控制也类似,只是f为负值。步进电机的最高启动频率(突跳频率)一般为0.1KHZ到34KHZ,而醉倒运行频率则可以达到N102KHZ.以超过最到启动频率的频率直接启动,将出现“失步”现象。甚至无法启动,较为理想的启动曲线,应是按指数启动。但实际应用对启动段的处理可采用直线拟合的方法。即“阶梯升速法”。可按两种情况处理:1. 已知突跳频率则按突跳频率分段启动,分段数为n=f/fq。2. 位置突跳频率则按拟合至给定的启动频率,每段频率的递增量(后称阶梯频率),即采用8段拟合。在运行控制过程中,将起始的速度(频率)分为n分座位阶梯频率,采用“阶梯升速法”将速度连续升到所需要的速度,然后锁定,按预置的曲线运行,如图2.2所示;图2.2 阶梯升速法用单片机实现步进电机的加/减速控制,实际上是控制发脉冲的频率,升速时,使脉冲频率增高,减速时相反。如果使用定时中断来控制电机的速度,加减速控制就是不断改变定时器的初值。速度从V1-V2,如果是线性加速度,则按给定的斜率升/降速;如果是突变,则按“阶梯升速法”处理。在此过程中要处理好两个问题。1. 速度转换时间应尽量短:为了缩短速度转换的时间,可以采用建立数据表的方法。结合各曲线段的频率和各段间的阶梯频率便可以建立一个连续的数据表,并通过转换程序将其转换为定时初值的计算是在定时中断外实现的,并不占用中断时间,保证电机的高速运行。2. 保证控制速度的精确性:要从一个速度准确达到另外一个速度,就要建立一个校验机制,以防超过或未达到所需速度。2.4 步进电机的换向控制一般步进电机来说,驱动器的输入共用3路,它们是:步进脉冲信号CP,方向电平DIR,脱机信号PREE.它们在驱动器内容分别通过内部分别通过限流电阻接入光耦的负输入端,且电路形式完全相同。在这三路输入信号的共同的控制下,驱动器一般有一个接入端0PT0,该端口为三路信号的公共端,三路输入信号在驱动器内部竭诚共阳方式,所以OPTO端须接外部系统的VCC,并在需要的情况下加限流电阻R,保证驱动器内部光耦提供合适的 电流。1. 步进脉冲信号CP步进脉冲信号CP用于控制步进电机的位置与速度,也就是说;驱动器每接受一个CP脉冲就驱动步进电机一个旋转的步距角,CP脉冲的频率改变则会使步进电机的转速改变,控制CP脉冲的个数,则可以使步进电机精确定位。2. 方向电平DIR方向电平信号DIR用于控制步进电机的旋转方向,此端为高电平时,电机一个转向,此端为低电平时,电机转向另一个方向,电机转向必须在电机停机或者降到某一值后进行,并且换向信号一定要在前一个方向的最后一个CP脉冲结束以及下一个方向的第一个脉冲前发出。3. 脱机电平信号PREE当驱动器上电平后,步进电机处于锁定状态(未施加CP脉冲时)或则运行状态(施加CP脉冲时),但当用户想手动调整电机而不想关闭驱动器电源,这时就可以用到此信号,当此信号起到作用时(低电平有效)。电机处于自由无力矩状态,当此信号为高电平时或悬空不接时,取消脱机状态,此信号用户可选用,如果不需要此功能,此端不接即可。步进电机换向时,一定要在电机降速停止或降到突跳范围之内再换向,以免产生较大的冲击而损坏电机,换向信号一定要在前一个方向的最后一个CP脉冲结束后以及下一个方向的第一个CP脉冲前发出。如图2.3所示。对于CP脉冲的设计主要要求具有一定的脉冲宽度(一般不小于5us)、脉冲序列的均匀度及高低电平方式,在某一高速下的正、反向切换实质包含了降速-换向-升速 三个过程。图2.3 升降速 换向三个过程2.5步进电机的位置控制步进电机不需要位置传感器,就可依照输入的脉冲数决定移动量,并将负载顺利、正确地送达指定位置点上。移动量的大小,是依照电机分辨率的大小与输入的脉冲数决定的,脉冲数与位移量间的关系如下:位置移动量=步进电机分分辨率输入脉冲数步进电机的位置控制是指要求电机从当前位置转过一个给定的步数,电机不丢失这一控制的实际,就是要求精确地发出定量的步进脉冲,例如,机器人再现工作时的启动信号后,要走到示教时给出的初始作业位置,就是用到位置控制,不过不带加/减速控制,位置控制很容易实现的。将发给电机的脉冲,用计数器通道计数,到最后通过CPU停发脉冲就是了,但是这种不带加/减速控制的位置控制,除非速度特别低,否则会在起停时造成器械冲击、失步。图2.4示出了参加加减速控制的速度曲线,此曲线,跟T轴间包含的面积正比于电机走过的步数S,显然,电机走过的总步数S由三部分构成:加速阶段电机走的步数向阶梯段电机走过的步数和减速阶段电机走的步数。图2.4 加减速控制速度曲线2.6步进电机的驱动系统步进电机在仅给予电压时,电机是不会动作的,必须透过脉冲产生器提供位置(脉波数)、速度的脉冲信号指令,以及驱动器电流流过电机内线圈,依顺序切换激励磁相序的方式才能让电机运转。所以,欲使步进电机动作的必要系统组成如下:1. 脉冲产生器:产生角度(位置移动量)、动作速度及运转方向等脉冲信号的电机驱动指令。2. 步进驱动器:依控制器所投入的脉冲信号指令提供电流,驱动步进电机动作。3. 步进电机:提供转矩动力输出来带动负载。3 单片机概述3.1 单片机简介单片机(MCU)是指一个集成在一块芯片上的完整计算机系统。尽管它的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器、实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机也被称为微控制器,由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。单片机是70年代中期发展起来的一种大规模集成电路芯片,是CPU、RAM、ROM、I/O接口和中断系统集成于同一硅片的器件。单片机用于控制有利于实现系统控制的最小化和单片化,简化一些专用接口电路,如编程计数器、锁相环(PLL)、模拟开关、A/D和D/A变换器、电压比较器等组成的专用控制处理功能的单板式微系统。单片机是所有微处理机中性价比最高的一种,随着种类的不断全面,功能不断完善,其应用领域也迅速扩大。单片机在智能仪表、实时控制、机电一体化、办公机械、家用电器等方面都有相当的应用领域。当前,8位单片机主要用于工业控制,如温度、压力、流量、计量和机械加工的测量和控制场合;高效能的16位单片机(如MCS-96、MK-68200)可用在更复杂的计算机网络。可以说,微机测控技术的应用已渗透到国民经济的各个部门,微机测控技术的应用是产品提高档次和推陈出新的有效途径。3.2 单片机的硬件结构当今时代,单片机使用最为广泛为MCS-51单片机。即:8051单片机,其基本组成(参见图3.1):中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。1. 中央处理器(CPU)中央处理器是单片机的核心,完成运算和控制功能。中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。2. 内部数据存储器(内部RAM)图3.1 MCS-51单片机结构框图8051芯片中共有256个RAM单元,但其中后128单元被专用寄存器占用,能作为寄存器供用户使用的只是前128单元,用于存放可读写的数据,简称内部RAM。3.程序存储器ROM8051内部自带程序存储器,用于存放程序、原始数据或表格,不需外接程序存储器。 4. 定时/计数器8051共有两个16位的定时/计数器,以实现定时或计数功能,并以其定时或计数结果对计算机进行控制。5. 并行I/O口MCS-51共有4个8位的I/O口(P0、P1、P2、P3),以实现外部数据的并行输入/输出。在实训中我们已经使用了P1口,通过P1口连接8个发光二极管。6. 串行口MCS-51单片机有一个全双工的串行口,以实现单片机和其它设备之间的串行数据传送。该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为同步移位器使用。7. 中断控制系统MCS-51单片机的中断功能较强,以满足控制应用的需要。8051共有5个中断源,即外中断两个,定时/计数中断两个,串行中断一个。全部中断分为高级和低级共两个优先级别。8. 时钟电路MCS-51芯片的内部有时钟电路,但石英晶体和微调电容需外接。时钟电路为单片机产生时钟脉冲序列。系统允许的晶振频率一般为6MHz和12MHz。从上述内容可以看出,MCS-51虽然是一个单片机芯片,但作为计算机应该具有的基本部件它都包括,因此,实际上它已是一个简单的微型计算机系统了。3.3 MCS-51单片机的引脚及其功能MCS-51是标准的40引脚双列直插式集成电路芯片,引脚排列请参见图3.2。1. 信号引脚介绍MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。输入输出(I/O)引脚P0.0P0.7:P0口8位双向口线。P1.0P1.7:P1口8位双向口线。P2.0P2.7:P2口8位双向口线。P3.0P3.7:P3口8位双向口线。图3.2 单片机的引脚ALE:地址锁存控制信号。在系统扩展时,ALE用于控制把P0口输出的低8位地址锁存起来,以实现低位地址和数据的隔离。:外部程序存储器读选通信号。在读外部ROM时,有效(低电平),以实现外部ROM单元的读操作。:访问程序存储控制信号。当信号为低电平时,对ROM的读操作限定在外部程序存储器;当信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。RST:复位信号。当输入的复位信号延续两个机器周期以上的高电平时即为有效,用以完成单片机的复位初始化操作。VSS:地线,VCC:+5 V电源。2. 信号引脚的第二功脚由于工艺及标准化等原因,芯片的引脚数目是有限制的。但单片机为实现其功能所需要的信号数目却远远超过此数,因此就出现了需要与可能的矛盾,给一些信号引脚赋以双重功能。除了第一功能,则根据需要再定义它的第二功能。下面介绍一些信号引脚的第二功能。 (1) P3口线的第二功能P3的8条口线都定义有第二功能,详见表3.1。(2) EPROM存储器程序固化所需要的信号。有内部EPROM的单片机芯片(例如8751),为写入程序需提供专门的编程脉冲和编程电源,这些信号也是由信号引脚以第二功能的形式提供的,即:编程脉冲:30脚(ALE/PROG()编程电压(25V):31脚(EA()/VPP)表3.1 P3口各引脚与第二功能表引脚端口第二功能P3.0RXD串行数据接收P3.1TXD串行数据发送P3.2外部中断0申请P3.3外部中断1申请P3.4T0定时/计数器0的外部输入P3.5T1定时/计数器1的外部输入P3.6外部RAM写选通P3.7外部RAM读选通3.4 MCS-51存储器3.4 .1 MCS-51内部数据存储器MCS-51单片机的芯片内部有RAM和ROM两类存储器,即所谓的内部RAM和内部ROM,首先分析内部RAM。1. 内部数据存储器低128个单元8051的内部RAM共有256个单元,通常把这256个单元按其功能划分为两部分:低128单元(单元地址00H7FH)和高128单元地址80H(单元地址80HFFH)。低128单元的配置图如表3.2所示:表3.2 片内RAM的配置30H 7FH数据缓冲区20H 2FH位寻址区(00H7FH)18H 1FH工作寄存器3区(R7R0)10H 17H工作寄存器2区(R7R0)08H 0FH工作寄存器1区(R7R0)00H 07H工作寄存器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。因这些寄存器的功能已作专门规定,故称之为专用寄存器(Special Function Register),也可称为特殊功能寄存器。(1) 专用寄存器(SFR)简介8051共有21个专用寄存器,现把其中部分寄存器简单介绍如下:1) 程序计数器(PCProgram Counter)。PC是一个16位的计数器,自动加1功能,用来控制程序的执行顺序;PC没有地址,是不可寻址的,用户无法对它进行读写,但可以通过转移、调用、返回等指令改变其内容,以实现程序的转移。2) 累加器(ACCAccumulator)。累加器为8位寄存器,是最常用的专用寄存器,功能较多,地位重要。它既可用于存放操作数,也可用来存放运算的中间结果。3) B寄存器。B寄存器是一个8位寄存器,主要用于乘除运算。乘法运算时,B存乘数。乘法操作后,乘积的高8位存于B中,除法运算时,B存除数。除法操作后,余数存于B中。4) 程序状态字(PSWProgram Status Word)。程序状态字是一个8位寄存器,用于存放程序运行中的各种状态信息。PSW各位定义如下:表3.3 PSW的位地址定义PSW位地址D7HD6HD5HD4HD3HD2HD1HD0H字节址D0HCYACF0RS1RS0OVF1P除PSW.1位保留未用外,其余各位的定义及使用如下:CY(PSW.7)进位标志位。CY是PSW中最常用的标志位,其功能是存放算术运算的进位标志,进行加或减运算。AC(PSW.6)辅助进位标志位。用户标志位:RS1和RS0(PSW.4,PSW.3)寄存器组选择位。它们被用于选择CPU当前使用的通用寄存器组共有4组。单片机上电或复位后,RS1 RS0=00。OV(PSW.2)溢出标志位。5)数据指针(DPTR)。数据指针为16位寄存器。编程时,DPTR既可以按16位寄存器使用,也可以按两个8位寄存器分开使用。6) 堆栈指针(SPStack Pointer)。堆栈是一个特殊的存储区,用来暂存数据和地址,它是按先进后出的原则存取数据的。(2) 专用寄存器中的字节寻址和位地址MCS-51系列单片机有21个可寻址的专用寄存器,其中有11个专用寄存器是可以位寻址的。对此问题作如下说明:1) 21个可字节寻址的专用寄存器是不连续地分散在内部RAM高128单元之中,尽管还余有许多空闲地址,但用户并不能使用。2) 程序计数器PC不占据RAM单元,它在物理上是独立的,因此是不可寻址的寄存器。3) 对专用寄存器只能使用直接寻址方式,书写时既可使用寄存器符号,也可使用寄存器。3.4.2 对8051扩展的外部程序存储器2732是一种4kx8位紫外线擦除电可编程只读存储器,数据存储器空间地址为0000H0FFFH,片外最多可扩至64KB ROM/EPROM,其地址为1000HFFFFH,可以从0000H开始编址。2732管脚排列如图下所示。图3.3 2732管脚排列 其中: A0A1112位地址线,可寻址4k字节; D0D78位数据线; CE片选信号; OE输出允许信号; VPP编程电源; VCC电源(5V); GND地。需要说明的是:1. 计算机的工作是按照事先编制好的程序命令条条循序执行的,程序存储器就是用来存放这些已编好的程序和表格常数,它由只读存储器ROM或EPROM组成。2. 单片机使用程序计数器PC(Program Counter)作为程序存储器的地址指针,且PC总是指向将要执行的下一条指令所在的程序存储器单元地址。3. 实际应用时,程序存储器的容量分别是:0000H单元是系统的起始地址,0003H、000BH、0013H、001BH和0023H对应5种中断源的中断服务入口地址。程序存储器中的复位和中断源共6个固定的入口地址见表2.4。表3.4 MCS51单片机复位、中断入口地址操作入口地址复位0000H外部中断INT0()0003H定时器/计数器0溢出000BH外部中断INT1()0013H定时器/计数器1溢出001BH串行口中断0023H定时器/计数器2溢出或T2EX端负跳变002BH3.5 MCS-51存储器时序是用定时单位来说明的。MCS-51的时序定时单位共有4个,从小到大依次是:节拍、状态、机器周期和指令周期。下面分别加以说明。1. 节拍与状态把振荡脉冲的周期定义为节拍(用P表示)。振荡脉冲经过二分频后,就是单片机的时钟信号的周期,其定义为状态(用S表示)。这样,一个状态就包含两个节拍,具前半周期对应的拍节叫节拍1(P1),后半周期对应的节拍叫节拍2(P2)。2. 机器周期MCS-51采用定时控制方式,因此它有固定的机器周期。规定一个机器周期的宽度为6个状态,并依次表示为S1S6。3. 指令周期指令周期是最大的时序定时单位,执行一条指令所需要的时间称为指令周期。它一般由若干个机器周期组成。单片机执行任何一条指令时都可以分为取指令阶段和执行指令阶段。MCS-51的取指/执行时序:(1) 单字节单周期指令;(2) 双字节单周期指令;(3) 单字节双周期指令;由图2.4可示,ALE引脚上出现的信号是周期性的,在每个机器周期内出现两次高电平。第一次出现在S1P2和S2P1期间,第二次出现在S4P2和S5P1期间。图3.4 MCS-51单片机的取指/执行时序图3.4(a)、(b)所示分别给出了单字节单周期和双字节单周期指令的时序。单周期指令的执行始于S1P2,这时操作码被锁存到指令寄存器内。图3.4(c)给出了单字节双周期指令的时序,两个机器周期内进行4次读操作码操作,其为单字节指令,后三次读操作都是无效的4控制系统4.1 步进电机接线及驱动电路模块下图是步进电机驱动接线图,其中:A+,A-,B+,B-,接在步进电机,CW+,CW-接单片机。图4.1 电机接线及其驱动4.2 数码显示4.2.1数码线线路选用方案一:串行接法设计中显示2位数字,用74LS164作为显示驱动,其中带锁存,使用串行接法可以节约IO资源,发送数据时容易控制。方案二:并行接法使用并行接法时要对美国数码管用IO口单独输入数据,占用资源较多。由于设计中用一块单片机进行控制,资源有限,选择了方案一,另外,使用锁存也起到节约资源的作用。4.2.2数码管现实电路设计图4.2 数码管显示电路数码管的现实驱动使用74LS164,通过SPCE061A的IOBO口对DATA和CLK发送数据。4.2.3 按键电路设计键盘主要用来提供人机接口,在本设计中,使用了标准的1x4键盘,键盘的设计图如图4.3所示图4.3 按键电路5 系统设计5.1 设计框图以下是本控制系统的设计框图图5.1 设计框图 5.2 设计总电路图以下是本控制系统的总电路图图5.2 设计电路图5.3 程序流程图以下是本控制系统的程序流程框图图5.3 程序流程图5.4 程序代码MISPEED EQU 25 ;初始速度MASPEED EQU 100 ;最大速度ORG 000BH ;定时器T0的中断入口地址JMP T0INT ;间接跳转指令ORG 001BHJMP T1INTORG 0030HAJMP MAIN ;无条件转移指令ORG 0060HAJMP XIANSHIORG 0100HAJMP ANJIANMAIN:MOV R1, #MISPEED ;起始转动速度送入计数器MOV P2,#0000011B ;停转状态MOV TMOD, #00000010B ;工作在方式0SETB EA ;CPU开中断SETB ET0 ;允许T0中断SETB TR0 ;启动T0中断ACALL ANJAN ;调用按键子程序ACALL XIANSHI ;调用显示子程序ANJAN:JB P1.0 , QIDONG ;电机启动,JB P1.2,TINGZHI ;电机停转,返回主程序JB P1.3, JIASU ;电机加速JB P1.4, JIANSU ;电机减速JB P1.5, ZHENGZHUAN ;调用正转子程序JB P1.6, FANZHUAN ;调用反转子程序JNB.P1.2, ANJIANRETQIDONG:MOV P2,#00000001BMOV P1.7,#0BRETXIANSHI:DIR:SETB P3.1MOV R7,#02H ;寄存器寻址MOV R0,#7FH ;7FH -7EH 为显示数据缓冲区DL0:MOV A, R0ADD A,#0DHMOVC A,A+PCMOV SBUF, ADL1:JNB T1,DL1 ;查询T1状态,1B的段码输出CLR TI ;完否DEC R0DJNZ R7,DL0CLR P3.1SEGTAB:DB 0C0H,0F9H,0A4H,0B0H,99HDB 92H,82H,0F8H,80H,90HRETZHENGZHUAN:MOV R2, #00000110BMOV P2, R2CALL DELAY ;调用延时程序RET FANZHUAN:CALL DELAY ;调用延时程序MOV R2, #00000011BMOV P2, R2 ;给p0口装入A值RETJIASU:CJNE A,#MASPEED,TOPMOV R1, AINC R1 MOV A R1TOP1:CALL DELAY RETJIANSU:CJNE A,#MASPEED,TOPMOV R1, ADEC R1MOV A R1CALL DELAY TOP2:RETDELAY: MOV SP,#60HMOV TMOD,#01HPUSH ACCPUSH PSWACALL PT0M0HERE: AJMP HEREPT0M0:MOV A,SPEEDSUBB A,#MINSEED ;减基准数MOV DPTR,#DHTABMOV A,A+DPTRMOV TH0,AACALL XIANSHIMOV A,SPEEDSUBB A,#MINSEEDMOV DPTR,#DLTABMOVC A,A+DPTRMOV TL0,AACALL XIANSHIDHTAB:DB 76,82,89,95,100,106,110,115,119,123,12DLTAB:DB 0,236,86,73,212,0,214,96,163,165.POP PSWPOP ACCRETISTOP:MOV P2, 00000011BHRETEND总结本论文首先简要介绍了步进电机、单片机的有关知识,然后讨论了对系统所用的硬件的选择。在前面两个部分的基础上,对控制系统电路进行了详细设计,包括系统硬件设计、软件设计等。接下来简要介绍了工作原理和编程语言。针对该控制系统本身的特点和对系统的功能要求,选用8051芯片作为控制芯片,七段显示译码器及锁存器74LS164作为辅助元件。本系统主要在步进电机的工作原理的基础上,对系统的硬件和软件进行详细的分析和设计,以MCS-51系列的8051为核心,利用其强大的控制功能,实现了对步进电机速度和方向的控制。该系统具有接线简单、编程直观、扩展容易等特点。总的来说,此次毕业实习及毕业设计完成了任务书规定的各项要求,在学习汇编语言、单片机、PROTEL、VISIO和CAD软件等内容的基础上,我进一步学习了线路设计、安装、检错等多种实用技术,既学习了不少新的知识和技术,也改变了原来看问题比较片面的缺点。整个设计的过程,同时也是专业知识的学习过程,而且是更生动、更切实、更深入的专业知识的学习:(1)一个设计是结合科研课题,把学过的专业知识运用于实际,在理论和实际结合过程中进一步消化、加深和巩固所学的专业知识,并把所学的专业知识转化为分析和解决问题的能力。(2)在搜集材料、调查研究、接触实际的过程中,既可以印证学过的书本知识,又可以学到许多课堂和书本里学不到的活生生的新知识。(3)我们在这种自己动手的设计中,对所学专业的某一侧面和专题作了较为深入的分析。在此我感谢老师对我的帮助和鼓励!在这次设计中,个人觉得收获颇丰,是人生的一次宝贵经历!但是本论文还存在以下问题,需要在后续的研究中解决:(1)该设计没有用到位置和速度和位置检测电路来实现速度和位置反馈控制 (2)设计中没有考虑多个电机同时或分时自动运作时的情况,这样使设计更加完善。由于该课题的实践性较强,鉴于具体应用环境和本人的知识背景,尚有不足之处,有待于在理论和实践的过程中进一步完善。致谢在此次毕业论文的撰写过程中,得到了老师、同学、朋友的关心、指导和帮助。从入学以来,由于各位老师一直辛勤工作和细心教导使我能顺利而充实地度过这难忘的四年,使我在综合素质提高、专业理论知识学习和工作实践能力等方面受益匪浅。在此,衷心地感谢我的指导教师杨明老师!在他丰富全面的专业知识、严谨认真的治学态度和周到系统的细心指导下,我启发颇多,收获颇丰;他的敦敦教诲、殷殷期盼对我做事做人更是帮助更多。感谢那些与我朝夕相处了四年的同学,大家一起在紧张的学习之余度过了许多愉快的时光。与此同时,这些日子,我们一块努力奋斗共进共退,相互鼓励,相互扶持。特别要感谢家人在我多年的求学过程中所给予的无私关怀和支持。对他们所作的一切,我将用以后更加努力的工作和勤奋的学习加以回报!参考文献1 刘宝廷, 程树康. 步进电动机及其驱动控制系统M. 哈尔滨工业大学出版社, 1997.2 涂时亮, 张友德. 单片微机MCS-51用户手册M. 复旦大学出版社, 1990.3 王玉良, 戴志涛. 微机原理与接口技术M. 北京邮电大学出版社, 2000.4 何立民. MCS-51系列单片机应用系统设计M. 北京航天航空大学出版, 1991.5 王福瑞. 单片机测控系统设计大全M. 北京航天航空大学出版社, 1999.6 唐光荣, 李究龄, 邓丽曼. 微型计算机应用技术(上)数据采集与控制技术M. 清华大学出版社, 2000.7 杨建宁. 单片机对步进电机升降速的控制M. 中小型电机, 1997.8 白霄丽, 孟祥霓, 张锋. 步进电机的定位及速度控制软件设计M. 济南大学学报, 1999.9 陈宝江, 翟湧, 张幽彤. MCS单片机应用系统实用指南M. 机械工业出版社, 1997.10 谢自美. 电子线路设计、实验、测试(第二版)M. 武汉华中理工大学出版社, 2000.
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 压缩资料 > 基础医学


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!