直流电机正反转控制
L298N控制直流电机正反转

L298N控制直流电机正反转一、概述在现代工业自动化和机械设备中,直流电机因其控制简单、响应迅速等特点而被广泛应用。
直流电机的控制并非一件简单的事情,特别是要实现其正反转功能,就需要一种可靠的电机驱动器。
L298N是一款常用的电机驱动器模块,它基于H桥驱动电路,可以有效地控制直流电机的正反转,并且具备过载保护和使能控制功能,使得电机控制更为安全、可靠。
L298N模块内部集成了两个H桥驱动电路,可以同时驱动两个直流电机,且每个电机的驱动电流可达2A,使得它适用于驱动大多数中小型的直流电机。
L298N模块的控制逻辑简单明了,只需通过控制其输入逻辑电平,即可实现电机的正反转、停止等功能。
掌握L298N 模块的使用方法,对于熟悉和掌握直流电机的控制具有重要的意义。
在接下来的内容中,我们将详细介绍L298N模块的工作原理、控制逻辑、驱动电路连接方法以及在实际应用中的使用技巧,以帮助读者更好地理解和应用L298N模块,实现直流电机的正反转控制。
1. 简述直流电机在工业和生活中的重要性直流电机,作为一种重要的电能转换和传动设备,在工业和生活中发挥着至关重要的作用。
它们广泛应用于各种机械设备中,成为驱动各种工业设备和家用电器运行的核心动力源。
在工业领域,直流电机的重要性无可替代。
它们被广泛应用于各种生产线上的机械设备,如机床、泵、风机、压缩机、传送带等。
这些设备需要稳定、可靠的动力源来驱动,而直流电机正好满足这些需求。
它们具有高效、稳定、易于控制等优点,能够实现精确的速度和位置控制,从而提高生产效率和产品质量。
直流电机还在交通运输领域发挥着重要作用。
例如,电动汽车、电动火车、无人机等新型交通工具都采用了直流电机作为动力源。
这些交通工具需要高效、环保的动力系统来驱动,而直流电机正是满足这些需求的理想选择。
在生活中,直流电机也无处不在。
它们被广泛应用于各种家用电器中,如电扇、吸尘器、洗衣机、冰箱、空调等。
这些家电需要稳定、可靠的动力源来运行,而直流电机正是这些家电的核心动力源。
实现电机正反转的方法

实现电机正反转的方法电机正反转是通过控制电机电源极性的变化来实现的。
一般来说,电机正反转的控制可以通过以下几种方式实现:使用直流电机时可以通过改变电源的正负极性来控制电机的正反转;使用交流电机时可以通过改变电源相位的方式来控制电机的正反转。
一、直流电机正反转控制1.使用电平转换器为了实现电机的正反转,可以使用电平转换器来控制电机的极性。
电平转换器通常包括可变电阻、开关、继电器等元件。
在电机的两个输入端之间增加电平转换器,通过该转换器的控制开关,可以改变电源的正负极性,从而控制电机的正反转。
2.使用双极性H桥电路双极性H桥电路也可以用于直流电机的正反转控制。
该电路主要由四个开关管组成,可以通过控制开关管的通断来改变电机的输入电压极性,从而实现电机的正反转。
双极性H桥电路通常会安装在电机驱动器中,通过外部信号控制开关管的通断状态来实现电机的正反转。
3.使用电机驱动器电机驱动器是一种电子设备,可以用于电机的正反转控制。
电机驱动器可以通过控制电机输入的电流方向和大小来控制电机的正反转。
通常,电机驱动器中会安装有能够改变电机输入电流方向的开关元件,通过改变开关元件的状态可以改变电流的方向,从而控制电机的正反转。
二、交流电机正反转控制1.使用交流电机控制器交流电机控制器是专门用于交流电机正反转控制的装置。
它可以通过改变交流电源的相位来实现电机的正反转。
通常,交流电机控制器会安装有用于控制相位的开关元件,通过改变开关元件的状态可以改变相位的顺序,从而控制电机的正反转。
2.使用单相电机正反转控制开关单相电机正反转控制开关是一种特殊的开关装置,可以用于单相交流电机的正反转控制。
该开关通常包括多个开关按钮,通过按下不同的开关按钮可以改变电源相位的顺序,从而控制电机的正反转。
总结:电机正反转的实现方法可以根据所使用的电机类型的不同而不同。
对于直流电机,可以采用电平转换器、双极性H桥电路、电机驱动器等方法;对于交流电机,可以采用交流电机控制器、单相电机正反转控制开关等方法。
直流电机的正反转

