基于单片机的步进电机驱动器设计内容摘要:

One Time Programble)及各种类型片内程序存储器的发展,加之处围接口不断进入片内,推动了单片机 “ 单片 ” 应用结构的发展。 特别是I C、 SPI 等串行总线的引入,可以使单片机的引脚设计得更少,单片机系统结构更加简化及规范化。 单片机的结构与特点: 一、 单片机的结构 : 目前,单片机的系统结构有两种类型:一种是将程序和数据存储器分开使用, 即哈佛( Harvard)结构,当前的单片机大都是这种结构。 另一种是采用和 PC 机的 冯 .诺依曼( Von Neumann)类似的原理,对程序和数据存储器不作逻辑上的区分, 即普林斯顿( Princeton)结构。 一台微型计算机是由运算器、控制器、存储器、输入设备、输出设备五个部分构成的。 单片机是严格按照程序对各种数据整形或者输入信息进行自动加工处理的,因此必须把程序及数据用输入设备送入微型计算 机内部的存储器中,处理完成后还要把结果用输出设备送出来,其中运算器完成程序中规定的各种算术和逻辑运算操作,而为了使微型计算 11 机的各内部有条不紊地工作,必须由控制器理解程序的意图,并指挥各部件协调完成规定的动作。 二、 单片机的特点: 单片机除了具有体积小、价格低、性能强大、速度快、用途广、灵活性强,可靠性高等优点外,与通用微机相比,在硬件结构和指令上还具有以下独特之处。 (1)存储器 RAM 和 ROM 是严格分工的。 ROM 作为程序存储器 ,只存放程序、常数和数据表格 ,而 RAM 作为数据存储器 ,存放临时数据和变量。 这样的 方案更适用实时控制系统。 配置较在的 ROM 存储空间,将已调好的程序固化,不仅掉电时程序不丢失,还避免了程序被破坏,从而确保了程序安全性。 实时控制仅需容量较小的 RAM,用于存放少量随机数据,这样有利于提高单片机的操作速度。 (2)采用面向控制的指令系统。 在时控制尤其是位操作方面单片机有不小的优势。 (3)输入 /输出端口通常设计有多种功能。 (4)品种规格的系列化。 属于同一个产品系列不同型号的单片机,通常具有相同的内核或兼容的指令系统。 其主要差别仅在片内配置了一些不同种类或不同数量的功能部件以适应不同的被控对象。 (5)单片机的硬件功能具有广泛的通用性。 单片机智能化产品中以单片机为核心组成的硬件电路,称为单片机系统。 嵌入相应的应用软件的单片机系统称为单片机应用系统。 8051 单片机的简介: 8051 系列是目前在应用中最为流行的单片机之一,它广泛地应用在自动控制、智能家电等许多领域中。 8051 系列单片机得到了 Intel 等许多大公司的支持,并纷纷开发出了兼容的多种芯片。 8051 单片机技术也是广大科技人员进行实际开发的必备技能。 因此采用8051 系列单片机进行开发的项目具有很强的适应性。 本设计采用 8051 单 片机作为控制芯片,在设计之前需要掌握其性能和结构。 8051 单片机的内部总体结构其基本特性如下: 8 位 CPU、片内振荡器 , 4k字节 ROM、 128 字节 RAM , 21 个特殊功能寄存器 , 32根 I/O 线 , 可寻址的 64k 字节外部数据、程序存贮空间 , 2 个 16 位定时器、计数器。 中断结构:具有二个优先级、五个中断源。 一个全双口串行口。 位寻址(即可寻找某位的内容)功能,适于按位进行逻辑运算的位处理器。 除 128 字节 RAM、 4k 字节 ROM 和中断、串行口及定时器模块外,还有 4 组 I/O 口 P0~ P3,余下的就是 CPU的全 部组成。 把 4kROM 换为 EPROM 就是 8751 的结构,如去掉 ROM/EPROM部分即为 8031 的框图,如果将 ROM 置换为 Flash 存贮器或 EEPROM,或再省去某些 I/O,即可得到 51 系列的派生品种,如 89C5 AT89C2051 等单片机的框图。 单片机各部分是通过内部的总线有机地连接起来的。 单片机 8051 的 CPU由运算器和控制器组成 : 12 一、 运算器 运算器以完成二进制的算术 /逻辑运算部件 ALU 为核心,再加上暂存器 TMP、累加器ACC、寄存器 B、程序状态标志寄存器 PSW 及布尔处理器。 累加器 ACC 是一 个八位寄存器,它是 CPU 中工作最频繁的寄存器。 在进行算术、逻辑运算时,累加器 ACC 往往在运算前暂存一个操作数(如被加数),而运算后又保存其结果(如代数和)。 寄存器 B 主要用于乘法和除法操作。 标志寄存器 PSW 也是一个八位寄存器,用来存放运算结果的一些特征,如有无进位、借位等。 其每位的具体含意如下所示。 PSW CY AC FO RS1 RS0 OV - P 对用户来讲,最关心的是以下四位。 进位标志 CY( PSW 7)。 它表示了运算是否有进位(或借位)。 如果操作结果在最高位有进位(加法)或者借位(减法),则该位为 1,否则为 0。 辅助进位标志 AC。 又称半进位标志,它反映了两个八位数运算低四位是否有半进位,即低四位相加(或减)有否进位(或借位),如有则 AC 为 1状态,否则为 0。 溢出标志位 OV。 MCS- 51 反映带符号数的运算结果是否有溢出,有溢出时,此位为 1,否则为 0。 奇偶标志 P。 反映累加器 ACC 内容的奇偶性,如果 ACC 中的运算结果有偶数个 1(如11001100B,其中有 4 个 1),则 P为 0,否则, P=1。 二、 控制器 控制器是 CPU的神经中枢,它包括定时控制逻辑电路、指令寄存器、译码器、地址指针 DPTR 及 程序计数器 PC、堆栈指针 SP 等。 这里程序计数器 PC 是由 16 位寄存器构成的计数器。 要单片机执行一个程序,就必须把该程序按顺序预先装入存储器 ROM 的某个区域。 单片机动作时应按顺序一条条取出指令来加以执行。 因此,必须有一个电路能找出指令所在的单元地址,该电路就是程序计数器 PC。 当单片机开始执行程序时,给 PC 装入第一条指令所在地址,它每取出一条指令(如为多字节指令,则每取出一个指令字节),PC 的内容就自动加 1,以指向下一条指令的地址,使指令能顺序执行。 只有当程序遇到转移指令、子程序调用指令,或遇到中断时(后面将介 绍), PC 才转到所需要的地方去。 8051 CPU碢 C 指定的地址,从 ROM 相应单元中取出指令字节放在指令寄存器中寄存,然后,指令寄存器中的指令代码被译码器译成各种形式的控制信号,这些信号与单片机时钟振荡器产生的时钟脉冲在定时与控制电路中相结合,形成按一定时间节拍变化的电平和时钟,即所谓控制信息,在 CPU内部协调寄存器之间的数据传输、运算等操作。 三、存储器 存储器是单片机的又一个重要组成部分 , 其中每个存储单元对应一个地址, 256 个单元共有 256 个地址,用两位 16 进制数表示,即存储器的地址( 00H~ FFH)。 存储器中每个存储单元可存放一个八位二进制信息,通常用两位 16 进制数来表示,这就是存储器的内容。 存储器的存储单元地址和存储单元的内容是不同的两个概念,不能混淆。 (一) 程序存储器 程序是控制计算机动作的一系列命令,单片机只认识由 “0”和 “1”代码构成的机器指令。 如前述用助记符编写的命令 MOV A,# 20H,换成机器认识的代码 74H、 20H(写成二进 13 制就是 01110100B 和 00100000B)。 在单片机处理问题之前必须事先将编好的程序、表格、常数汇编成机器代码后存入单片机的存储器中,该存储器称为程序存储器。 程 序存储器可以放在片内或片外,亦可片内片外同时设置。 由于 PC 程序计数器为 16 位,使得程序存储器可用 16 位二进制地址,因此,内外存储器的地址最大可从 0000H 到 FFFFH。 8051 内部有 4k字节的 ROM,就占用了由 0000H~ 0FFFH 的最低 4k个字节,这时片外扩充的程序存储器地址编号应由 1000H 开始,如果将 8051 当作 8031 使用,不想利用片内 4kROM,全用片外存储器,则地址编号仍可由 0000H 开始。 不过,这时应使 8051 的第 {31}脚(即EA 脚)保持低电平。 当 EA 为高电平时,用户在 0000H 至 0FFFH 范围内使用内部 ROM,大于 0FFFH 后,单片机 CPU自动访问外部程序存储器。 ( 二 ) 数据存储器 单片机的数据存储器由读写存储器 RAM 组成。 其最大容量可扩展到 64k,用于存储实时输入的数据。 8051 内部有 256 个单元的内部数据存储器,其中 00H~ 7FH 为内部随机存储器 RAM, 80H~ FFH 为专用寄存器区。 实际使用时应首先充分利用内部存储器,从使用角度讲,搞清内部数据 存储器的结构和地址分配是十分重要的。 8051 内部数据存储器地址由 00H 至 FFH 共有 256 个字节的地址空间,该空间被分为两部分,其中内部数据 RAM的地址为 00H~ 7FH(即 0~ 127)。 而用做特殊功能寄存器的地址为 80H~ FFH。 在此 256个字节中,还开辟有一个 “位地址 ”区,该区域内不但可按字节寻址,还可按 “位( bit) ”寻址。 对于那些需要进行位操作的数据,可以存放到这个区域。 从 00H 到 1FH 安排了四组工作寄存器,每组占用 8 个 RAM 字节,记为 R0~ R7。 究竟选用那一组寄存器,由前述标志寄存器中的 RS1 和 RS0 来选用。 在这两位上放入不同的二进制数,即可选用不同的寄存器组。 (三) 特殊功能寄存器 特殊功能寄存器( SFR)的地址范围为 80H~ FFH。 在 MCS- 51 中,除程序计数器PC 和四个工作寄存器区外,其余 21 个特殊功能寄存器都在这 SFR 块中。 其中 5 个是双字节寄存器,它们共占用了 26 个字节。 特殊功能寄存器反映了 8051 的状态,实际上是8051 的状态字及控制字寄存器。 这些特殊功能寄存器大体上分为两类,一类与芯片的引脚有关,另一类作片内功能的控制用。 与芯片引脚有关的特殊功能寄存器是 P0~ P3,它们实际上 是 4 个八位锁存器(每个 I/O 口一个),每个锁存器附加有相应的输出驱动器和输入缓冲器就构成了一个并行口。 MCS- 51 共有 P0~ P3 四个这样的并行口,可提供 32 根I/O 线,每根线都是双向的,并且大都有第二功能。 14 第 2 章 步进电机驱动器设计 实现的目标: 通过 8051单片机的输出脉冲控制步进电动机,驱动步进电机的正反转,加速,减速和停止,并将步进电机与升旗装置连接,控制旗帜的运转。 实现自动升降旗系统。 8051 单片机的开发 单片机的应用系统随其用途不同,其硬件和软件均不同。 单片机最初的选型很重要,原 则上是选择高性价比得单片机。 硬件软件化是提高系统性价比的有效方法,尽量减少硬件成本,多用软件实现相同的功能,这样也可以大大提高系统的可靠性。 但是过度的软件化会占用大量的 CPU空间 ,造成执行效率的降低。 所以,要合理的分配软硬件在系统中的比例,提高性价比。 单片机的系统的开发步骤一般分为总体设计、硬件电路的设计、软件的编制和仿真等几个部分,具体步骤如下: 15 图 Mcs51开发流程图 步进电机驱动器原理 步进电机驱动器的组成 步进电机驱动器又称步进电机控制器,主要由单片机、晶振电路、 8K RAM 存储模块、光电隔离等电路组成,如图 2所示。 (1)晶振电路 N 开始 依功能要求决定软硬件的设计方式(比重,取舍) 编 辑 /修改源程序 编译 编译结果有错误 连接 使用单片机仿真系统进行模拟,除错 动作符合要求。 将程序利用烧录器烧录到单片机上 结束 制作 /修改硬件电路 测试正常 Y N Y N 16 单片机的时钟信号通常用两种电路形式得到:内部振荡方式和外部振荡方式。 在引脚XTAL1 和 XTAL2 外接晶体振荡器 (简称晶振 )或陶瓷谐振器,就构成了内部振荡方式。 由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。 内部振荡方式的外部电路如图 3 所示。 本系统选 C1 和 C2值为 30pF。 图 外部振荡 (2)光电隔离电路 利用光隔离器组成的光电隔离电路将控制器与外部的驱动电路隔离开来,使得外部电路的变化不至于影响或者损坏控制系统,从而提高系统的可靠性,增强抗千扰能力。 光隔离器最重要的参数是电流传输比 CTR,应注意通常其值为 ^ 号提供一定的电流 (510mA)时,光隔离器才会把放大的数字电平输出。 光隔离器联结时注意信号正负逻辑。 光隔离器的输入、输出端地线必须互相隔开,并且输入、输出端两个电源。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。