out.c

来自「本程序是通过单片机进行电机的控制」· C语言 代码 · 共 344 行

C
344
字号
#include <reg51.h>
#include <absacc.h>
#define uint unsigned int
#define uchar unsigned char
#define PORT XBYTE[0xffc0]
void delay(uint x);
sbit temp=P1^7;
sbit wxy1=P1^0;
sbit wxy2=P1^1;
sbit wxy3=P1^2;
sbit wxy4=P1^3;
sbit wxy5=P1^4;
void out(uchar speed,uchar direction,uchar backup){
     uchar up=1;
     uchar low=0;
if(backup=='y')
{
   wxy5=low;
if(direction=='l')
{
     wxy1=low;
     wxy2=low;
     wxy3=low;
     wxy4=up;
     if(speed=='f'){
                       temp=low;
                       PORT=low;
                       delay(8);
                       temp=low;
                       delay(8);
     }
     if(speed=='a'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(8);
     }

     else if(speed=='b'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(16);
     }

     else if(speed=='c'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(24);
     }

     else if(speed=='d'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(32);
     }
     else if(speed=='e'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(40);

     }
}
if(direction=='r')
{
     wxy1=up;
     wxy2=low;
     wxy3=up;
     wxy4=low;
          if(speed=='f'){
                       temp=low;
                       PORT=low;
                       delay(8);
                       temp=low;
                       delay(8);
     }
     if(speed=='a'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(8);
     }

     else if(speed=='b'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(16);
     }

     else if(speed=='c'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(24);
     }

     else if(speed=='d'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(32);
     }
     else if(speed=='e'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(40);

     }
}
if(direction=='s')
{
     wxy1=low;
     wxy2=up;
     wxy3=low;
     wxy4=low;
     if(speed=='f'){
                       temp=low;
                       PORT=low;
                       delay(8);
                       temp=low;
                       delay(8);
     }
     if(speed=='a'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(8);
     }

     else if(speed=='b'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(16);
     }

     else if(speed=='c'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(24);
     }

     else if(speed=='d'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(32);
     }
     else if(speed=='e'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(40);

     }
}
}
//////////////////////////////////////////////////////////////
if(backup=='z')
{
   wxy5=up;
if(direction=='l')
{
     wxy1=low;
     wxy2=low;
     wxy3=low;
     wxy4=up;
     if(speed=='f'){
                       temp=low;
                       PORT=low;
                       delay(8);
                       temp=low;
                       delay(8);
     }
     if(speed=='a'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(8);
     }

     else if(speed=='b'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(16);
     }

     else if(speed=='c'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(24);
     }

     else if(speed=='d'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(32);
     }
     else if(speed=='e'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(40);

     }
}
if(direction=='r')
{
     wxy1=up;
     wxy2=low;
     wxy3=up;
     wxy4=low;
     if(speed=='f'){
                       temp=low;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(8);
     }
     if(speed=='a'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(8);
     }

     else if(speed=='b'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(16);
     }

     else if(speed=='c'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(24);
     }

     else if(speed=='d'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(32);
     }
     else if(speed=='e'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(40);

     }
}
if(direction=='s')
{
     wxy1=low;
     wxy2=up;
     wxy3=low;
     wxy4=low;
     if(speed=='f'){
                       temp=low;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(8);
     }
     if(speed=='a'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(8);
     }

     else if(speed=='b'){
                       temp=up;
                       PORT=up;
                       delay(8);
                       temp=low;
                       delay(16);
     }

     else if(speed=='c'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(24);
     }

     else if(speed=='d'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(32);
     }
     else if(speed=='e'){
                         temp=up;
                         PORT=up;
                         delay(8);
                         temp=low;
                         delay(40);

     }
}
}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?