您的当前位置:首页基于单片机的电动机正反转控制设计讲解

基于单片机的电动机正反转控制设计讲解

2021-10-30 来源:爱问旅游网
淮南师范学院2013届本科毕业论文

基于单片机的电动机正反转控制设计

学生:xxx(指导教师:xxx) (xxxxxx电气信息工程学院)

摘 要:基于单片机的基本理论,本文设计了一种步进电机控制系统。该系统通过软硬

件的设计调试,实现步进电机能根据设定的参数进行开关加减速控制,使控制系统以最短的时间到达控制终点,而又不发生失步的现象;同时它能准确地控制步进电机的正反转,启动和停止。硬件是以AT89C51单片机为核心的控制电路,主要包括:开关输入电路、液晶显示电路、步进电机的驱动电路等。软件部分采用C语言编程,主要包括液晶显示程序、步进电机的正反转即快慢程序等。通过仿真验证了本文设计系统的实用性能。

关键词:步进电机控制系统;调速;单片机

The design of motor control system based on SCM

Student:Zhou Tianhang(Supervisor:Liu Yunxia)

Electrical and Information Engineering Department of Huainan Normal University Abstract: The basic theory based on SCM. this paper designs a kind of stepping motor

control system. The system goes through the design of software and hardware. Realize the stepper motor can switch the acceleration and deceleration control according to the given parameters which makes the control system in the shortest time to finish and not out of step. At the same time, it can control the reversing the stepper motor accurately, start and stop. The hardware control circuit AT89C51 microcontroller as the core mainly. Include: switch input circuit, LCD displaying circuit, stepper motor drive circuit. The software is programmed by C language. Include: LCD display program and the stepper motor speed program .The practical performance of the design of the system is validated by simulation.

Key words: Stepping motor control system; speed control; Single-chip Computer

1

淮南师范学院2013届本科毕业论文

1 绪论

1.1 设计研究的目的和意义

由于步进电机不需要位置传感器或速度传感器就可以实现定位,即使在开环状态下它的控制效果也是令人非常满意的,这有利于装置或设备的小型化和低成本,因此步进电机在计算机外围设备、数控机床和自动化生产线等领域中都得到了广泛的应用。

对于一个步进电机控制系统而言,总希望它能以最短的时间到达控制终点。因此要求步进电机的速度尽可能地快,但如果速度太快,则可能发生失步。此外,一般步进电机对空载最高启动频率都是有所限制的。当步进电机带负载时,它的启动频率要低于最高空载启动频率。根据步进电机的矩频特性可知,启动频率越高,启动转矩越小,带负载的能力越差。当步进电机启动后,进入稳态时的工作频率又远大于启动频率。由此可见,一个静止的步进电机不可能一下子稳定到较高的工作频率,必须在启动时有一个加速的过程。从高速运行到停止也应该有一个减速的过程,防止步进电机因为系统惯性的原因,而发生冲过终点的现象。为此本文以单片机作为控制核心,实现步进电机的自动加减速控制,使系统以最短的时间到达控制终点,而又不发生失步的现象。因为步进电机的转速正比于控制脉冲的频率,所以调节步进电机的转速,实质上是调节单片机输出的脉冲频率[1-3]。

由于步进电机的运动特性受电压波动和负载变化的影响小,方向和转角控制简单,并且步进电机能直接接收数字量的控制,非常适合采用微机进行控制。步进电机工作时,失步或者过冲都会直接影响其控制精度。研究步进电机的加减速控制,可以提高步进电机的响应速度、平稳性和定位精度等性能,从而决定了步进电机控制系统的综合性能。 1.2 步进电机的发展状况

步进电机的机理是电磁铁作用,其原始模型起源于1830年至1860年间。1870年前后开始以控制为目的的尝试,应用于氩弧灯的电极输送机构中。

20世纪60年代后期,在步进电机本体方面随着永磁材料的发展,各种实用性步进电机应运而生,而半导体技术的发展则推进了步进电机在众多领域的应用。

我国步进电机的研究及制造起始于本世纪50年代后期。从50年代后期到60年代后期,主要是高等院校和科研机构为研究一些装置而使用从而开发少量产品。70年代初期,步进电机的生产和研究有所突破。70年代中期至80年年代中期为成品发展阶段,新品种高性能电机陆续被开发。自80年代中期以来,由于对步进电机精确模型做了大