直流电机的正反转直流电机是一种电能变换为机械能的装置,通过改变电流的方向可以实现正向和反向的转动。
正向转动是指电机按设定方向的正转运行,而反向转动则是电机按相反方向运行。
下面是关于直流电机正反转的相关参考内容。
1. 直流电机的原理和结构直流电机是由电枢、磁场、电刷及换向器等部件组成的。
电枢是由导电线圈绕制而成,用于产生电磁场。
磁场由磁极和磁体组成,用于产生磁场。
电刷是将电能传输到电枢的元件。
换向器则用于改变电流的方向。
2. 正向转动原理当给直流电机通电后,导电线圈中产生的磁场与磁极的磁场相互作用,产生一个力矩使电机转动。
在正向转动情况下,电流会从电源的正极流入导线圈,经过分配器和刷子进入电枢,然后流到电源的负极。
这样,导线圈中产生的磁场会与磁极的磁场相互作用,产生一个力矩,使电机的转轴按设定方向正转。
3. 反向转动原理反向转动和正向转动的原理相同,只是需要改变电流的方向。
在反向转动情况下,电流会从电源的负极流入导线圈,经过分配器和刷子进入电枢,然后流到电源的正极。
这样,导线圈中产生的磁场会与磁极的磁场相互作用,产生一个力矩,使电机的转轴按相反的方向反转。
4. 实现正反转的方法实现直流电机的正反转有多种方法,其中最常见的是通过换向器实现。
换向器可以改变电流的方向,使电机转向。
换向器通常由一个环形基体和多个接触点组成,接触点会轮流与电刷接触,从而改变电流的方向。
5. 控制直流电机的转向为了实现正反转,可以通过控制电源的接线方式来改变电流的方向。
对于有直流电源的电机来说,通过改变电源的正负极连接位置,可以实现正向和反向的转动。
另外,使用电子器件如H桥驱动电路也可以实现直流电机的控制。
综上所述,直流电机的正反转是通过改变电流的方向来实现的,正向转动时电流从正极流入导线圈,反向转动时电流从负极流入导线圈。
实现正反转可以通过换向器以及控制电源的接线方式来实现。
这只是正反转的基本原理和方法,实际应用中还有更多复杂的控制装置和电路。
直流电动机正反转控制方法

直流电动机正反转控制方法直流电动机正反转控制方法直流电动机是广泛应用于工业和家庭的电动机之一,可以通过调整不同的控制方法,在不同的应用场景中实现不同的控制目的。
其中,正反转控制是直流电动机应用的常规控制之一,本文将介绍几种常见的直流电动机正反转控制方法。
1. 简单交换极性法这种方法是最简单和常见的正反转控制方法之一。
由于直流电机是由磁阻力和电动势两个构成的,当它的电源极性改变时,磁场和电动势也相应地改变,因此电机的旋转方向也会发生变化。
简单来说,通过交换电动机连接的正负极,可以实现直流电动机的正反转控制。
但是,这种方法在实际工作中的应用范围有限,因为在许多场合下,交换电源极性是不现实的。
2. 手动切换反转器法该方法需要一个手动反转器用于可更改电动机的电源极性。
反转器是一个切换装置,中间位置为关闭状态,向左和向右则分别实现正向和反向,根据需要转动反转器来手动改变电源的极性,从而控制电动机的方向。
该方法比较简单且价格便宜,但只适用于需要低频正反转的场合,而且需要人工操作。
3. 电子反转器法电子反转器是一种电子设备,它可以通过更改电动机的电源极性,实现直流电动机正反转控制。
该方法通常采用大小不同的 MOSFET 晶体管,通过激励电路控制 MOSFET 晶体管从而实现电源极性的更改。
这种方法具有操作灵活、反应迅速、稳定性好等优势,并且可以结合其他电子设备进行远程控制和自动化控制。
4. 程序控制反转器法这种方法通常应用于大型机器和复杂生产线。
它通过对反转器的编程控制实现电动机的正反转控制,相比较手动切换反转器法,节省了操作成本和时间,同时,采用程序控制反转器无需人工参与,提高了自动化程度。
但该方法需要专门的软件和控制程序,因此成本较高。
结论控制直流电机正反转的方法有很多种,不同的方法有不同的优缺点。
选择应该根据工作环境、电机负载的大小和形状、控制要求等多个因素进行综合考虑。
需要根据具体情况选择最适用的方法,以满足生产需求。
说明直流电机正反转控制的原理

