標(biāo)題: 求大哥教教我怎么寫限位開(kāi)關(guān)控制電機(jī)停止的程序 [打印本頁(yè)]

作者: syccc99    時(shí)間: 2018-3-28 21:14
標(biāo)題: 求大哥教教我怎么寫限位開(kāi)關(guān)控制電機(jī)停止的程序
圖如下

123.png (10.45 KB, 下載次數(shù): 48)

123.png

作者: syccc99    時(shí)間: 2018-4-3 11:56
#include<reg52.h>
#define uint  unsigned int
#define uchar unsigned char
//------8拍-----  
uchar code zz[]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09};   //正轉(zhuǎn)
uchar code fz[]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01};    //反轉(zhuǎn)   

void delay(uint ms)
{  
    uint t;
    while(ms--)   
       for(t=0;t<120;t++);
}   

void motor_zz(uint n)
{  
     uint i,j,k;   
     for(i=0;i<5*n;i++)  
     {   
        for(j=0;j<8;j++)  
        {   
             for(k=0;k<120;k++)
                   break;   
             P1=zz[j];   
             delay(20);   
         }  
      }  
}   

void motor_fz(uint n)
{
      uint i,j,k;  
      for(i=0;i<5*n;i++)  
      {
          for(j=0;j<8;j++)  
          {   
              for(k=0;k<120;k++)
                 break;   
              P1=fz[j];   
              delay(20);   
           }   
       }  
}   

void main()
{
   uint N=2;  
   while(1)  
   {  
          P3=0xff;           //11111111
          if(P3==0xfe)       //11111110
          {   
                 while(P3==0xfe);  //11111110  
                 P0=0xfe;          //11111110
                 motor_zz(N);   

           }   
           else if(P3==0xfd)       //11111101
           {   
               while(P3==0xfd);    //11111101   
               P0=0xfd;            //11111101
               motor_zz(N);
            }   

    }
}






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1