2

淮南师范学院2013届本科毕业论文

量研究工作,各种混合式步进电机及驱动器作为产品广泛利用[4]。 1.3 论文的主要内容 1.3.1步进电机的工作原理

通过查阅文献对步进电机的各种运行方式进行研究,深入了解各种运行方式的特点和对步进电机控制性能的影响。 1.3.2步进电机控制的设计

考虑到电动机有各种转动方式与转速大小的控制,设计符合逻辑的开关控制方式。 1.3.3步进电机系统的硬件设计

该部分主要介绍控制步进电机系统各个部分所使用的各种硬件,并且相对所选用的硬件设计其相对应的数学逻辑关系。 1.3.4步进电机控制系统的软件设计

根据步进电机的原理和控制特点,对步进电机控制系统的软件进行分析和设计。 1.3.5程序的调试及修改

用Keil软件进行编程和调试,并且在Proteus环境下进行系统仿真。

本设计第一章介绍了系统的设计目的、意义及发展,第二章是系统的硬件设计,第三章是系统的软件设计,第四章是设计系统的仿真分析,第五章是结束语。

2 系统设计的相关理论

2.1步进电机的介绍

步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的[5]。 2.2 液晶显示器的介绍 2.2.1 液晶显示器的概述

液晶显示器,或称LCD(Liquid Crystal Display),其本事是不发光的,是通过借助外界的光线照射液晶材料而实现显示的被动显示器件。其分类方法有很多种如:按电光效应分类,按显示内容分类,按采光方式分类。

3

淮南师范学院2013届本科毕业论文

2.2.2 液晶显示器的特点

液晶显示材料的优点:无闪烁、驱动电压低、成本低廉、可靠性高、彩色显示、显示信息量大、生产过程自动化、功耗微小、对人体无危害、可以制成各种规格和类型的液晶显示器等。用液晶材料制成的计算机终端和电视可以大幅度减小体积等。液晶显示技术对显示显像产品结构产生了深刻影响,促进了微电子技术和光电信息技术的发展

[6]

2.2.3 液晶显示器的发展

1850年 普鲁士医生鲁道夫菲尔绍(Rudolf Virchow)等人就发现神经纤维的萃取物中含有一种不寻常的物质。

1877年 德国物理学家奥托·雷曼(Otto Lehmann)运用偏光显微镜首次观察到了液晶化的现象。

1883年3月14日 植物生理学家斐德烈·莱尼泽(Friedrich Reinitzer)观察到胆固醇苯甲酸酯在热熔时有两个熔点。

1888年 莱尼泽反复确定他的发现后,向德国物理学家雷曼请教。当时雷曼建造了一座具有加热功能的显微镜去探讨液晶降温结晶之过程,而从那时开始,雷曼的精力完全集中在该类物质。

1888年 出版《分子物理学》,这是对这段时间他在材料物理领域知识的总结,特别值得一提的是,他在书中首次提出了显微镜学研究方法,通过对晶体显微镜和用它所作的观察。

20世纪 化学家伏兰德(D. Vorlander)的努力由聚集经验使他能预测哪一类的化合物最可能呈现液晶特性,然后合成取得该等化合物质,于是雷曼关于液晶的理论被证明。

1922年 法国人弗里德(G. Friedel)仔细分析当时已知的液晶,把他们分为三类:向列型(nematic)、层列型(smectic)、胆固醇(cholesteric)。

1930-1960年 在G.Freidel之后,液晶研究暂时进入低谷,也有人说,1930-1960年期间是液晶研究的空白期。究其原因,大概是由于当时没有发现液晶的实际应用。但是,在此期间,半导体电子工业却获得了长足的发展。为使液晶能在显示器中的应用,透明电极的图形化以及液晶与半导体电路一体化的微细加工技术必不可缺。随着半导体工业的进步,这些技术已趋向成熟。

20世纪40年代 开发出矽半导体,利用传导电子的 n 型半导体和传导电洞的 p 型

4

淮南师范学院2013届本科毕业论文

