




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
前 言单片机是一个单芯片形态、面向控制对象的嵌入式应用计算机系统。它的出现及发展使计算机技术从通用型数值计算领域进入到智能化的控制领域。从此,计算机技术在两个重要领域通用计算机领域和嵌入式计算机领域都得到了极其重要的发展,并正在深深地改变着我们的社会。采用8031单片机控制步进电机,可实现步进电动机正反转控制和步进电动机的无级调速。分析了步进电机的工作原理,讨论了系统硬件和软件的设计方法,并给出了步进电机的四相八拍单片机控制的具体实现方法。该系统操作简单,降低了成本,提高了系统的可靠性。步进电机具有控制方便和体积小等特点,因此在智能仪表和位置控制中得到了广泛的应用。近年来大规模集成电路的发展以及各种单片机的迅速发展和普及,为设计功能强、价格低的步进电机控制驱动器提供了先进的技术和充足的资源。步进电动机是一种将电脉冲信号转换成相应角位移或线位移的电动机,它的运行需要专门的驱动电源,驱动电源的输出受外部的脉冲信号控制。每一个脉冲信号可使步进电机旋转一个固定的角度,这个角度称为步距角。脉冲的数量决定了旋转的总角度,脉冲的频率决定了电动机旋转的速度,改变绕组的通电顺序可以改变电机旋转的方向。在数字控制系统中,它既可以用作驱动电动机,也可以用作伺服电动机。它在工业过程控制中得到广泛的应用,尤其在智能仪表和需要精确定位的场合应用更为广泛。1 单片机的基本知识1.1 概述单片微型计算机简称单片机,由于它的结构及功能均是按工业控制要求设计的,所以其确切的名称应是单片微控制器(Single Chip Microcontroller)。它是把微型机算计的各个功能部件:中央处理器CPU、随机存储器RAM、只读存储器ROM、并行I/O接口、定时器/计数器及串行通信接口等集成在一块芯片上,构成一个完整的微型计算机系统,故又把它称为单片微型计算机系统(Single Chip Microcomputer)。由于单片机面对的是测控对象,突出的是控制功能,所以它从功能和形态上来说都是应控制领域应用的要求而诞生的。随着单片机技术的发展,它在芯片内集成了许多面对测控对象的接口电路,如ADC、DAC、高速I/O口、PWM、WDT等。这些对外电路及外设接口已经突破了微型计算机(microcomputer)传统的体系结构,所以更为确切反映单片机本质的名称应是微控制器。单片机是单芯片形态作为嵌入式应用的计算机,它有惟一的、专门为嵌入式应用而设计的体系结构和指令系统,加上它的芯片级体积的优点和在现场环境下可高速可靠地运行的特点,因此单片机又称之为嵌入式微控制器(embedded micro controller)。但是,在国内单片机的叫法仍然有着普遍的意义。我们已经把单片机理解为一个单芯片形态的微控制器,它是一个典型的嵌入式应用计算机系统。目前按单片机内部数据通道的宽度,把它们分为4位、8位、16位及32位单片机。单片机出现的历史并不长,它的产生与发展和微处理器的产生与发展大体上同步。1970年微型计算机研制成功后,随即在1971年,美国Intel公司生产出了4位单片机4004,它的特点是结构简单、功能单一、控制能力较弱,但价格低廉。1976年Intel公司推出了MCS-48系列单片机,它以体积小、功能全、价格低等特点获得了广泛的应用,成为单片机发展进程中的一个重要阶段,此可谓是第一代单片机。在MCS-48系列单片机的基础上,Intel公司在20世纪80年代初推出了第二代单片机的代表MCS-51系列单片机。这一代单片机的主要技术特征是为单片机配置了完美的外部并行总线和串行通信接口,规范了特殊功能寄存器的控制模式,以及为增强控制功能而强化布尔处理系统和相关的指令系统,为发展具有良好兼容性的新一代单片机奠定了良好的基础。近几年出现了具有许多新特点的单片机,可称之为第三代单片机。它以新一代的80C51系列单片机为代表。同时16位单片机也有很大发展。尽管目前单片机品种繁多,但其中最为典型的仍当属Intel公司的MCS-51系列单片机。它的功能强大,兼容性强,软硬件资料丰富。直到现在MCS-51仍不失为单片机中的主流机型。在今后相当长的时间内,单片机应用领域中的8位机主流地位还不会改变。 综观单片机20多年的发展过程,再从半导体集成电路技术的发展和微电子设计技术的发展,我们可以预见未来单片机技术发展的趋势。单片机将朝着大容量高性能化、小容量低价格化、外围电路的内装化以及I/O接口功能的增强、功耗降低等方向发展。1.2 单片机的特点及应用1.2.1单片机的基本组成单片机的结构特征是将组成计算机的基本部件集成在一块晶体芯片上,构成一台功能独特的、完整的单片微型计算机。图1-1为单片机的典型结构框图。图1-1 单片机的典型结构框图下面简要介绍各组成部分。(1)中央处理器单片机中的中央处理器CPU和通用微处理器基本相同,由运算器和控制器组成,另外增设了“面向控制”的处理功能,如位处理、查表、多种跳转、乘除法运算、状态检测、中断处理等,增强了实时性。(2)存储器单片机的存储空间有两种基本结构。一种是普林斯顿结构(Princeton),将程序和数据合用一个存储器空间,即ROM和RAM的地址同在一个空间里分配不同的地址。CPU访问存储器时,一个地址对应惟一的一个存储单元,可以是ROM,也可以是RAM,用同类的访问指令。另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,称为哈佛(Harvard)结构。CPU用不同的指令访问不同的存储器空间。由于单片机实际应用中“面向控制”的特点,一般需要较大的程序存储器。目前,包括MCS-51和80C51系列的单片机均采用程序存储器和数据存储器截然分开的哈佛结构。 数据存储器(RAM)在单片机中,用随机存取的存储器(RAM)来存储数据,暂存运行期间的数据、中间结果、缓冲和标志位等,所以称之为数据存储器。一般在单片机内部设置一定容量(64B256B)的RAM,并以高速RAM的形式集成在单片机内,以加快单片机的运行速度。同时,单片机内还把专用的寄存器和通用的寄存器放在同一片内RAM统一编址,以利于运行速度的提高。对于某些应用系统,还可以外部扩展数据存储器。 程序存储器(ROM)单片机的应用中常常将开发调试成功后的应用程序存储在程序存储器中,因为不再改变,所以这种存储器都采用只读存储器ROM的形式。(3)并行I/O口单片机为了突出控制的功能,提供了数量多、功能强、使用灵活的并行I/O口。使用上不仅可灵活地选择输入或输出,还可作为系统总线或控制信号线,从而为扩展外部存储器和I/O接口提供了方便。(4)串行I/O口高速的8位单片机都可提供全双工串行I/O口,因而能和某些终端设备进行串行通信,或者和一些特殊功能的器件相连接。(5)定时器/计数器在实际的应用中,单片机往往需要精确地定时,或者需对外部事件进行计数,因而在单片机内部设置了定时器/计数器电路,通过中断,实现定时/计数的自动处理。1.2.2单片机的特点单片机独特的结构决定了它具有如下特点。(1)高集成度、高可靠性单片机将各功能部件集成在一块晶体芯片上,集成度很高,体积自然也是最小的。芯片本身是按工业测控环境要求设计的,内部布线很短,其抗工业噪音性能优于一般通用的CPU。单片机程序指令,常数及表格等固化在ROM中不易破坏,许多信号通道均在一个芯片内,故可靠性高。(2)控制功能强为了满足对对象的控制要求,单片机的指令系统均有极丰富的条件:分支转移能力、I/O口的逻辑操作及位处理能力,非常适用于专门的控制功能。(3)低电压、低功耗为了满足广泛使用于便携式系统,许多单片机内的工作电压仅为1.8V3.6V,而工作电流仅为数百微安。(4)优异的性能价格比单片机的性能极高。为了提高速度和运行效率,单片机已开始使用RISC流水线和DSP等技术。单片机的寻址能力也已突破64KB的限制,有的已可达到1MB和16MB,片内的ROM容量可达62MB,RAM容量则可达2MB。由于单片机的广泛使用,因而销量极大,各大公司的商业竞争更使其价格十分低廉,其性能价格比极高。1.2.3单片机的应用由于单片机功能的飞速发展,它的应用范围日益广泛,已远远超出了计算机科学的领域。小到玩具、信用卡,大到航天器、机器人,从实现数据采集、过程控制、模糊控制等智能系统到人类的日常生活,到处都离不开单片机。其主要的应用领域如下。(1)在测控系统中的应用单片机可以用于构成各种工业控制系统、自适应控制系统、数据采集系统等。例如,工业上的锅炉控制、电机控制、车辆检测系统、水闸自动控制、数控机床及军事上的雷达、导弹系统等。(2)在智能化仪器仪表中的应用单片机应用于仪器仪表设备中促使仪器仪表向数字化、智能化、多功能化和综合化等方向发展。单片机的软件编程技术使长期以来测量仪表中的误差修正、线性化的处理等难题迎刃而解。(3)在机电一体化中的应用单片机与传统的机械产品结合使传统的机械产品结构简化,控制走向智能化,构成新一代的机电一体化产品。这是机械工业发展的方向。(4)在智能接口中的应用计算机系统,特别是较大型的工业测控系统中采用单片机进行接口的控制管理,单片机与主机并行工作,可大大提高系统的运行速度。例如,在大型数据采集系统中,用单片机对模/数转换接口进行控制不仅可提高采集速度,还可以对数据进行预处理。如数字滤波、误差修正、线性化处理等。(5)在人类生活中的应用单片机由于其价格低廉、体积小巧,被广泛应用在人类生活的诸多场合,如洗衣机、电冰箱、空调器、电饭煲、视听音响设备、大屏幕显示系统、电子玩具、信用卡、楼宇防盗系统等。单片机将使人类的生活更加方便舒适,丰富多彩。2 步进电动机简介步进电动机是一种将电脉冲信号转换成角位移或线位移的机电元件。步进电动机的输入量是脉冲序列,输出量则为相应的增量位移或步进运动。正常运动情况下,它每转一周具有固定的步数;做连续步进运动时,其旋转转速与输入脉冲的频率保持严格的对应关系,不受电压波动和负载变化的影响。由于步进电动机能直接接受数字量的控制,所以特别适宜采用微机进行控制。2.1步进电动机的种类目前常用的有三种步进电动机:(1)反应式步进电动机(VR)。反应式步进电动机结构简单,生产成本低,动态性能差。(2)永磁式步进电动机(PM)。永磁式步进电动机出力大,动态性能好;但步距角大。(3)混合式步进电动机(HB)。混合式步进电动机综合了反应式、永磁式步进电动机两者的优点,它的步距角小,出力大,动态性能好,是目前性能最高的步进电动机。它有时也称作永磁感应子式步进电动机。2.2 步进电动机的工作原理 图2-1 三相反应式步进电动机的结构示意图1定子 2转子 3定子绕组 图2-1是最常见的三相反应式步进电动机的剖面示意图。电机的定子上有六个均布的磁极,其夹角是60。各磁极上套有线圈,按图1连成A、B、C三相绕组。转子上均布40个小齿。所以每个齿的齿距为E=360/40=9,而定子每个磁极的极弧上也有5个小齿,且定子和转子的齿距和齿宽均相同。由于定子和转子的小齿数目分别是30和40,其比值是一分数,这就产生了所谓的齿错位的情况。若以A相磁极小齿和转子的小齿对齐,如图1,那么B相和C相磁极的齿就会分别和转子齿相错三分之一的齿距,即3。因此,B、C极下的磁阻比A磁极下的磁阻大。若给B相通电,B相绕组产生定子磁场,其磁力线穿越B相磁极,并力图按磁阻最小的路径闭合,这就使转子受到反应转矩(磁阻转矩)的作用而转动,直到B磁极上的齿与转子齿对齐,恰好转子转过3;此时A、C磁极下的齿又分别与转子齿错开三分之一齿距。接着停止对B相绕组通电,而改为C相绕组通电,同理受反应转矩的作用,转子按顺时针方向再转过3。依次类推,当三相绕组按ABCA顺序循环通电时,转子会按顺时针方向,以每个通电脉冲转动3的规律步进式转动起来。若改变通电顺序,按ACBA顺序循环通电,则转子就按逆时针方向以每个通电脉冲转动3的规律转动。因为每一瞬间只有一相绕组通电,并且按三种通电状态循环通电,故称为单三拍运行方式。单三拍运行时的步矩角b为30。三相步进电动机还有两种通电方式,它们分别是双三拍运行,即按ABBCCAAB顺序循环通电的方式,以及单、双六拍运行,即按AABBBCCCAA顺序循环通电的方式。六拍运行时的步矩角将减小一半。反应式步进电动机的步距角可按下式计算: b=360/NEr (1)式中 Er转子齿数; N运行拍数,N=km,m为步进电动机的绕组相数,k=1或2。2.3步进电动机的驱动方法步进电动机不能直接接到工频交流或直流电源上工作,而必须使用专用的步进电动机驱动器,如图2-2所示,它由脉冲发生控制单元、功率驱动单元、保护单元等组成。图中点划线所包围的二个单元可以用微机控制来实现。驱动单元与步进电动机直接耦合,也可理解成步进电动机微机控制器的功率接口,这里予以简单介绍。图2-2 步进电动机驱动控制器1.单电压功率驱动接口实用电路如图2-3所示。在电机绕组回路中串有电阻Rs,使电机回路时间常数减小,高频时电机能产生较大的电磁转矩,还能缓解电机的低频共振现象,但它引起附加的损耗。一般情况下,简单单电压驱动线路中,Rs是不可缺少的。Rs对步进电动机单步响应的改善如图2-4所示。 图2-3 单电压功率驱动接口及单步响应曲线图2-4 双电压功率驱动接口2.双电压功率驱动接口双电压驱动的功率接口如图2-4所示。双电压驱动的基本思路是在较低(低频段)用较低的电压UL驱动,而在高速(高频段)时用较高的电压UH驱动。这种功率接口需要两个控制信号,Uh为高压有效控制信号,U为脉冲调宽驱动控制信号。图中,功率管TH和二极管DL构成电源转换电路。当Uh低电平,TH关断,DL正偏置,低电压UL对绕组供电。反之Uh高电平,TH导通,DL反偏,高电压UH对绕组供电。这种电路可使电机在高频段也有较大出力,而静止锁定时功耗减小。3.高低压功率驱动接口图2-5 高低压功率驱动接口高低压功率驱动接口如图2-5所示。高低压驱动的设计思想是,不论电机工作频率如何,均利用高电压UH供电来提高导通相绕组的电流前沿,而在前沿过后,用低电压UL来维持绕组的电流。这一作用同样改善了驱动器的高频性能,而且不必再串联电阻Rs,消除了附加损耗。高低压驱动功率接口也有两个输入控制信号Uh和Ul,它们应保持同步,且前沿在同一时刻跳变,如图2-5所示。图中,高压管VTH的导通时间tl不能太大,也不能太小,太大时,电机电流过载;太小时,动态性能改善不明显。一般可取13ms。(当这个数值与电机的电气时间常数相当时比较合适)。4.斩波恒流功率驱动接口恒流驱动的设计思想是,设法使导通相绕组的电流不论在锁定、低频、高频工作时均保持固定数值。使电机具有恒转矩输出特性。这是目前使用较多、效果较好的一种功率接口。图2-6是斩波恒流功率接口原理图。图中R是一个用于电流采样的小阻值电阻,称为采样电阻。当电流不大时,VT1和VT2同时受控于走步脉冲,当电流超过恒流给定的数值,VT2被封锁,电源U被切除。由于电机绕组具有较大电感,此时靠二极管VD续流,维持绕组电流,电机靠消耗电感中的磁场能量产生出力。此时电流将按指数曲线衰减,同样电流采样值将减小。当电流小于恒流给定的数值,VT2导通,电源再次接通。如此反复,电机绕组电流就稳定在由给定电平所决定的数值上,形成小小的锯齿波,如图2-6所示。图2-6 斩波恒流功率驱动接口3 芯片简介3.1 8031简介3.1.1 MCS-51单片机的基本特征(1)一个8位的CPU中央处理器;(2)一个片内的振荡器及时钟电路;(3)4KB的应用程序存储器,8051为掩膜型(mask)ROM;(4)128KB的片内数据存储器;(5)64KB程序存储器可寻址的地址空间;(6)64KB数据存储器可寻址的地址空间;(7)两个16位可编程的定时器/计数器;(8)一个可编程的全双工通用异步接收/发送器UART;(9)32条可按位寻址的双向I/O线;(10)两个优先级嵌套,5个中断源的中断结构;(11)有很强的布尔处理能力,即按位处理能力。8051尚有两个变体,即无片内程序存储器(ROMLESS)的8031和有片内可编程可改写的EPROM 8751。现8751已完全被8751H所取代。3.1.2 各功能部件简介1)中央处理器中央处理器简称CPU,是单片机的核心,完成运算和控制操作。按其功能,中央处理器包括运算器和控制器两部分电路。运算器运算器主要用于对操作数进行算术、逻辑运算和位操作。1. 累加器ACC ACC是8位寄存器,它通过暂存器和ALU相连,是工作最繁忙的寄存器。2. 逻辑运算单元ALU 用于二进制数的四则运算、布尔代数的逻辑运算和位处理操作。3. 程序状态字寄存器PSW 用来存放运算结果的一些特征。2)控制器 是CPU的大脑中枢,包括定时控制逻辑、指令寄存器、指令译码器、数据指针DPTR及程序计数器PC、堆栈指针SP以及地址寄存器、地址缓冲器等。它的功能是对逐条指令进行译码,并通过定时和控制电路在规定的时刻发出各种操作所需的内部和外部控制信号,协调各部分的工作,完成指令规定的操作。3.1.3 8031的引脚1. 信号引脚介绍1) 电源引脚Vcc和VssVcc(40脚):电源端,接+5V。Vss(20脚):接地端。2) 时钟电路引脚XTAL1和XTAL2XTAL1和XTAL2接外部石英晶振和微调电容的两端。3) 输入和输出引脚P0、P1、P2、P3P0、P1、P2、P3口均是8位双向口线。4) 控制信号引脚RST、PSEN、ALE和EARST(9脚):复位信号输入端,高电平有效。PSEN(29脚):程序存储允许输出端。ALE(30脚):地址锁存允许信号输出端。EA(31脚):程序存储器允许输入端。3.2 8155简介 3.2.1 8155的结构和信号引脚 8155各引脚功能说明如下:RST:复位信号输入端,高电平有效。复位后,3个I/O口均为输入方式。AD0AD7:三态的地址/数据总线。与单片机的低8位地址/数据总线(P0口)相连。单片机与8155之间的地址、数据、命令与状态信息都是通过这个总线口传送的。 :读选通信号,控制对8155的读操作,低电平有效。 :写选通信号,控制对8155的写操作,低电平有效。 :片选信号线,低电平有效。IO/ :8155的RAM存储器或I/O口选择线。当IO/ 0时,则选择8155的片内RAM,AD0AD7上地址为8155中RAM单元的地址(00HFFH);当IO/ 1时,选择 8155的I/O口,AD0AD7上的地址为8155 I/O口的地址。ALE:地址锁存信号。8155内部设有地址锁存器,在ALE的下降沿将单片机P0口输出的低8位地址信息及 ,IO/ 的状态都锁存到8155内部锁存器。因此,P0口输出的低8位地址信号不需外接锁存器。PA0PA7:8位通用I/O口,其输入、输出的流向可由程序控制。PB0PB7:8位通用I/O口,功能同A口。PC0PC5:有两个作用,既可作为通用的I/O口,也可作为PA口和PB口的控制信号线,这些可通过程序控制。TIMER IN:定时/计数器脉冲输入端。TIMER OUT:定时/计数器输出端。VCC:5V电源。2、8155的地址编码及工作方式在单片机应用系统中,8155是按外部数据存储器统一编址的,为16位地址,其高8位由片选线 提供, 0,选中该片。当 0,IO/ 0时,选中8155片内RAM,这时8155只能作片外RAM使用,其RAM的低8位编址为00HFFH;当 0,IO/ 1时,选中8155的I/O口,其端口地址的低8位由AD7AD0确定,如表6-6所示。这时,A、B、C口的口地址低8位分别为01H、02H、03H(设地址无关位为0)。表3-1 8155芯片的I/O口地址AD7AD0选择I/O口A7A6A5A4A3A2A1A0000011001100010101命令/状态寄存器A口B口C口定时器低8位定时器高6位及方式3.2.2 8155的I/O接口工作方式和命令/状态寄存器1 I/O接口工作方式 8155芯片的PA和PB是8位通用输入/输出口,主要用于数据的I/O传送,是数据口,只有输入/输出两种工作方式。2命令/状态寄存器A口B口C口定时器低8位定时器高6位及方式8155的A口、B口可工作于基本I/O方式或选通I/O方式。C口可工作于基本I/O方式,也可作为A口、B口在选通工作方式时的状态控制信号线。当C口作为状态控制信号时,其每位线的作用如下:PC0:AINTR(A口中断请求线)PC1:ABF(A口缓冲器满信号)PC2: (A口选通信号)PC3:BINTR(B口中断请求线)PC4:BBF(B口缓冲器满信号)PC5: (B口选通信号)8155的I/O工作方式选择是通过对8155内部命令寄存器设定控制字实现的。命令寄存器只能写入,不能读出,命令寄存器的格式如图3-1所示。在ALT1ALT4的不同方式下,A口、B口及C口的各位工作方式如下:ALT1:A口,B口为基本输入/输出,C口为输入方式。ALT2:A口,B口为基本输入/输出,C口为输出方式。ALT3:A口为选通输入/输出,B口为基本输入/输出。PC0为AINTR,PC1为ABF,PC2为 ,PC3PC5为输出。ALT4:A口、B口为选通输入/输出。PC0为AINTR,PC1为ABF,PC2为 ,PC3为BINTR,PC4为BBF,PC5为 。 图3-1 8155命令寄存器格式 8155内还有一个状态寄存器,用于锁存输入/输出口和定时/计数器的当前状态,供CPU查询用。状态寄存器的端口地址与命令寄存器相同,低8位也是00H,状态寄存器的内容只能读出不能写入。所以可以认为8155的I/O口地址00H是命令/状态寄存器,对其写入时作为命令寄存器;而对其读出时,则作为状态寄存器。状态寄存器的格式如图3-2所示。 图3-2 8155状态寄存器格式3.2.3 8155的定时器/计数器8155内部的定时/计数器实际上是一个14位的减法计数器,它对TIMER IN端输入脉冲进行减1计数,当计数结束(即减1计数“回0”)时,由TIMER OUT端输出方波或脉冲。当TIMER IN接外部脉冲时,为计数方式;接系统时钟时,可作为定时方式。定时/计数器由两个8位寄存器构成,其中的低14位组成计数器,剩下的两个高位(M2,M1)用于定义输出方式。其格式如下: 4 控制系统设计4.1 系统要求 本系统控制一台四相八拍步进电动机,要求达到:(1) 可以利用按键实现步进电动机的正、反转控制;(2) 可以利用按键实现步进电动机的转速控制:正、反转均为3档转速;(3) 系统启动时,须用按键选择步进电动机的正、反转及转速档位;(4) 具有显示电路,可以显示正、反转及转速档位;4.2 系统原理 本设计以MCS-51系列单片机为例进行分析,为调试方便,选择8031单片机,晶振频率选择12MHz。 步进电动机采用P1口控制,所需功率放大器采用6通道反相驱动芯片7407。步进电动机的控制:本系统控制对象为四相八拍步进电动机,工作时利用P1.0P1.3四根口线控制四相脉冲。每周期分为八拍,各拍节状态列表存入程序存储器,用查表方法决定P1口每次输出,改变P1口输出顺序可实现步进电动机正反转控制。同时,利用单片机内部定时器/计数器决定每拍定时时间,改变定时时间即可改变转速。 根据系统要求,本系统应具有键盘接口及显示接口,拟采用8155芯片扩展I/O接口。5 系统硬件设计5.1 存储器扩展由于选用的8031单片机无内部程序存储器,根据实际情况选用2732扩展4KB程序存储器。本系统所需保存数据较少,不需要扩展数据存储器。 本系统中扩展存储器及I/O芯片只有2732和8155,因此采用线选法即可,存储器扩展如图5-2所示,2732地址为0000H0FFFH。 5.2 步进电动机控制电路采用P1.0P1.3四根口线控制,同时选用6通道反相驱动芯片7404进行功率放大,如图5-3所示。 异步电动机共八拍,所需P1口状态见表5-1。表5-1 步进电动机状态表状态 P1.0 P1.1 P1.2 P1.3 P1口 1 1 0 0 0 01H 2 1 1 0 0 03H 3 0 1 0 0 02H 4 0 1 1 0 06H 5 0 0 1 0 04H 6 0 1 1 1 0CH 7 0 1 0 1 08H 8 1 1 0 1 09H5.3 键盘/显示器及其接口电路5.3.1 键盘及其接口电路 根据系统要求,采用八个按键,分别为:正转键、反转键、调速键、1档键、2档键、3档键、确定键和取消键,功能如下:(1) 正转键:当按下改键后,将转向标志位置“1”,同时改变转向为正向;(2) 反转键:当按下改键后,将转向标志位清“0”,同时改变转向为反向;(3) 调速键:当按下改键后,将调速标志位置“1”;(4) 1档键:当按下改键后,若调速标志位为0,则不处理;若调速位置为1,则改变显示转速为1档,同时不改变实际转速;(5) 2档键:当按下改键后,若调速标志位为0,则不处理;若调速位置为1,则改变显示转速为2档,同时不改变实际转速;(6) 3档键:当按下改键后,若调速标志位为0,则不处理;若调速位置为1,则改变显示转速为3档,同时不改变实际转速;(7) 确定键:当按下改键后,若调速标志位为0,则不处理;若调速位置为1,则保存所显示转速档位,同时将实际转速调整为新设定值;(8) 取消键:当按下改键后,将调整标志位清“0”,同时不保存所调整转速。 其中,调速标志位选择20H.1位,若该位为1表明为调速状态,该位为0表明非调速状态。转向标志位选择20H.1位,若该位为1表明为正转,该位为0表明为反转。 由于按键较多,采用矩阵式非编码键盘,使用8155芯片扩展,如图5-4所示。 5.3.2显示器及其接口电路 根据系统要求,采用2位显示,高位显示正、反转情况,低位显示转速档位。 根据实际需要,显示器采用7段共阴极LED数码显示器,高位“E”表示正转,“F”表示反转,低位用“1”、“2”、“3”表示各档转速,显示缓冲区选择30H、31H单元。 显示接口电路选择8155芯片,采用动态显示、软件译码方式,段、位驱动芯片采用6路集电极开路输出驱动7407芯片,具体扩展如图5-4所示。 图中各键键码确定原则为“行号+列号”,各键码与按键对应关系见表7-1。 根据扩展原理图,8155芯片各口地址见表5-3所示。 表5-3 8155芯片的可编程端口地址表可编程端口地址命令/状态寄存器7F00HPA口7F01HPB口7F02HPC口7F03H定时器/计数器低8位7F04H定时器/计数器高8位7F05H5.4 系统总电路图 对于时钟电路、复位电路和电源电路系统无特殊要求,采用典型电路即可。 步进电动机控制系统硬件原理如图5-5所示。图5-5步进电动机控制系统硬件原理图 6 系统软件设计6.1 程序功能 步进电动机控制系统程序主要完成以下功能:(1) 确定是否有键闭合同时判断是何健闭合;(2) 按转向键要求确定拍节状态表中各状态变量有、由P1口输出顺序,以决定转向;(3) 按转向键要求确定定时器/计数器初值,以决定转速;(4) 实时显示转向和转速。6.2 主要器件、存储单元及标志位说明 1)定时器/计数器说明 定时器/计数器0根据实际转速档位设置初值,其定时时间为步进电动机每拍节持续时间,以决定步进电动机转速。 定时器/计数器1固定定时1ms,作为键盘去抖动和显示器动态显示时延时使用。 2)中断说明 本程序中只使用定时中断0,定时时间到则根据转向按键要求改变P1口状态。 3)I/O接口地址及功能说明 各I/O接口地址及其功能说明见表6-1。 表6-1 I/O接口地址及其功能表地址可编程端口P1.0P1.3步进电动机控制口7F00H8155命令/状态寄存器地址7F01H8155PA口(键盘、列线显示器位选线)地址7F02H8155PB口(显示器断码线)地址7F03H8155PC口(键盘行线)地址4) 程序存储器常数表及数据存储器存储单元说明步进电动机状态常数表存放起始地址为程序存储器0050H单元。数据存储器各存储单元分配表见表6-2。存储单元用途存储单元用途30H显示缓冲区高位41H调整档位31H显示缓冲区低位42H键码40H实际档位43H步序数据存储器从50H单元起作为堆栈区。5) 标志位说明调速标志位选择20H.0位,该位为1表明为调速状态,该位为0表明非调速状态。转向标志位选择20H.1位,该位为1表明为正转,该位为0表明为反转。6.3各程序流程图及说明 根据系统要求,本系统软件部分分为主程序、键盘扫描子程序、键盘处理子程序、显示子程序、定时中断服务子程序和延时子程序。1) 主程序MAIN流程图如图6-1所示。开始 是正转键?定义堆栈区 N转向标志位清“0”转向标志位置“1” Y步进电动机停止 调键盘扫描子程序存储单元初始化 是2挡键?是3挡键?是1挡键?转速标志位置“1” N N 中断位置 装入1挡初值 装入1挡初值装入1挡初值 定时器初始化实际、调整挡位单元置“1”实际、调整挡位单元置“1”实际、调整挡位单元置“1”8155初始化调速标志位“0”调键盘扫描子程序调键盘扫描子程序有键闭合?调键盘处理子程序异步电动机送步序1N调显示子程序保存不序号 Y 图61 主程序流程图说明:(1)存储单元初始化包括:显示缓冲区30H和31H单元清“0”,实际挡位40H单元和调整挡位41H单元清“0”,键码42H单元清“0”,步序43H单元清“0”;(2)中断设置:允许定时器/计数器中断0;(3)定时器初始化:定时器0、1均采用定时方式1;(4)8155芯片初始化:定时器无操作,A口和B口禁止中断,A口和B口输出,C口输入。2)键盘扫描子程序SM功能:判断有无键闭合,将闭合键键码送42H单元。流程图如图22所示。开始列线均送01行有键闭合?0行有键闭合? N N Y Y 返回行号0送42H单元高位行号0送42H单元高位去抖动逐列送0判断闭合键列号闭合键列号送42H单元低位等待键释放去抖动返回 图62 键盘扫描子程序流程图3)键值处理子程序CL功能:根据闭合键键码进行处理流程图如图23 所示。说明:因判断为何闭合键时已确定有键闭合,因此最后取消键不需判断。开始读入键码有键闭合?返回 N是确定键?是调速键?是反转键?是正转键? N N N Y Y Y Y调速标志位清“0”调速标志位置“1”转向标志位清“0”转向标志位置“1”按调整挡位运行返回是2挡键?是3挡键?是1挡键? N N N Y Y Y调速标志位清“0”是调速状态?是调速状态?态?是调速状态? N N N取消调整挡位修改调整挡位单元送3调整挡位单元送2调整挡位单元送1返回 图63 键值处理子程序程序流程图4)显示子程序SS功能:动态显示正、反转状态和转动挡位。流程图如图64 所示。说明:由于挡位单元本身为字形码,因此不需要译码。开始将调整挡位送显示缓冲单元是正传? N Y将反转标志送显示缓冲单元将正转标志送显示缓冲器单元熄灭显示器动态扫描显示返回 图64 显示子程序流程图5)定时器0中断服务子系统程序DS功能:改变异步电动机步序,根据实际转速挡位定时。流程图如图65 所示。说明:对于步进电动机八拍循环运行,因此正传步序8循环至步序1,反转步序1循环至步序8。开始取步序号是正传? N 到状态1?到状态8? N N Y步序号减1步序号取8步序号加1步序号取1步进电动机送新状态取实际挡位是挡位1?是挡位2? N N Y Y装挡位1初值装挡位3初值装挡位2初值返回 图65 定时器0中断服务子程序流程图6)延时子程序YH功能:延时1 ms ,用于键盘去抖动和动态显示延时。流程图如图26 所示。开始定时器1装载初值启动定时器1到时间?清标志位返回 图66 延时子程序流程图6.4 程序清单ORG 0000HLJMP MAINORG 000BHLJMP DS ORG 0050H DB 01H,03H,02H,06H DB 04H,0CH,08H,09H ORG 0100HMAIN : MOV SP, #50H MOV P1, #00H SETB 20H.0 MOV 30H, #00H MOV 31H, #00H MOV 40H, #00H
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年演出经纪人之演出经纪实务模拟题库(能力提升)
- 生物-2025年中考考前最后一卷试题押题猜想(陕西卷)
- 八年级英语上册新教材解读课件(人教版2024)
- 急性腹痛问诊要点2025
- 河南省周口市扶沟县2023-2024学年七年级下学期7月期末考试英语试题(含答案无听力音频及原文)
- 甘肃省酒泉市敦煌中学2024-2025学年高一上学期期中考试数学(B)试卷(含答案)
- 2025年云南中考数学第一次模拟试卷(无答案)
- 2025年广东省广州市花都区中考二模道德与法治试卷(含答案)
- 2025室内墙面涂料供货合同样本范文
- Tiagabine-d6-NO050328-d-sub-6-sub-生命科学试剂-MCE
- 西方经济学章节练习题题库及答案1-16章(全)
- 全国交通运输行业“捷安杯”城市轨道交通服务员(职业组)职业技能竞赛题库及答案
- 设备日常点检培训30
- 电动车充电突发事件应急预案演练记录
- 办公室主任培训[1]ppt课件
- 特应性皮炎治疗中创新药的竞争格局分析
- 射阳汉鼎新能源科技有限公司分布式光伏并网发电项目电站运维合同
- 护理查房胎盘早剥
- 分部开工申请表
- 肺炎住院病历及病程记录教学文案
- 部编版四年级语文下册第八单元集体备课教材分析
评论
0/150
提交评论