说明直流电机正反转控制的原理
直流电机正反转控制是控制直流电机正转和反转时所必须知晓的理论知识。
直流电机
的运行方向取决于电流的流向,而电流的流向取决于电源与电机线圈之间的导通方式,也
就是说根据电源的连接模式决定了直流电机的正反转方向。
首先需要搞清楚的是,直流电机的正转与反转是通过改变其电源的连接情况来实现的,即改变电源的极性来实现电机正反转。
当电源与直流电机的线圈之间的连接方式为正向,
即共塞端线圈与电源的正极连接,而开始端线圈与电源的负极连接时,就会产生电流经线
圈逆时针流动,从而使直流电机反转。
反之,当其极性改变为负向,即共塞端线圈与电源
的负极连接,而开始端线圈与电源的正极连接,就会使得其电流经线圈顺时针流动,驱动
直流电机正转。
要正确控制电机的正反转方向,需要通过电流的流向来实现。
电机内部有一种叫磁场
方向反转的现象,当其转向或电源极性发生改变时,磁场也会随之改变,从而影响到电流
流向,从而达到控制直流电机的正反转的效果。
而要想正确操作直流电机的正反转,一般
要利用双极型开关,其原理是用这种双极型开关控制电源的极性,从而控制磁场的方向,
从而实现直流电机的正反转。
另外,还可以通过中继技术来实现直流电机正反转的控制。
其原理是利用一个中继场
和两个直流电源,把这两个直流电源不同步地投入中继场中,就可以产生一个相对转动的
磁场,从而得到控制电机正反转的作用。
总之,直流电机正反转控制就是根据电源的连接模式改变电流的流向来实现直流电机
正反转,还可以借助双极型开关实现,或者借助中继募集把控,从而实现电机正反转控制。
电机正反转控制原理

电机正反转控制原理
电机正反转控制原理是指通过改变电机的输入电压和电流方向,控制电机的旋转方向。
下面将介绍电机正反转控制的基本原理。
首先,我们需要了解电机的构成。
一个典型的直流电机由定子和转子组成。
定子中有一组线圈,称为励磁线圈,它与电源相连。
转子上有一个永磁体或电枢,它可以在磁场中旋转。
正转控制是指将电机旋转方向设置为正向(顺时针)转动。
反转控制则是将电机旋转方向设置为反向(逆时针)转动。
实现电机正反转控制的关键是要能够改变励磁线圈和电枢之间的电流方向。
在电机正转控制过程中,励磁线圈和电枢之间的电流方向应该满足以下条件:励磁线圈与电源正极连接,电枢与电源负极连接。
这样,励磁线圈所产生的磁场和电枢中的磁场会互相作用,引起转子旋转,从而使电机实现正向转动。
在电机反转控制过程中,励磁线圈和电枢之间的电流方向则应该反转:励磁线圈与电源负极连接,电枢与电源正极连接。
这时,励磁线圈和电枢中的磁场方向也发生了改变,导致转子反向旋转,从而实现电机的反向转动。
为了实现电机正反转控制,通常会使用一个电机驱动器或控制器,如直流驱动器或可编程控制器(PLC)。
驱动器或控制器
可以接收来自用户或外部信号的指令,然后根据指令改变电机输入电压和电流的极性,从而控制电机的旋转方向。
总之,电机正反转控制的原理在于改变电机励磁线圈和电枢之间的电流方向,从而改变磁场的方向,进而控制电机的旋转方向。
电机正反转控制通常使用电机驱动器或控制器来实现。
直流电机正反转电路控制图