半导体构成 pn 介面(pnjunction),发明了二极管和晶体管。在此之前,在电路中为实现从交流到直流的整流功能,要采用二极管,而要实现放大功能,要采用电子管。这些大而笨重的元件完全可以由半导体二极管和晶体管代替,不需要向真空中发射电子,仅在固体特别是极薄的膜层中,即可实现整流、放大功能,从而使电子回路实现了小型化。 接着,藉由光加工技术实现了包括二极管、晶体管在内的电子回路图形的薄膜化、超微细化。这种技术简称为微影(photolithography)。20世纪60年代,随着半导体集成电路(integrated circuit)技术的发展,电子设备实现了进一步的小型化。上述技术的进步,对于在液晶显示装置(display)中的应用是必不可少的,随着材料科学和材料加工技术的进一步发展,以及新型显示模式和驱动技术的开发,液晶显示技术获得了快速发展。

20世纪60年代 随着半导体集成电路(integrated circuit)技术的发展,电子设备实现了进一步的小型化。

1968年任职美国RCA公司的G.H.Heilmeier发表采用DS(dynamic scattering,动态散射)模式的液晶显示装置。在此之后,美国企业最早开始了数字式液晶手表实用化的尝试[7]。

3 基于AT89C51的步进电机转动方式的总体设计

3.1 系统设计的原理及组成 3.1.1 系统设计的工作原理

本设计使用4个开关分别控制步进电机的开启、关闭,步进电机的正反转和步进电机的转速。1号开关控制其启动,当按下1号开关时,电动机开始转动;2号开关控制其转速快慢,没有按下开关是默认是慢速转动,当按下2号开关时电动机开始快速转动;3号开关控制电机正反转,没有按下开关时默认是正转,按下3号开关时电动机反向转动;4号开关控制使电动机停止转动。所有的动作都会显示在LED的显示屏幕上。分别是:Reverse slow(正向慢转),Reverse fast(正向快转),Positive slow(反向慢转),Positive fast(反向快转)。 3.1.2 系统的组成

本文设计了一种基于以AT89C51单片机控制为核心的电动机正反转控制系统,系统主要从硬件设计和软件设计两方面来进行设计与研究。硬件部分主要从控制电路,输入电路及输出电路三方面进行设计,软件部分主要用C语言进行编程以实现设计要求。系统的总体设计框图如图1所示。

5

淮南师范学院2013届本科毕业论文

复位电路 显示器输出电路 晶振电路 串行通信 主控电路 电机输出电路 按键输入电路

图1 系统设计框图

3.2 系统的硬件设计

系统设计的硬件部分主要包括单片机控制模块、输入开关电路、步进电机及液晶显示器四大部分。

3.2.1 单片机控制模块的设计

单片机控制模块即单片机最小系统:单片机、复位、晶振、串行通信电路、电源。 3.2.1.1 AT89C51单片机的介绍

控制系统的核心元件是单片机,本设计采用的单片机芯片是AT89C51,它是美国ATMEL公司生产的低电压,高性能CMOS8位微处理器,片内含4k字节的可反复擦写的只读程序存储器(PEROM)和128 字节的随机存取数据存储器(RAM),该器件采用ATMEL高密度、非易失性存储器技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。片内置通用8位中央处理器(CPU)和Flash闪存存储单元,具有1000次擦写周期,三级加密程序存储器,32个可编程I/O口线,2个16位定时/计数器,6个中断源,可编程串行UART通道,低功耗空闲和掉电模式,全静态操作范围是0Hz~24MHz,功能强大的AT89C51单片机是一种高效微控制器,可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域[8-10]。AT89C51芯片总共有40个引脚,各引脚图如图2所示。

6

淮南师范学院2013届本科毕业论文

图2 单片机引脚图

各管脚说明如下: VCC:供电电压。 GND:接地。

P0口:8位,漏极开路的双向I/O口。

P1口:8位,准双向I/O口,具有内部上拉电阻。 P2口:8位,准双向I/O口,具有内部上拉电阻。 P3口:8位,准双向I/O口,具有内部上拉电阻。 P3口的第二功能,如表1所示:

表1 P3口引脚的第二功能

端口引脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 7

第二功能 RXD TXD INT0 INT1 T0 T1 WR RD 淮南师范学院2013届本科毕业论文

P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位引脚,高电平有效。

