基于Proteus的步进电机控制系统设计170607_第1页
基于Proteus的步进电机控制系统设计170607_第2页
基于Proteus的步进电机控制系统设计170607_第3页
基于Proteus的步进电机控制系统设计170607_第4页
基于Proteus的步进电机控制系统设计170607_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、XXX 学生姓名:学号: 学院:专业: 指导教师:2016年 5 月基于Protues的步进电机控制系统设计摘要本文设计了一种基于Protues软件的步进电机控制系统,该系统由AT89C52主控模块,LCD1602液晶显示模块,按键控制模块,步进电机模块,步进电机驱动模块构成,由AT89C52单片机产生驱动脉冲信号,来控制步进电机的运动状态,按键设定可以控制步进电机的步进方向和步进速度,并在LCD1602液晶上实时显示步进角度,步进方向以及当前速度,该设计采用仿真软件protues进行电路图的绘制并进行仿真,整个系统采用模块化设计,结构简单,具有很强的可靠性以及稳定性。关键词:AT89C52;

2、步进电机;LCD1602;Protues;按键Based on protues stepping motor control system designAbstractThis paper designs a kind of stepping motor control system based on Protues software, the system consists of main control module, AT89C52 LCD1602 LCD display module, the key control module, stepper motor module, step

3、per motor driver module, drive pulse signal generated by the single chip microcomputer AT89C52, to control the movement of step motor, set keys can control the stepper motor step and direction and step speed, and real-time display on the LCD1602 LCD stepper Angle, step and direction and the current

4、speed, the design adopts the Protues simulation software of circuit diagram drawing and carry on the simulation of the whole system USES modular design, simple structure, strong reliability and stability.Keywords: AT89C52; Stepping motor; LCD1602; Protues;keys目录1 引言12 系统方案设计及论证1设计要求1系统总体方案12.3 设计方案的

5、论证22.3.1 单片机模块的选择与论证22.3.2 电机驱动模块的选择与论证23 硬件电路设计33.1 硬件设计概述33.2 AT89C52单片机最小系统设计33.3 步进电机驱动模块设计43.3.1 步进电机43.3.2 步进电机原理43.3.3 L297介绍63.2.4 L298简介73.3.5 步进电机驱动模块设计83.4 液晶显示模块设计93.5 控制电路设计103.6 总体电路图114 程序设计及仿真114.1 主程序框图124.2 程序下载以及软件说明134.3 仿真结果135 总结17附录A部分程序代码17参考文献24致谢251 引言随着经济和科学技术的发展,步进电机的应用范围

6、越来越广泛。步进电机是一种高精度的电机执行元件,在农业、工业、智能控制领域应用的非常广泛。它的使用能提高系统的可靠性。常见的仪器如复印机、传真机、打字机、FDD、监视摄影机、照明装置、自动机械、游戏机、医疗机械等都用到了步进电机本次毕业设计中使用了电路分析与仿真软件-Protues,设计者可以根据设计需要搭建开发平台,可以将在编译器中编译好的程序加载到芯片中运行。Protues软件目前支持的编译器有Keil、IAR等。Protues软件有大量的元件库,支持大型设计,在仿真中可以观察各元件的状态。将需要的程序在Protues软件中仿真,调试好功能,再导入到相应的硬件电路中,这样可以缩短开发产品周

7、期,降低研发成本。2 系统方案设计及论证本次设计,通过编程控制单片机,实现对四相步进电机转动的控制,控制电机实现正转、反转、加速与减速运行。整个控制系统的工作过程是:通电之后,电机按照程序设计的转速和转动方向转动。当按下正(反)转按键时,通电后电机实现正(反)转;按下加速按键电机加速转动;按下减速按键电机减速转动本次设计了使用AT89C52单片机作为控制核心的四相步进电机的开环控制系统。系统总体设计方案如图2.1所示,整个步进电机控制系统以单片机为控制核心,单片机产生的脉冲信号通过功率放大器放大之后驱动步进电机转动。通过控制键盘控制部分的四个按键,可以控制步进电机正转、反转、加速、减速。为了提

8、高控制的准确性,本次设计使用了两个外部中断, 本设计通过单片机与硬件相结合实现了单片机对步进电机的精确控制和旋转方向的控制。从步进电机控制系统的设计要求可知,需要控制步进电机的转动速度和方向。对于加减速的变化控制,通常采用按键来控制速度,所以只要2个电源线,再加上一个方向线框,一根启动线可以了,所以键盘控制部分设置需要四个按键。四个键分别控制电机的正转、反转以及电机的加速和减速运行。2.3 设计方案的论证2.3.1单片机模块的选择与论证从学校实验室现有的设备和单片机的性价比考虑,本次设计可以选择的单片机有AT89S52单片机和AT89C52单片机。AT89C52是一种低功耗,高性能CMOS 8

