久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1343|回復: 0
收起左側(cè)

步進電機調(diào)速

[復制鏈接]
ID:373565 發(fā)表于 2018-7-18 08:37 | 顯示全部樓層 |閱讀模式
#include<reg52.h>
#define unint unsigned int
void delay();

void anjian();
void frun();
void zrun();
code unsigned char runz[8]={ 0x03,0x0b,0x09,0x0d,0x0c,0x0e,0x06,0x07}; //正轉(zhuǎn)動數(shù)組
code unsigned char runf[8]={ 0x07,0x06,0x0e,0x0c,0x0d,0x09,0x0b,0x03}; //反轉(zhuǎn)動數(shù)組
code unsigned char seg7code[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //顯示段碼 數(shù)碼管字跟:
unsigned char a,b,s,i,j,k,z,gw,sw,bw,speed,m;
int y=31;//定義轉(zhuǎn)動速度,數(shù)值越大電機轉(zhuǎn)速越慢反之則快
sbit P2_0=P2^0;//正轉(zhuǎn)按鍵
sbit P2_1=P2^1;//反轉(zhuǎn)按鍵
sbit P2_2=P2^2;//加速按鍵
sbit P2_3=P2^3;//減速按鍵        
sbit P1_7=P1^7;


main()
{ P1_7=0;
a=0;
b=0;
while(1)
  {

         if(P2_0==0)
      {
          while(!P2_0);        
                    b=1;
                  P0=seg7code[1];
      }
       if(P2_1==0)
      {
          while(!P2_1);
          b=2;
          P0=seg7code[2];
       }
         anjian();  
          switch(b)
        {
        case 0: break;
        case 1: frun();break;
        case 2: zrun();        break;
        default:break;        
        }
        switch(y)
        {
        case 7:speed=100;break;
        case 9:speed=99;break;
        case 11:speed=98;break;
        case 13:speed=97;break;
        case 15:speed=96;break;
        case 17:speed=95;break;
        case 19:speed=94;break;
        case 21:speed=93;break;
        case 23:speed=92;break;
        case 25:speed=91;break;
        case 27:speed=90;break;
        case 29:speed=89;break;
        case 31:speed=88;break;
        case 33:speed=87;break;
        case 35:speed=86;break;
        case 37:speed=85;break;
        case 39:speed=84;break;
        case 41:speed=83;break;
        case 43:speed=82;break;
        case 45:speed=81;break;
        case 47:speed=80;break;
        case 49:speed=79;break;
        case 51:speed=78;break;
        case 53:speed=77;break;
        case 55:speed=76;break;
        case 57:speed=75;break;
        case 59:speed=74;break;
        case 61:speed=73;break;
        case 63:speed=72;break;
        case 65:speed=71;break;
        case 67:speed=70;break;
        case 69:speed=69;break;
        case 71:speed=68;break;
    case 73:speed=67;break;
        case 75:speed=66;break;
        case 77:speed=65;break;
        case 79:speed=64;break;
        case 81:speed=63;break;
        case 83:speed=62;break;
        case 85:speed=61;break;
        case 87:speed=60;break;
        case 89:speed=59;break;
        case 91:speed=58;break;
        case 93:speed=57;break;
        case 95:speed=56;break;
        case 97:speed=55;break;
        case 99:speed=54;break;
        case 101:speed=53;break;
        case 103:speed=52;break;
        case 105:speed=51;break;
        case 107:speed=50;break;
        case 109:speed=49;break;
        case 111:speed=48;break;
        case 113:speed=47;break;
        case 115:speed=46;break;
        case 117:speed=45;break;
        case 119:speed=44;break;
        case 121:speed=43;break;
        case 123:speed=42;break;
        case 125:speed=41;break;
        case 127:speed=40;break;
        case 129:speed=39;break;
        case 131:speed=38;break;
        case 133:speed=37;break;
        case 135:speed=36;break;
        case 137:speed=35;break;
        case 139:speed=34;break;
        case 141:speed=33;break;
        case 143:speed=32;break;
        case 145:speed=31;break;
        case 147:speed=30;break;
        case 149:speed=29;break;
        case 151:speed=28;break;
        case 153:speed=27;break;
        case 155:speed=26;break;
        case 157:speed=25;break;

        default:break;
        }
  }

   }

void delay(i)//延時函數(shù)
  {
      for(j=0;j<i;j++)
             for(k=0;k<30;k++);   
         display();  
  }

  void delay2(m)//延時函數(shù)
  {
      for(j=0;j<m;j++);
             for(k=0;k<255;k++);   

  }
void frun()// 反轉(zhuǎn)運行
{
     for(z=0;z<8;z++)
        {
            P1=runf[z];
            delay(y);
         }
}
void zrun()// 正轉(zhuǎn)運行
{

   for(z=0;z<8;z++)
       {
         P1=runz[z];
         delay(y);
       }
}
void anjian()
{         P1_7=0;
      if(P2_2==0)
      {

          if(!P2_2);
          delay2(255);
          delay2(255);
          delay2(255);
          delay2(255);
          y--;
          if(y<=7)y=7;
           P0=seg7code[3];
           }
      if(P2_3==0)
      {

          if(!P2_3);
          delay2(255);
          delay2(255);
          delay2(255);
          delay2(255);
          P0=seg7code[4];
          if((y<46)&&(y>7))y=+2;
          if((y<157)&&(y>47))y++;
          if(y>=157)y=157;
       }
  }

display()
{
bw=speed/100;
sw=speed%100/10;
gw=speed%10;


P2=P2&0x7f; //P2.7 輸出低電平,選通千位數(shù)
P3=seg7code[0]; //取出千位數(shù),查表,輸出。
delay2(8); //延時
P2=P2|0xf0; //銷隱
P2=P2&0xbf; //P2.6 輸出低電平,選通百位數(shù)
P3=seg7code[bw]; //取出百位數(shù),查表,輸出。
delay2(8); //延時
P2=P2|0xf0; //銷隱
P2=P2&0xdf; //P2.5 輸出低電平,選通十位數(shù)
P3=seg7code[sw]; //取出十位數(shù),查表,輸出。
delay2(8); //延時
P2=P2|0xf0; //銷隱
P2=P2&0xef;
P3=seg7code[gw]; //取出個位數(shù),查表,輸出。
delay2(8);
P2=P2|0xf0;


回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久国产精品偷 | 欧美成人一区二免费视频软件 | 亚洲国产精品久久久 | 久久精彩| 伊人在线视频 | 免费看国产片在线观看 | 综合九九 | 成人日b视频 | 精品视频一区二区三区 | 日本不卡一区二区三区在线观看 | 国产日韩一区二区 | 中文字幕日本一区二区 | 国产精品欧美一区二区三区 | www天天操| 国产激情视频 | 麻豆久久久9性大片 | 国产亚洲欧美在线视频 | 亚洲电影第三页 | 日韩精品一二三 | 国产亚洲精品久久久优势 | 久久久久久久久久久久久久av | 美女天天操 | 欧美日韩激情 | 影音先锋中文字幕在线观看 | 国产精品2| 亚洲在线一区 | 亚洲成人二区 | 午夜精品在线观看 | 色综合天天综合网国产成人网 | 欧美一级在线观看 | 欧美一二区| 91免费视频| 成年视频在线观看福利资源 | 精品一区二区久久久久久久网站 | 久久久久国产精品www | 欧美精品一区二区免费视频 | 一区二区电影 | 中文字幕视频三区 | 久久久久久久久久久蜜桃 | 日韩精品四区 | 天堂影院av|