ALE/PROG:低8位地址锁存允许信号端。 PSEN:读外部程序存储器的选通信号端。 EA/VPP:外部程序存储器访问允许控制端。

XTAL1:片内振荡器反相放大器和时钟发生器电路的输入端。 XTAL2:片内震荡器反相放大器的输出端[11-13]。 3.2.1.2 晶振电路

晶振电路由两个22pF的电容和一个11.0592MHz的晶振组成。电路图如图3所示,其中XTAL1和XTAL2分别为反向放大器的输入和输出。

图3 晶振电路图

3.2.1.3 复位电路

复位电路有两种复位方式,即手动复位和上电复位,采用的是高电平复位,由一个按键、一个10K的电阻、一个1K的电阻和一个10uF的电容组成。电路图如图4所示。

图4 复位电路图

3.2.1.4 串行通信电路

串行通信电路由5个0.1uF电容和一个MAX232芯片组成,MAX232芯片采用的是美信公司生产的芯片,符合所有的RS-232C技术标准,只需要单一+5V电源供电,片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、V-,功耗低,典型供电电流5mA,内部集成2个RS-232C驱动器,高集成度,片外最低只需4个电容即可工作。电路图如图5所示。

8

淮南师范学院2013届本科毕业论文

图5 串行通信电路图

3.2.1.5 电源电路

单片机采用的是5V电源,电源电路中有一个1K的电阻和一个发光二极管组成。电路图如图6所示。

图6 电源电路图

3.2.2 SMC1602A的内部结构及工作原理

SMC1602A主要是由日立公司的HD44780、HD44100(或兼容电路)和几个电阻、电容等组成。

HD44780是用低功耗COMS技术制造的大规模点阵LCD控制器,具有简单而功能较强的指令集,可实现字符移动、闪烁等功能,与微处理器相连能使LCD显示大小应为字母、数字和符号。HD44780控制电路主要由DDRAM、CGROM、CGRAM、IR、DR、BF、AC等大规模集成电路组成。

DDRAM为数据显示RAM,用以存放要LCD显示的数据,能存储80个字符。只要将标准的ASC2码放入到DDRAM,内部控制线路就会自动将数据传送到显示器上,并显示出ASC2码对应的字符。

9

淮南师范学院2013届本科毕业论文

CGROM为字符生产器ROM,它存储了由8位字符码生成的192个5*7点阵字符和32种5*10点阵字符和32种5*10点阵字符。HD44780 8位字符编码和字符的对应关系,即内置字符集,如表2所示:

表2 HD44780内置字符集

低4位 0000 高4位 ****0000 ****0001 ****0010 ****0011 ****0100 ****0101 ****0110 ****0111 ****1000 ****1001 ****1010 ****1011 ****1100 ****1101 ****1110 ****1111 CGRA (2) (3) (4) (5) (6) (7) (8) (1) (8) ! “ # $ % & ‘ ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ ] _ \\ a b c d e f g h i j k l m n o p q r s t u v w x y z ( ) 0001 0010 0011 0100 0101 0110 0111

CGRAM为字符生产器RAM,可供使用者储存特殊造型的造型码,CGRAM最多可存8个造型。

IR为指令寄存器,负责储存MCU要写给LCD的指令码,当RS及R/W引脚信号为0且E引脚信号由1变为0时,D0~D7引脚上的数据便会存入到IR寄存器中。

DR为数据储存及,负责存储微机要写到CGRAM或DDRAM的数据,或者存储MCU要从CGRAM或DDRAM读出的数据。因此,可将DR视为一个数据缓冲区,当RS及R/W

10

淮南师范学院2013届本科毕业论文

引脚信号为0且E引脚信号由1变为0时,读取数据;当RS引脚信号为1,R/W引脚信号为0且E引脚信号由1变为0时,存入数据。

BF为忙碌信号,当BF为1时,不接收微机送来的数据或指令;当BR为0时,接受外部数据或指令。在写数据或指令到LCD之前,必须查看BF是否为0。

AC为地址计数器,负责计数写入/读出CGRAM或DDRAM的数据地址,AC依照MCU对LCD的设置值而自动修改它本身的内容。

