找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

步進(jìn)電機(jī)正反轉(zhuǎn)加減速51源碼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:217066 發(fā)表于 2017-7-4 13:17 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
可實(shí)現(xiàn)正反轉(zhuǎn) 加減速 停止
下載: 步進(jìn)電機(jī)控制.rar (514 Bytes, 下載次數(shù): 14)

  1. #include<reg51.h>
  2. #include<intrins.h>
  3. sbit zheng=P3^0;
  4. sbit fan=P3^1;
  5. sbit over=P3^2;
  6. sbit jiasu=P3^6;
  7. sbit jiansu=P3^7;
  8. unsigned char code PHASE[4]={0x03,0x06,0x0C,0x09};
  9. unsigned char speed=100;

  10. voidDelay_us(unsigned int time)
  11. {
  12. while(time--);
  13. }

  14. void delay_ms(unsigned int time)
  15. {
  16.   while(time--)
  17.    {
  18.     Delay_us(98);
  19.    }
  20. }

  21. void main(void)
  22. {
  23. unsigned char tmp1,key;
  24.    while(1)
  25.    {
  26.      if(zheng==1)  
  27.      key=1;
  28.      else if(fan==1)
  29.      key=2;
  30.        for(tmp1=0;tmp1<4;tmp1++)
  31.      {
  32.        if(key==1)
  33.        P1=P1&0Xf0|PHASE[tmp1];
  34.        else if(key==2)
  35.        P1=P1&0Xf0|PHASE[3-tmp1];
  36.        delay(speed);
  37.       }
  38.       if(jiasu==1)
  39.        {
  40.         speed=speed+20;
  41.         if(speed>=200)
  42.         speed=200;
  43.         }
  44.       if(jiansu==1)
  45.        {
  46.         speed=speed-20;
  47.         if(speed<=20)
  48.         speed=20;
  49.         }
  50.      if(over==1)
  51.       {
  52.       key=0;
  53.       P1=0x00;
  54.       }
  55.    }
  56. }
復(fù)制代碼


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

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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