9、位8K的闪存可编程和可擦除只读存储器(PEROM)字节的微型计算机。单片机本身带有8K字节闪存,256Kb的RAM,32个I / O接线端,两个16位的定时器/计数器,二个五向量两级中断结构,一个全双工串行口,片上振荡器和时钟电路。掉电模式保存RAM的内容,但冻结振荡器关闭,直到下一个硬件复位芯片其它功能。通过比较AT89S52单片机和AT89C52单片机两种单片机的性能和价格,AT89C52单片机CPU集成在单片机的8位闪存芯片上,这样提供了一个高度灵活的嵌入式应用系统。所以本次电路设计中选用AT89C52型号的单片机。2.3.2 电机驱动模块的选择与论证方案一:集成驱动芯片。L298N是高

10、电压和高电流全桥驱动。具有高频率、低静态电流、输出电流大、电路简单、散热效果好等特点,不容易烧坏,而且还带有控制使能端。L298N芯片抗干扰能力强,具有信号指示和续流保护功能。光电隔离技术的应用,使L298N芯片可以控制2台直流电机或步进电机,速度控制,可以很容易实现正反转。该芯片是用于电动马达驱动,操作方便,稳定性好,性能好。方案二:分立元件组成驱动电路。使用三极管元件搭建电路,电路比较复杂,并且静态电流较大,参数需要调试。搭建的电路功率小,散热性能也不好,同时饱和导通压降小。但是由分立元件构成电路价格低廉,所以在实际中应用比较广泛。但是这种电路存在工作性能不够稳定的缺点。基于以上的分析和比

11、较,我们发现,方案2采用分立元件构成驱动H桥电路相应的功率管驱动电路和匹配,虽然功率较大,但电路复杂,不符合应用程序的要求。故本系统采用方案一的芯片。3 硬件电路设计3.1 硬件设计概述本次设计的硬件电路主要包括单片机最小系统、步进电机驱动电路、显示电路及控制电路四大部分。单片机最小系统主要是为了让单片机正常工作。步进电机驱动电路主要是对单片机输出的脉冲进行功率放大,从而驱动电机转动。显示电路可以显示转速和电机的工作状态。控制电路主要由开关和按钮组成,由设计人员根据相应的工作操作。3.2 AT89C52单片机最小系统设计图3.1 单片机最小系统最小系统是一个可以用最少的组件来工作的系统。本次设

12、计中单片机最小系统主要由单片机、晶振电路、复位电路三部分组成。晶振频率为12MHz。图3.1为本次设计中单片机最小系统。3.3 步进电机驱动模块设计 步进电机(1)步进电机 步进电机可以将电脉冲信号转换为线位移或角位移。给步进电机一个脉冲信号,它就可以转动一个角度,这种工作方式比较适合用单片机进行控制。由于步进电机工作原理的特殊性,它必须通过调节脉冲信号的频率和个数来控制。由于步进电机的转动角度和转速取决于脉冲信号的频率和个数,它每接收到一个脉冲信号,就转动一个角度。所以步进电机的精度很高,在系统开环情况下就能实现高精度的控制,在工业控制领域获得了广泛的应用。由于步进电机的旋转角度是由脉冲输入

13、的数量决定的,所以步进电机也叫数字角转换器。目前,步进电机的控制主要是由环形脉冲分配器、软件环形脉冲分配器、专用集成芯片环形脉冲分配器等组成。本次毕业设计中采用了低功耗、性价比高的单片机进行电机转动控制,并且使用了软件进行环形脉冲分配。步进电机有多种工作方式。在每个工作模式中,脉冲频率越高,速度越快,但在一定程度上,步进电机不能跟上电机的频率会出现失步现象,因此,脉冲频率必须控制在步进电机允许的范围内。 步进电机原理步进电机在接收到脉冲信号后才能工作,所以不可以直接与交流或者直流电源连接,需要使用驱动器才可以工作。通过程序设计和控制,单片机可以产生环形分配器需要的脉冲序列。脉冲序列是按一定规律