HD44100也是采用COMS技术制造的大规模LCD驱动IC,即可当行驱动,又可当列驱动用,由20*20bit二进制移位寄存器、20*20bit数据锁存器、20*20bit驱动器组成,主要用于LCD时分割驱动[14-16]。液晶显示部分如图7所示:

图7液晶显示部分电路图

3.2.3 输入电路的设计

该部分使用开关控制输入单片机P0口高低点位,单片机接收到来自P0口的高低点位时,从而按照输入的C程序执行电动机的动作。与单片机引脚相接部分接上加入下拉电压电阻的形成高电位,开关的另一端接入地线。所以未按下开关时,单片机引脚为高电位;当按下开关时,所接的引脚就会变为地电位。

1号开关控制其启动,当按下1号开关时,电动机开始转动;2号开关控制其转速快慢,没有按下开关是默认是慢速转动,当按下2号开关时电动机开始快速转动;3号开关控制电机正反转,没有按下开关时默认是正转,按下3号开关时电动机反向转动;4号开关控制使电动机停止转动。所有的动作都会显示在LED的显示屏幕上。开关输入信号电路如图8所示:

11

淮南师范学院2013届本科毕业论文

图8输入电路电路图

3.2.4 发光二极管电路的设计

发光二极管报警电路由2个绿色和红色发光二极管组成。绿色二极管阳极接在VCC上,阴极接在p0.0口,该接口处于高电位时(即开关1没有闭合时)灯为灭的,该口处于地电位时(即开关1闭合时)该灯变亮,灯亮时指示电动机正在运行;红色二极管阴极端接在地线上,阳极接在p0.3口,该接口处于高电位时(即开关1没有闭合时)灯为亮的,该口处于地电位时(即开关1闭合时)该灯变灭,灯亮时指示电动机停止运行[17-18]。发光二极管指示电路图如图9所示。

图9发光二极管指示电路图

3.2.5 系统硬件的总体电路图

根据对以上各硬件部分的分析,可以画出系统各部分之间的接口电路图,如图10所示。

12

淮南师范学院2013届本科毕业论文

图10 系统各硬件接口电路图

3.3 系统的软件设计

本设计采用的Keil C51软件进行系统的编程,Keil C51是当前使用最广泛的的基于80C51 单片机内核的软件开发平台之一,由德国Keil Software 公司推出。uVision2是Keil Software 公司推出的51系列单片机开发工具,uVision2集成开发环境IDE是一个基于Windows的软件开发平台,集编辑、编译、仿真与一体。支持汇编语言和C语言的程序设计。一般来说,Keil 51和uVision2指的是uVision2集成开发环境。 3.3.1 系统主程序的设计

主程序设计主要是对系统各部分进行初始化,并设定好各部分开关触发信号和显示

13

淮南师范学院2013届本科毕业论文

电路程序的设计,根据上述工作原理和硬件结构的分析可画出系统主程序工作流程图,如图11所示。

开始系统初始化 电动机处于停止状态 红色指示等发光 N 是否按下开关1 Y 绿灯亮起 电动机正向慢速转动 是否按下开关2 N Y 电动机快速转动 是否按下开关3 N Y 电动机反向转动 N 是否按下开关4 循环结束

图11 系统主程序流程图

14

淮南师范学院2013届本科毕业论文

3.3.2 中断服务程序的设计

主程序实现的功能是:当单片机引脚接收到来自输入p0.0口的低电压信号时程序开始运行,等待开关输入p0.1~p0.3口的电压信号改变正在运行的状态。当P0.1或p0.2口输入的高低电压信号后,步进电机表现出相应的正反转与快速慢速,并且一直持续这一动作直至外接再次向单片机输入新的高低电压信号。当p0.3口输入低电压时,步进电机就再次进入初始状态,该程序就是运行了一个循环。

中断源发出中断申请 关中断 INT0=1;INT1=1 开中断 中断返回 图12 中断服务程序工作流程图

15

淮南师范学院2013届本科毕业论文

4 系统设计的仿真分析