FU SB3
16
1、线号顺序自右 向左,按回路 进行;
2、每个连接点不 超过两根引线。
3、最后接自保触点。
哈哈!
这叫顺藤
1
摸瓜
KM1
SB1
KM2
5
4
3
FR
2
8
7
KM1
9
12
SB2
KM2
KM1
11
10
14
KM2
13
三、接线、检查注意事项
• 按照电路图接线,从头到尾、顺藤摸瓜,后结分叉。 • 通电前检查:按图理线,万用表电阻档检测(分别按住
KM1 KM2 电气互锁
利用复合 按钮的触 点实现互 锁控制称 机械互锁。
含有双重互锁的正反转控制
SB SB1
断开 后闭合
KM1 SB2
闭合 KM2 当电机正转时, 按下反转按钮SBR
KM2 KM1 先断开
KM1 KM2
恢复闭合
停止正转 电机反转
断电 通电
二、从原理图中看控制回路怎样接线
AB C
和松开解除其和按钮测量主回路、控制回路两端通断情 况)。 • 带电检查:万用表交流电压档检测(电源、线圈、常开 触电)
0
2
10
5 57
0 10
直流电动机正反转的控制线路
1、先要搞清电路原理图,禁止盲目接线 2、先接主回路,再接控制回路 3、通电前一定要进行仔细检查
1、先要搞清电路原理图,禁止盲目接线 2、先接主回路,再接控制回路 3、通电前一定要进行仔细检查
“联锁”触点
. . SB SB1 KM2 KM1 通电
按下S
KM1 SB2
KM1 KM2
无刷直流电机正反转控制原理

