找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1673|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

步進(jìn)電機(jī)驅(qū)動(dòng)監(jiān)測(可正反轉(zhuǎn))

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:315810 發(fā)表于 2018-4-28 21:39 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code zheng[]={
0xf3,0xf6,0xfc,0xf9};
uchar code fan[]={
0xf9,0xfc,0xf6,0xf3};
//uchar t;
bit flag=0;
uint shijian;
uchar temp;
void delay(uint z)
{
uint i,j;
for(i=0;i<z;i++)
for(j=0;j<80;j++);
}
/*void timer_init()
{
  TMOD=0X01;//???0,??1
  TH0=(65536-50000)/256;
  TL0=(65536-50000)%256;
  ET0=1;
  EA=1;
  TR0=1;
} */
void motor_z()
{
  uchar i;
  for(i=0;i<4;i++)
   {
    P2=zheng[i];
        delay(shijian);
   }
}
void motor_f()
{
  uchar i;
  for(i=0;i<4;i++)
   {
    P2=fan[i];
        delay(shijian);
   }
}
void keyscan()
{
  P3=0XFF;
  delay(1);
  if(P3!=0xff)
   {
          temp=P3;
          switch(temp)
          {
            case 0xfe:
               {flag=~flag;break;   }
               case 0xfd:
               {if(shijian<=60)
                 {shijian=50;}
                else
               {shijian=shijian-100;}
               break;  }
               case 0xfb:
               {if(shijian>=600)
                {shijian=650;}
                else
                {shijian=shijian+100;}
               break;  }
               default : break;
          }
          while(temp==P3);
   }
}
void main()
{
   shijian=350;
  //timer_init();
  while(1)
   {
     keyscan();
     if(flag==0)
         {
           motor_z();
         }
    else
         {
              motor_f();
         }
   }
}
/*void timer() interrupt 1
{
  TH0=(65536-50000)/256;
  TL0=(65536-50000)%256;
  if(t>=200)
   {
    t=0;
    flag=~flag;
   }
  t++;
} */

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表