通过对系统硬件和软件两方面的介绍,为了更好的验证系统设计的的功能,本设计采用Protues进行仿真。该软件是英国Lab center electronics公司出版的EDA工具软件。从1989年问世至今已经有20年的历史,在全球得到广泛使用。Proteus软件除具有和其他EDA工具软件一样的原理编辑、印制电路板制作外,还具有交互的仿真功能。它不仅是模拟电路、数字电路、模数混合电路的设计与仿真平台。更具目前世界上最先进、最完整的的多种型号未处理器系统的设计与仿真平台,真正实现了在计算机中完成电路原理图设计、电路分析与仿真、微处理器设计与仿真、系统测试与功能验证到形成印制电路板的完整电子设计、研发过程。Proteus软件由ISIS(Intelligent schematic input system)和ARES(Aduanced routing and editing software)两个软件构成,其中ISIS是一款智能电路原理图输入系统软件,可作为电子系统仿真平台;ARES是一款高级布线编辑软件,用于印制电路板(PCB)[21]。

开关都全未闭合时,即处于该系统的最初始状态,如图红色二极管发光,绿色二极管不发光,显示该电动机没有旋转。初始仿真电路图如图13所示。

16

淮南师范学院2013届本科毕业论文

图13 初始状态仿真电路图

当按下开关1后,p0.0口接低电平,红色发光二级管熄灭,绿色二极管发光,电动机开始正向慢速转动,并且液晶显示屏幕上显示positive slow(即:慢速正转)。效果图如图14所示。

17

淮南师范学院2013届本科毕业论文

图14慢速正转仿真效果图

当继续按下开关2后,p0.0-p0.1口引脚都为低电平,绿色二极管持续发光,电动机开始正向快速转动,并且液晶显示屏幕上显示positive fast(即:快速正转)。效果图如图15所示。

图15快速正转仿真效果图

18

淮南师范学院2013届本科毕业论文

当继续按下开关3后,p0.0-p0.2口引脚都为低电平,绿色二极管持续发光,电动机开始反向快速转动,并且液晶显示屏幕上显示reverse fast(即:快速反转)。效果图如图16所示。

图16快速反转仿真效果图

当继续操作断开开关2后,p0.0与p0.2口引脚为低电平,绿色二极管持续发光,电动机开始反向慢速转动,并且液晶显示屏幕上显示reverse slow(即:慢速反转)。效果图如图17所示。

图17慢速反转仿真效果图

19

淮南师范学院2013届本科毕业论文

5 结束语

本文设计了一种基于AT89C51单片机的动控制步进电动机的正反转系统,并且实现了仿真,当开启启动按钮后该系统就开始以慢速正方向旋转的方式工作,并且发光二级管由红灯亮绿灯灭变为绿灯亮红灯灭,通过控制2号与3号开关按钮实现对步进电机的速度与旋转方向的控制,最后当希望该系统回到初始状态直接按下4号开关就可实现该系统的停止。该系统具有操作简单、易懂、灵活且安装方便、智能型高、可靠性高等特点。

在论文中主要对设计的背景、发展状况及各硬件部分和软件部分进行了介绍,通过这次毕业论文设计,使我深刻了解了单片机的基本原理、单片机应用系统开发过程;使我在Keil软件编程、Protel绘图和Proteus仿真方面的知识得到进一步的加强;使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。

20

淮南师范学院2013届本科毕业论文

参考文献:

[1] 吴玉香,李艳,等.电机及拖动[M].北京:化学工业出版社,2011:1-5. [2] 李发海,王岩. 电机与拖动基础[M]. 北京:清华大学出版社,2005:1-3. [3] 陈伯时. 电机与运动控制系统[M]. 北京:机械工业出版社,2005:59-67. [4] 黄立培. 电动机控制[M]. 北京: 清华大学出版社,2003:37-39.

[5]陈隆昌,闫治安,等. 控制电机[M]. 西安:西安电子科技大学出版社,2000:49-51. [6] 张靖武. 单片机系统的设计与仿真[M]. 北京:电子工业出版社,2009:42-44. [7] 周坤. 电子科技的诞生[M]. 北京:电子工业出版社,2009:51-54.

[8] 杨加国. 单片机原理与应用及C51程序设计[M]. 北京:清华大学出版社,2009:20-28.

[9] 张培仁. 基于C语言编程MCS-51单片机原理与应用[M].北京:清华大学出版社,2003:25-33.