无刷直流电机正反转控制原理咱先得知道无刷直流电机是啥。
这无刷直流电机啊,就像是一个超级聪明又有点小脾气的家伙。
它没有传统电机那些电刷,靠的是电子换相来让电机转起来。
你可以把它想象成一群小伙伴在玩接力赛,只不过这个接力赛是为了让电机的转子持续转动。
那它怎么就能正转反转呢?这就涉及到电机的绕组和控制电路啦。
电机的绕组就像是电机的肌肉,而控制电路呢,就是它的大脑。
对于无刷直流电机的正转,控制电路会按照一定的顺序给绕组通电。
比如说,先给A相绕组通电,然后是B相,再是C相,就像在给电机的肌肉有节奏地发送信号,让它按照一个方向开始转动。
这个顺序就像是一种魔法咒语,一旦念对了,电机就欢快地朝着一个方向转起来了。
这时候电机就像一个听话的小宠物,按照你的指令朝着前方奔跑。
可是反转呢?这就更有趣啦。
控制电路这个小机灵鬼,它会改变给绕组通电的顺序。
原本是A - B - C的顺序,现在变成了C - B - A的顺序。
这就相当于让电机的肌肉收缩和伸展的顺序完全反过来了。
就好像你原本是向前推一个东西,现在变成了向后拉,电机就会朝着相反的方向转动。
这就像是给电机说:“小电机,咱换个方向走走呗。
”然后电机就很听话地倒着转起来了。
在这个过程中啊,还有个很重要的东西叫霍尔传感器。
这霍尔传感器就像是电机的小眼睛。
它能感知电机转子的位置。
为啥这很重要呢?因为控制电路要根据转子的位置来准确地给绕组通电啊。
如果没有霍尔传感器这个小眼睛,控制电路就像个盲人摸象,不知道啥时候该给哪一相绕组通电,电机要么就转得乱七八糟,要么就干脆不转了。
而且啊,这个原理在生活中的应用可多了去了。
像咱们的电动自行车,电机正转的时候就带着我们向前跑,要是想倒车呢,电机反转就可以啦。
还有那些小风扇,有时候我们想让风朝着我们吹,有时候又想让它换个方向吹吹别的地方,这都靠无刷直流电机的正反转控制呢。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(课程设计说明书(2015/2016 学年第二学期)课程名称:单片机应用技术课程设计题目:直流电机正反转控制专业班级:电气工程及其自动化1321班学生姓名:学号: *********指导教师:等设计周数:两周设计成绩:2016年6月 24日目录一、课程设计目的-----------------------------------3二、课程设计任务及要求-----------------------------32.1 原始数据及主要任务------------------------------------------32.2 技术要求----------------------------------------------------3三、单片机简介-------------------------------------3四、软件设计---------------------------------------44.1 系统分析及应用种类-------------------------------------------44.2 系统设计-----------------------------------------------------5五、电路设计 --------------------------------------55.1 电机驱动电路设计---------------------------------------------55.2 显示电路设计-------------------------------------------------6 5.3 按键设计-----------------------------------------------------6 5.4 Proteus 仿真图-----------------------------------------------75.5 Protel 99se 原理图-------------------------------------------7六、程序设计---------------------------------------8七、操作控制--------------------------------------13八、心得体会--------------------------------------14九、参考文献--------------------------------------14一、课程设计目的通过长达两周的课程设计,加深对《单片机》课程所学理论知识的理解,运用所学理论知识解决实际问题。
结合课程设计的内容,学会利用Protel软件绘制电路原理图,掌握电路的设计与组装方法,进行软硬件联机调试。
学会查阅相关专业技术资料及设计手册,提高进行独立设计的能力并完成课程设计相关任务。
二、课程设计任务及要求2.1 原始数据及主要任务1.设计直流电机控制电路。
2.设计数码管显示电路。
3.设计开关电路。
4.分配地址,编写系统程序。
5.利用Protel设计硬件电路原理图和PCB图。
6.软硬件联机调试。
7.书写设计报告。
2.2 技术要求设计一个以MCS-51 单片机为核心,使用I/O 口控制三极管连接继电器驱动小型,直流电机,控制正反转。
用两个数码管分别显示两个正反转控制开关控制电机正反转的次数。
三、单片机简介AT89C51单片机,其内部带有4KB的ROM。
无需扩展外部程序存储器。
其中:VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
P3口也可作为AT89C51的一些特殊功能口:P3.0 RXD(串行输入口);P3.1 TXD(串行输出口);P3.2 /INT0(外部中断0);P3.3 /INT1(外部中断1);P3.4 T0(记时器0外部输入);P3.5 T1(记时器1外部输入);P3.6 /WR(外部数据存储器写选通);P3.7 /RD(外部数据存储器读选通)。
RST:复位输入。
EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器,不管是否有内部程序存储器。
当/EA端保持高电平时,此间内部程序存储器。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
四、软件设计4.1 系统分析及应用种类:应用的软件有 Protel99se Proteus7.5 Keil uVision4.1 Protel99se的应用(1)在桌面上新建立文件夹重名名为直流电机正反转控制(2)打开Protel99se软件(3)运行Protel99se(4)点击File 文件New新建(5)注意保存形式为.DDB2 Proteus7.5的应用(1)打开Proteus7.5软件。
(2)在左上文件中新建设计。
(3)在界面的正上方的“库”中搜索要用的元件,然后拖入新建设计中。
(4)连线,连线有三种无模式连线,自动连线模式,动态光标显示。
(5)移动元件备注元件等。
3 Keil uVision4 的应用(1)打开 Keil uVision4 ,点击project,在新建 Keil project。
(2)首先要选择保存的途径,在新建文件名,最后保存文件。
(3)保存文件啊后会弹出窗口,选择要运行的文件,选好后点击OK会弹出“是”或“否”,只需按否。
(4)新建编写程序窗口。
(5)在新建编写程序窗口写程序。
(6)保存程序文件必须是.C。
(7)最后,将相关的程序放到Protuse软件中进行仿真。
4.2 系统设计:根据课程设计要求在各个软件中进行设计。
1.首先应用Protel99se进行原理图设计,(1)在Protel99se中先设计单片机画出80C51引脚图。
(2)在Protel99se中设计画出共阳极数码管的引脚图。
(3)然后再Protel99se设计原理图界面插入设计的单片机引脚元件和共阳极数码管引脚元件,按课程要求设计电路,其次进行链接元件。
2. 设计原理通过后,在Proteus7.5 进行设计图的修饰和绘制。
3. 在Proteus7.5 中绘制好原理图,然后在Keil uVision4中按要求编写设计程序。
4. 编写好程序在Keil uVision4中编译无误后将程序导入Proteus7.5的原理图中进行仿真。
五、电路设计1、电机驱动电路设计:驱动电路为三极管驱动的桥式电路。
2.显示电路设计采用LED共阴极数码管动态显示数据与个项参数,方法简单,容易控制,如图:3.按键设计该系统中只运用到三个控制按钮,即“正转”,“反转”,“停止”,由于按钮较少,所以采用独立键电路,这种按键电路的按键结构相对行列式按键电路更简单。
如图:4、Proteus 仿真图5. Protel 99se原理图六、程序设计#include <reg51.h>#include <intrins.h>#define INT8U unsigned char#define INT16U unsigned int#define S1_ON() (P3 & (1<<0)) == 0x00 //正转#define S2_ON() (P3 & (1<<2)) == 0x00 //停转#define S3_ON() (P3 & (1<<1)) == 0x00 //反转#define Forward 0#define Stop 1#define Backward 2#define u8 unsigned char#define s8 signed char#define u16 unsigned short#define s16 signed short#define u32 unsigned int#define s32 signed int#define fp32 float#define fp64 doublesbit w1= P1^2;sbit w2=P1^3;#define DIG_SEG P2 //段选u8 code u8DigTab[18] ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x00,0x39,0x5e,0x79,0x71,0x40,0x00};//0、1、2、3、4、5、6、7、//8、9、A、B、C、D、E、F、//-u8 idata u8DigShow1;u8 idata u8DigShow2;u8 idata u8DigShow3;u8 idata u8DigShow4;u8 u8DigShowTemp = 0;void delay_ms(u16 cnt){u16 x;for( ; cnt>0; cnt--){for(x=110; x>0; x--);}}//----------------------------------------------------------------- // 延时函数//----------------------------------------------------------------- void delay_us(INT16U x) { for(; x>0; x--) _nop_(); }//----------------------------------------------------------------- // 主程序//-----------------------------------------------------------------/************************************************************** 函数名 : dis_dri* 函数功能 : 数码管扫描函数* 输入 : 无* 输出 : 无**************************************************************/ void dis_dri(void){static u8 u8DisStep = 1;DIG_SEG = 0x00;switch(u8DisStep){case 1: //显示第1位{u8DigShowTemp=u8DigTab[u8DigShow1];DIG_SEG = u8DigShowTemp;w1=0;w2=1;}break;case 2: //显示第2位{u8DigShowTemp=u8DigTab[u8DigShow2];DIG_SEG = u8DigShowTemp;w1=1;w2=0; }break;}u8DisStep++;if(u8DisStep>2) //扫描完8个数码管后,重新从第一个开始扫描{u8DisStep=1;}}void main(){TMOD |= 0x01;TH0 = 0xf8;TL0 = 0x2f;//(65535-63535)TR0 = 1;//ET0 = 1;//ES=1;EA = 1;u8DigShow1 =0;u8DigShow2 =0;u8DigShow3 =0;u8DigShow4 =0;while (1){int speed = 200;char str_flag;char cnt_a;char cnt_b;if(S2_ON()){P0 = ~(1<<Stop);M_DIR = 0;M_PWM = 0;str_flag = 0;continue;}if(S1_ON()){delay_ms(10);if (S1_ON()){while((P3 & (1<<0)) == 0x00);M_DIR = 0;P0 =~(1<<Forward);str_flag = 1;if (++cnt_a>10){cnt_a = 1;}u8DigShow1 = cnt_a%10;}}if (S3_ON()){delay_ms(10);if (S3_ON()){while((P3 & (1<<1)) == 0x00);if (++cnt_b>10){cnt_b = 1;}u8DigShow2 = cnt_b%10;}M_DIR = 1;P0 =~(1<<Forward);str_flag = 1;}if(Key_INC ==0)speed = speed<400?speed+1:400;if(Key_INC == 0) speed = speed>0?speed-1:0;if (str_flag == 1){M_PWM =1;delay_us(speed);M_PWM = 0;delay_us(400-speed);}}}void time0_interrupt() interrupt 1{dis_dri();TH0 = 0xf8;TL0 = 0x2f;//(65535-63535)TR0 = 1;}七、操作控制1、当按下正转按钮时,直流电机根据制定默认状态开始转动,直流电机正转,数码管计数正转次数(此时按下反转不影响正转且反转数码管不计数);2、当再次按下反转按钮时,直流电机反向转动,当按下反转按钮时,直流电机反转,数码管计数反转次数(此时按下正转不影响反转切正传数码管不计数);3、当数码管计数满以后,数字归零,4、按下停止按钮,电机停止转动。