14、分布的,由功率放大器放大的脉冲序列,然后被加载到输入端的步进电机驱动步进电机工作。环形分配器分两大类:第一类,软环形分配器,并通过计算机软件的脉冲序列分配。第二类,硬环形分配器,用硬件构成环形分配器,分配脉冲序列。步进电机在结构上分为三相三步和三三相双拍和三相六拍。(1)步进电机的速度控制 .如果步进电机送一个控制脉冲,它将是一个步骤,然后发送一个脉冲,这将是一个进一步的步骤。调整步进电机的脉冲频率,可以实现对步进电机进行速度的控制。(2)步进电机的起停控制 步进电机由于其结构和工作原理的特殊性,运行时会有步进感。为了提高步进电机转动时的平滑性,减小机械振动,可以通过在脉冲信号的上升沿和下降沿

15、采用细分的梯形波来改善这一状况。这样可以减小步进电机的步进角,使得步进电机运行更平稳。(3)步进电机的加减速控制 在使用脉冲信号驱动步进电机进行工作时,如果脉冲信号变化太快,步进电机的机械结构会由于惯性跟不上脉冲信号的变化,这时候会产生失步和赌转的现象。步进电机起动过程中,输入波形有一个加速过程,在结束时同样存在一个减速波形。步进电机加速加速曲线最理想的指数曲线,整个加速过程和加速过程中频率变化的规律是一个互逆的过程。为了充分利用步进电机的转矩,选定脉冲信号的加减速曲线需要符合步进电机升降过程的运行规律,这样可以缩短升降速时间,防止失步现象。(4)步进电机换向的控制 步进电机的换向动作必须在电

16、机降速停止或降到突跳频率范围之内进行,这样可以避免产生冲击而损坏电机。脉冲信号需要有一定的脉冲宽度、脉冲序列的均匀度、高低电平方式。步进电机工作时正反向的切换是是由降速换向加速3个过程组成的。步进电机有如下特点: 步进电机精度很高,适合于开环控制系统。 步进电机动态响应快,脉冲信号便于控制,使得步进电机容易启动、停止、正反转和变速。 步进电机的速度可以在一个比较宽的范围内进行平滑调整,低速运行仍然可以得到大量的转矩,所以步进电机可以直接驱动负载。步进电机带惯性负载的能力比较强。3. L297介绍L297是一款可专门用于步进电机控制的控制芯片,这款芯片可以产生4相的控制信号,芯片本身需要5v电压

17、供电才可以正常工作。通过单片机编程可以来控制步进电机的转速。L297芯片采用双列直插式20引脚封装。引脚图见下图3.2。图3.2 L297芯片引脚图L297各个引脚的功能说明如下:第1脚 SYNG-斩波器输出端。第2脚 GND-接地端。第3脚 HOME-集电极开路输出端。当此引脚电平有效时,晶体管处于开路状态。第4脚 A-A相驱动信号。第5脚 INH1-此引脚为控制A相以及B相的驱动极。当此引脚为低电平0时,A相、B相驱动控制处于禁止状态。第6脚B-B相驱动信号。第7脚C-C相驱动信号。第8脚 INH2-此引脚为控制C相以及D相的驱动级。其作用同INH1。第9脚D-D相驱动信号。第10脚 EN

18、ABLE-使能输入端。当此引脚为低电平时, A相,B相,C相,D相 以及INH1引脚,INH2引脚都为低电平。第11脚CONTROL-此引脚为斩波器功能控制端。当为低电平0时,INH1和INH2工作,当为高电平1时,A,B,C,D工作。第12脚Vcc-电源输入端,接+5v。第13脚SENS2-此引脚为C相以及D相电压反馈输入端。通过绕组电流检测进行反馈。第14脚SENS1-此引脚为A相以及B相电压反馈输入端。通过绕组电流检测进行反馈。第15脚Vref -此引脚为斩波器的基准电压输入端。第16脚OSC-此引脚为斩波器的频率输入端。第17脚CW/CCW-方向控制端。控制步进电机的转动方向,当此引脚

19、的电平发生变化时,步进电机反向旋转。第18脚CLOCK-步进时钟输入端。当该引脚输入一个低电平时,步进电机步进一个对应增量,该步进在信号 的上升沿产生。第19脚-低电平全步方式,高电平半步方式。第 20脚RESET复位端。低电平有效。系统初始化。 3.L298简介L298N 是一种双全桥步进电机驱动芯片,主要用于二相以及四相电机的驱动,它内部包含了4信道逻辑驱动电路,同时具有两个H桥的高电压,可用来驱动46V、2A以下的电机。其引脚排列如图所示。图3.3 L298引脚图 步进电机驱动模块设计步进电机直接连接交流或者直流电源时不会运动,必须与驱动电路同时使用才能发挥其功能。驱动电路由决定顺序的控