[10] 张毅强. 新编MCS-51单片机应用设计[M].哈尔滨:哈工大出版社,2003:45-51. [11] 张奇. 单片机应用系统设计技术-基于C语言编程[M].北京:电子工业出版社,2004:67-68.

[12] 丁元杰. 单片微机原理及应用[M].北京:机械工业出版社,2000:42-47. [13] 赵亮.单片机C语言编程与实例[M].北京:人民邮电出版社,2003:34-36.

[14] 陈忠平,等.基于proteus的51系列单片机设计与仿真[M]. 北京:电子工业出版社,2010:231-232.

[15] 周润景,景晓松.proteus在MCS-51&ARM7系统中的应用百例[M]. 北京:电子工业出版社,2006:198-204.

[16] 林志奇. 基于proteus 的单片机可视化软件仿真[M]. 北京:北京航空航天大学出版社,2006:100-102.

[17] 康华光. 电子技术基础模拟部分[M]. 北京:高等教育出版社,2006:100-102. [18] 康华光. 电子技术基础数字部分[M]. 北京:高等教育出版社,2006:115-117. [19] 肖来胜. 单片机技术实用教程[M]. 武汉:华中科技大学出版社,2004:89-94. [20] 李朝青. 单片机原理及接口技术(简明修订版)[M].北京:北京航天航空大学出版社,1998:112-120.

[21] 侯玉宝编著. 基于Proteus的51系列单片机设计与仿真[M]. 北京:电子工业出版社,2008:2-4.

21

淮南师范学院2013届本科毕业论文

附录

系统设计C程序如下: #include #define uint unsigned int #define uchar unsigned char sbit stop= P0^4; sbit direction=P0^3; sbit speed=P0^2; sbit star= P0^1; long a=155;

code tab[]={0x02,0x06,0x04,0x0C,0x08,0x09,0x01,0x03}; code tab1[]={0x03,0x01,0x09,0x08,0x0C,0x04,0x06,0x02}; code uchar a []={0x70,0x6F,0x73,0x69,0x74,0x69,0x67,0x65, 0x20, 0x66,0x61,0x73,0x74};//positive fast(正向 快速)

code uchar a1[]={0x70,0x6F,0x73,0x69,0x74,0x69,0x67,0x65, 0x20, 0x73,0x6C,0x6F,0x77};//positive slow(正向 慢速) code uchar a2[]={0x72,0x65,0x76,0x65,0x72,0x73,0x65, 0x20, 0x66,0x61,0x73,0x74};//reverse fast(反向 快速)

code uchar a3[]={0x72,0x65,0x76,0x65,0x72,0x73,0x65, 0x20, 0x73,0x6C,0x6F,0x77};//reverse slow(反向 慢速) void int0()interrupt 0; { a+=100; if(a>=65535) a=65534; }

void int1()interrupt 2; {

22

淮南师范学院2013届本科毕业论文

a-=100; if(a<0) a=0; }

void delay(n) { long I; for(i=0;iEX0=1;//打开外部中断0 IT=1;//下降沿触发中断INT0 EX=1;//打开外部中断1 IT1=1;// 下降沿触发中断INT1 EA=1;// while(1) { if(star==1) for(i=0;i<8;i++) { P1=tab[i]; delay(a); display(a[i]); if(speed=1) for(i=0;i<8;i++) { P1=tab[i]; delay(a);

23

淮南师范学院2013届本科毕业论文

display(a[i]); } } } }

24

淮南师范学院2013届本科毕业论文

致谢

首先,感谢我的指导老师刘云侠老师,本论文是在刘老师悉心指导和大力支持下完成的,在整个毕业设计制作过程中,受到刘老师很多的帮助。从设计的选题、研究计划的安排到设计的具体过程,刘老师都给予了悉心的指导。特别在完成初稿之后,刘老师不怕麻烦,在百忙之中抽出时间仔细阅读,并给出修改意见,在此对她表示衷心的感谢!

同时感谢淮南师范学院电气与信息工程学院的所有领导和老师对我的学业和成长付出宝贵的时间和辛勤的汗水;感谢09级自动化1班的同学们在学习、生活上给予我大力的支持和帮助。在此论文完成之际,我衷心的祝愿你们身体健康,工作顺利!!

25

因篇幅问题不能全部显示,请点此查看更多更全内容