當前位置:編程學習大全網 - 編程軟體 - 51單片機中如何用c語言控制直流電機正反轉

51單片機中如何用c語言控制直流電機正反轉

#include <reg52.h>

#define uint unsigned int

#define uchar unsigned char

sbit IN1=P1^0;

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()

{

ENA=0; // 1

ENB=0; //

IN1=0; // 0

IN2=0; // 2

IN3=0;

IN4=0;

}

void pwm()

{

ENA=1;

ENB=1;

}

void dianji()

{

if(left==0&&right==0) //前進

{

IN1=1;

IN2=0;

IN3=1;

IN4=0;

pwm();

}

else if(left==0&&right==1) //右轉

{

IN1=1;

IN2=0;

IN3=0;

IN4=1;

pwm();

} else if(left=1&&right==0)// 左轉

{

IN1=0;

IN2=1;

IN3=1;

IN4=0;

pwm();

}

}

void main()

{

init();

while(1)

{

dianji();

}

}

  • 上一篇:數控車和數控銑,學機械的,哪個好呢?
  • 下一篇:加密電腦能將plc程序加密嗎
  • copyright 2024編程學習大全網