20、制电路与控制电路输出功率的换相电路组成。本次步进电机的驱动电路由L297和L298芯片构成,步进电机驱动电路图如图3.4所示。L297的四相输出接L298N 电机驱动芯片的OUT1、OUT2和OUT3、OUT4,在ENA、ENB 两个使能端为高电平,控制器只要控制4 个输入端的电平高低,就能实现小车的正转、反转等动作。3.4 液晶显示模块设计图3.4 液晶显示模块电路连接图本次设计选择了LM016L液晶模块,电路连接如图3.4所示。LM016L模块引脚说明如下:第1脚:VSS接地。第2脚:VDD接5V正电源。第3脚:VO为液晶对比度调整端口,用来调整显示器的对比度,在使用时一般通过外接一个10

21、K的电位器来调整对比度。第4脚:RS 指令/数据寄存器选择端口。第5脚:R/W,信号读写选择端口。第6脚:E端为使能信号端,当该端口信号由1跳变为0时。液晶显示模块开始进行工作。第714脚:8位数据传输口。第15脚:背光源正极。第16脚:背光源负极。本次设计中显示部分用的是XXX模块,XXX模块的数据端与单片机通过P1口的P1.0P1.7连接,显示步进电机的转速和方向。3.5 控制电路设计本设计中设置了步进电机的四种运动状态,分别为正转,反转,加速,减速,分别由四个按键开关控制,REV,FWD按键控制电机的正转和反向。当 REV、FWD 的电平发生变化时,单片机检测 P3.4 和 P3.5的电

22、平状态从而进行电机的正反转控制。图3.5为步进电机控制部分电路原理图。表1为四相单四拍脉冲分配表,表2为四相双四拍脉冲分配表。步进电机的工作是由输入电机的脉冲频率来控制步进电机的转速,通过REV、FWD 的开关来控制控制电机的加速度,根据按键次数来控制中断的次数,从而改变速度值存储区中的数据,进而改变了步进电机的输出脉冲频率最终改变了电机的转速。3.6 总体电路图总电路图如图12所示。图3.6总体电路图(包括显示电路图)步进电机的总体电路如图3.6所示,硬件电路设计部分,以AT89C52单片为核心控制器件,设计了步进电机控制系统。整个硬件部分由单片机最小系统、步进电机驱动电路、液晶显示电路、控

23、制电路和电源部分组成。4 程序设计及仿真通过对步进电机控制系统的分析,单片机需要控制步进电机随时实现正转、反转、加速、减速,本次采用了效率较高的中断方式来实现。源程序由主程序,定时器中断程序,外部中断1以及外部中断0等四部分组成。主程序的主要作用对系统进行初始化设置以及开关检测。当开关闭合时系统开始进行工作,反之,当开关断开后系统就停止工作。4.1 主程序框图程序流程框图如图4.1所示。系统在进行工作时需要先进行初始化设置,初始化完成后进行定时器设置,当定时器T0工作时,步进电机进入正转运行状态,LCD1602进行实时显示步进电机的转速以及运行状态,同样,当定时器T1工作时,步进电机进入反转运

24、行状态,液晶显示反转转速以及反转状态。中断0触发后进行减速控制,中断1触发后进行加速控制,液晶显示模块进行速度以及运动状态的显示。根据定时器中断次数来判断步进电机的运行方向,进而控制正反转改,通过按键来确定外部中断,进而改变步进电机输出脉冲频率,即改变了电机的转速。当按正转控制按键时,步进电机进行正转,转速为400n/min,当按反转控制按键时,步进电机进行反转,转速依然为400n/min,当按减速控制按键时,步进电机减速,转速为303n/min,当按加速控制按键时,步进电机加速,转速为500n/min,不断按加速按键或者减速按键,步进电机速度会进行步进加速或者减速。4.2 程序下载以及软件说

25、明本设计采用的编程软件为keil,采用的仿真软件为Protues,同时采用keil与Protues级联调试仿真的步骤如下:1.keil中新建工程,同时新建c文件,点击保存,并将c文件添加到所建工程中。2.在所建c文件中编写程序,编写完成后点击编译,若编译出错,检查程序是否有语法以及格式错误并进行修改,直至编译无报错。3.点击输出文件设置快捷按钮output,勾选生成HEX文件,重新进行编译。4.Protues中新建原理图文件,根据所需器件进行原理图的绘制。5.双击AT89C52单片机,然后在弹出对话框中选择由keil软件生成的HEX文件,点击ok。6.单击Protues中的仿真按钮进行仿真。7

