用51单片机控制直流电机的转动

1号键按下后当电动机正传时 红灯亮
2号键按下时 电机停止转动 黄灯闪烁
3号键按下时 电动机反转 绿灯亮

839127994@qq.com 谢谢了

电路图就简单了,只要按照程序去连接就不会有问题。这里需要用到一个H桥电路,注意桥电路中Q1和Q3是PNP型三极管,负电导通。Q2和Q4是NPN型三极管,正电导通。Q1和Q4导通是正传,Q3和Q2导通是反转。

#include<stc.h>

#define uchar unsignde char

#define uint  unsignde int

sbit  zheng=P3^0; //按键正转

sbit  fan=P3^1;  //按键反转

sbit  ting=P3^2;  //按键停  

sbit Q1=P3^4;//定义4个IO控制桥电路

sbit Q2=P3^5;

sbit Q3=P3^6;

sbut Q4=P3^7;

sbit led1=P0^0; //定义3个LED灯

sbit led2=P0^1;

sbit led3=P0^2;

void daley(uchar z);  //延时函数

void main()

{

while()

{

if(zheng==0) //电机正转

{

delay(10);

if(zheng==0);

{

Q2=0;

Q3=1; //这两句是把反转关掉

 Q1=0;

 Q4=1;//这两句是打开正转

 led1=0;//红灯亮

 led2=1; //其他等关闭

 led3=1;//其他等关闭

}

}

if(fan==0)  //电机反转

{

delay(10);

if(fan==0)

{

Q1=1;

Q4=0;//把正转关掉

Q2=1;

Q3=0;//开反转

led1=1;//其他等关闭

led2=0; //绿灯亮

led3=1;//其他等关闭

}

}

 

if(ting==0)  //关掉电机

{

delay(10);

if(ting==0)

{

Q1=1;

Q2=0;

Q3=1;

Q4=0;

led1=1;//其他等关闭

led2=1; //其他等关闭

led3=0;// 黄灯亮

}

}

}

}

void daley(uchar z)  //延时函数

{

uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-06-13
不是很难可以帮你做啊追问

啥时候 给我发呀 原理图与 程序呀 邮箱 是 839327994@qq.com

51单片机按键控制直流电机正反转和快慢
可以利用51单片机实现按键控制直流电机的正反转和速度调整。1. 按键与单片机的连接:首先,需要将按键连接到51单片机的I\/O端口。这些按键可以包括控制电机正转、反转和速度调整的按钮。每个按键对应单片机的一个或多个I\/O位,用于检测按键是否被按下。2. 电机控制逻辑编写:当单片机检测到特定按键被按下时...

51单片机怎么让直流电机转动
一般而言,所有单片机的端口驱动能力都有限,还有电机的额定电压也许会比单片机的供电电压高,直接驱动电机有困难。这时候要想驱动电机,就必须根据电机的额定电压和额定功率采用合适的功率器件去驱动。下边的电路图是我工程上实际使用的,可以正反转,脉宽调制的话还可以调速。

用51单片机控制电机的启动与停止,电机的驱动频率是40KHz,启动响应时间在...
功能 : 通过P1.0口来控制直流电机的旋转的快慢 \/***\/ include <reg52.h> define uchar unsigned char define uint unsigned int sbit KEY1 = P3^2;\/\/定义调速的按键 sbit PWM = P1^0;\/\/定义直流电机的控制端口 uchar CYCLE; \/\/定义周期 uchar PWM_ON ;\/\/定义低电平时间 \/ 名称 : ...

51单片机控制直流电机。(c语言控制)
有3种方案:第一种,通过PWM脉宽调制输出方法控制转速,控制占空比的大小可以实现调速!第二种,通过AD转换的方法控制直流电机的电压 第三种,用xtr115程控电流源来控制直流电机(类似第二种方法)如果以上的驱动能力不够的话再加上一个电压跟随器!程序方面就是一个寄存器的配置问题了,你查一下单片机的...

51单片机通过pwm波控制直流电机进行调速是一定需要电机驱动吗?如果没...
是的,通过PWM波控制直流电机进行调速时,不一定需要专门的电机驱动。在一些简单的应用中,可以直接使用微控制器(如51单片机)来生成PWM信号,并通过适当的接口电路驱动直流电机。然而,这种方法可能存在一些限制,例如电流大小和驱动能力。如果没有电机驱动,单纯向电机使能引脚输入PWM波,也可以控制电机的...

51单片机控制电机转速
前天帮别人做了一个,还可以显示当前速度,和设置的速度,4X4键盘(16个按键),设置速度可直接输入,有正转,反转,启动,停止,和加速,减速功能

求51单片机控制直流电机正转反转的原理图
如果是直流微电机,典型的控制电路如图:如果功率稍大的直流电机,晶体管换成继电器,两个继电器就可以,如果是大型动力用电机可以用可控硅等等但我没弄过。

51单片机怎么驱动直流电机c语言
51单片机驱动直流电机程序(用的是l298n芯片):include<reg51.h> include<math.h> defineuintunsignedint defineucharunsignedchar defineN100 sbit s1=P1^0;\/\/电机驱动口 sbits2=P1^1;\/\/电机驱动口 sbits3=P1^2;\/\/电机驱动口 sbits4=P1^3;\/\/电机驱动口 sbiten1=P1^4;\/\/电机使能端 sbiten2...

51单片机中如何用c语言控制直流电机正反转
sbit ENA=P1^1; \/\/左轮 1 sbit IN2=P1^2;\/\/左轮2 sbit IN3=P1^3;\/\/右轮 1 sbit ENB=P1^4;sbit IN4=P1^5;\/\/右轮 2 sbit left=P0^0;sbit right=P0^1;\/\/sbit middle=P0^2;void delay(uint z){ uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);} void init()...

51单片机怎么控制大功率的直流电机,麻烦给下电路图,谢啦。主要是驱动...
1:你说的大功率直流电机,用三极管肯定驱动不了,必须要大功率的MOSFET或者IGBT去驱动,IGBT或者MOSFET可以买Infineon的。主电路结构最好采用H桥电路,可以双极性正反调速。2:H桥的上管可以用IR2110来驱动,这个芯片自己提供了一个自举功能,上管MOSFET(或IGBT)的源极电压是浮动的,自举电路可以保证上管...

相似回答