26、.点击正转控制按键,按键导通,步进电机进行正转,显示模块显示点击速度以及运动状态,同样,其他状态也依此方式进行仿真。4.3 仿真结果将编写好的C语言程序在keil软件中运行,并修改错误,直至最后没有警告和错误,然后进行编译生成HEX文件,然后与Protues软件连接,导入ProtuesProtues软件中的仿真结果界面。图正转仿真结果图转仿真结果,闭合原理图上的FEED按键,点击Protues软件的运行按钮。电路图上的各个接线引脚会呈现动态的彩色,步进电机正转,液晶显示器上显示字符REV(正转),转速400r/min,图4.3 反转仿真结果图4.3为步进电机反转仿真结果,闭合原理图上的REV按

27、键,点击Protues软件的运行按钮,电路图上的各个接线引脚会呈现动态的彩色,电机进行反转,液晶显示器上显示FZ(反转),转速400r/min,。图4.4 加速仿真结果图4.4为步进电机加速转动的仿真结果图。闭合原理图上的FEED按键,点击Protues软件的运行按钮,电路图上的各个接线引脚会呈现动态的彩色,步进电机反转。点击原理图上的SPEED按键,步进电机加速转动,液晶显示器上显示FZ(反转),速度由400 r/min变为500r/min. 图4.5 减速仿真结果图4.5为步进电机减速转动的仿真结果图,闭合原理图上的FEED按键,点击Protues软件的运行按钮,电路图上的各个接线引脚会呈

28、现动态的彩色,步进电机反转。点击原理图上的SOLW DOWN按键,步进电机减速转动,液晶显示器上显示FZ(反转),速度由400 r/min变为300r/min.从图4.2-4.5,可以看出本次设计的控制系统完全实现了设计要求的功能:电机正转以及反转,加速,减速运行。满足设计要求。将C语言程序在Keil中编译之后导入到Protues软件中运行,发现设计的电路可以正常工作,实现了论文要求的功能,步进电机可以正常的正转、反转、加速和减速。但是由于本次设计时间比较仓促,加上硬件和软件条件的不足,整个步进电机控制系统的讨论不够详细,步进电机转速控制的精度还需要进一步提高。由于选择的器件的原因,相关实验做

29、得不够完善,后续有待进一步的提高。同时本次毕业设计中,对电源供电部分的设计也比较粗放。在实际的电路板制作中,外界的供电电压不可能正好适合电路中的芯片电压,需要用电压转换芯片对电路的电压进行转换,同时需要考虑电压转换芯片的功耗和功率,这些都是以后在实际应用中需要继续研究的问题。5 总结本次毕业设计从选题到系统功能的实现,是一个让人不断进步和成长的过程,不仅端正了我的学习态度,还增强了我对电路设计的兴趣。做毕业设计的整个过程,我学习到了很多新知识,从开始对单片机很肤浅的了解到整个电路的设计;从对编程没有信心甚至是惧怕到独立编写单片机的控制程序并实现其功能等,这对我都是莫大的鼓励,也增强了我的自信心

30、。经过自己认真学习C语言编程知识,学习keil软件知识,从开始编写出简单的程序,到最后编写出复杂的单片机程序是一个不断进步的过程。整个毕业设计中感谢指导老师和身边的同学对我的帮助和督促。在电路软件的设计与调试过程中,我学习到了许多以前不曾接触到的知识,增长了编程经验。同时体会到知识不仅在于应用,更是一个学习和积累经验的过程,这不仅需要对工作内容有充分的认识,也需要严谨,认真和坚忍不拔的精神。整个过程让我学习到了很多,也给我以后的工作和生活态度产生了重要的积极影响。以后涉及到步进电机的控制系统将会越来越智能化、微型化以及网络化。本设计对步进电机控制以及应用所做的研究有所不足,我们会在现有的基础上

31、,不断的进行创新以及改进,创造新的技术和方法,最终将它们运用到实际工业生产中,获取最大的经济效益。附录A 部分程序代码#include "AT89C52.h"int delay();void inti_lcd();void show_lcd(int);void cmd_wr();void ShowState();void clock(unsigned int Delay) ;void DoSpeed(); /计算速度/正转值#define RIGHT_RUN 1/反转值#define LEFT_RUN 0sbit RS=0xA0;sbit RW=0xA1;sbit E=0x

32、A2;char SpeedChar="Speed(n/min):"char StateChar="Run state:"char STATE_CW="FZ"char STATE_CCW="REV"char SPEED3="050"unsigned int RunSpeed=50; /速度unsigned char RunState=RIGHT_RUN; /运行状态main()/*定时器设置*/TMOD=0x66; /定时器0,1都为计数方式;方式2; EA=1; /开中断TH0=0xff; /定

33、时器0初值FFH;TL0=0xff;ET0=1;TR0=1;TH1=0xff; /定时器1初值FFH;TL1=0xff;ET1=1;TR1=1;IT0=1; /脉冲方式EX0=1; /开外部中断0:加速IT1=1; /脉冲方式EX1=1; /开外部中断1:减速inti_lcd();DoSpeed();ShowState();while(1)clock(RunSpeed);P0_1=P0_10x01; /定时器0中断程序:正转void t_0(void) interrupt 1RunState=RIGHT_RUN;P0_0=1;P1=0x01;cmd_wr();ShowState();/定时器1

34、中断:反转void t_1(void) interrupt 3 RunState=LEFT_RUN;P0_0=0;P1=0x01;cmd_wr();ShowState(); /中断0:加速程序void SpeedUp() interrupt 0 if(RunSpeed>=12)RunSpeed=RunSpeed-2; DoSpeed();P1=0x01;cmd_wr();ShowState();/中断1:减速程序 void SpeedDowm() interrupt 2 if(RunSpeed<=100)RunSpeed=RunSpeed+2;DoSpeed();P1=0x01;c

35、md_wr();ShowState();int delay() /判断LCD是否忙 int a;start :RS=0;RW=1;E=0;for(a=0;a<2;a+);E=1;P1=0xff;if(P1_7=0)return 0;elsegoto start;void inti_lcd() /设置LCD方式P1=0x38;/设置16x2显示cmd_wr();delay();P1=0x01; /清除cmd_wr();delay();P1=0x0f;cmd_wr();delay();P1=0x06;/光标移动设置cmd_wr();delay();P1=0x0c;/显示开及光标设置cmd_w

36、r();delay();void cmd_wr() /写控制字RS=0;RW=0;E=0;E=1;void show_lcd(int i) /LCD显示子程序P1=i;RS=1;RW=0;E=0;E=1;void ShowState() /显示状态与速度 int i=0;while(SpeedChari!='0')/char SpeedChar="SPEED(n/min):"delay();show_lcd(SpeedChari);i+; delay();P1=0x80 | 0x0d;/数据首地址为80H,所以数据地址为80H+地址码(0-27H,40-67

37、H) cmd_wr();i=0;while(SPEEDi!='0')delay();show_lcd(SPEEDi);/SPEED3="050"i+; delay();P1=0xC0;cmd_wr();i=0;while(StateChari!='0')delay();show_lcd(StateChari);/char StateChar="Run state:"i+; delay();P1=0xC0 | 0x0A;/0x0c显示开及光标设置cmd_wr();i=0;if(RunState=RIGHT_RUN)while

38、(STATE_CWi!='0')delay();show_lcd(STATE_CWi);/char STATE_CW="FW" i+; elsewhile(STATE_CCWi!='0')delay();show_lcd(STATE_CCWi);/char STATE_CCW="REV" i+; void clock(unsigned int Delay) /1ms延时程序 unsigned int i;for(;Delay>0;Delay-)for(i=0;i<124;i+);void DoSpeed()SP

39、EED0=(1000*20/RunSpeed/100)+48;SPEED1=1000*20/RunSpeed%100/10+48;SPEED2=1000*20/RunSpeed%10+48;参考文献1王文华.基于80C51单片机的智能小车设计.山西电子技术.2010,第4期2董涛,刘进英,蒋苏. 基于单片机的智能小车的设计与制作.计算机测与控制.2010第2期3陈永真,宁武,蓝和慧.新编全国大学生电子设计竞赛试题精选.第一版.电子工业出版社,20094高吉祥,唐朝京.全国大学生电子设计竞赛系列教程数字系统与自动控制系统设计第一版.电子工业出版社,20075郑峰,王巧芝,陈绘兵.51单片机应用系统典型模块开发大全.第一版.中国铁道出版社.2010:433-433,446-4466Marcus Nadenau.Integration of human colour visi

温馨提示

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

评论

0/150

提交评论