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

標(biāo)題: 步進(jìn)電機(jī)調(diào)速控制系統(tǒng)資料(原理圖+單片機(jī)源碼) [打印本頁]

作者: 18280543500    時(shí)間: 2018-3-5 19:24
標(biāo)題: 步進(jìn)電機(jī)調(diào)速控制系統(tǒng)資料(原理圖+單片機(jī)源碼)
輸入電壓12V,經(jīng)穩(wěn)壓電路后輸出5V電壓;(12V給電機(jī)供電)
電路中四個(gè)按鍵控制電機(jī)轉(zhuǎn)速:(由左到右1:正轉(zhuǎn) 2: 反轉(zhuǎn) 3: 加速;4: 減速;)
電路中的四位一體數(shù)碼管顯示轉(zhuǎn)速;
電路中的單獨(dú)的數(shù)碼管顯示電機(jī)的檔位(正轉(zhuǎn)為1;反轉(zhuǎn)為2;加速為3;減速為4);
加速/(減速)時(shí):每按一次按鍵數(shù)碼管顯示轉(zhuǎn)速加1/(減1
電機(jī)驅(qū)動(dòng)電路輸入端的四個(gè)接線端由上到下依次為P1_0,P1_1,P1_2,P1_3

程序流程圖與框圖:


電路原理圖:


單片機(jī)源程序如下:
  1. #include<reg52.h>
  2. #define unint unsigned int
  3. void delay();

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


  17. main()
  18. { P1_7=0;
  19. a=0;
  20. b=0;
  21. while(1)
  22.   {

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

  121.         default:break;
  122.         }
  123.   }

  124.    }

  125. void delay(i)//延時(shí)函數(shù)
  126.   {
  127.       for(j=0;j<i;j++)
  128.              for(k=0;k<30;k++);   
  129.          display();  
  130.   }

  131.   void delay2(m)//延時(shí)函數(shù)
  132.   {
  133.       for(j=0;j<m;j++);
  134.              for(k=0;k<255;k++);   
  135.                     
  136.   }
  137. void frun()// 反轉(zhuǎn)運(yùn)行
  138. {
  139.      for(z=0;z<8;z++)
  140.         {
  141.             P1=runf[z];
  142.             delay(y);
  143.          }
  144. }
  145. void zrun()// 正轉(zhuǎn)運(yùn)行
  146. {

  147.    for(z=0;z<8;z++)
  148.        {
  149.          P1=runz[z];
  150.          delay(y);
  151.        }
  152. }
  153. void anjian()
  154. {         P1_7=0;
  155.       if(P2_2==0)
  156.       {
  157.          
  158.           if(!P2_2);
  159.           delay2(255);
  160.           delay2(255);
  161.           delay2(255);
  162.           delay2(255);
  163.           y--;
  164.           if(y<=7)y=7;
  165.            P0=seg7code[3];
  166.            }
  167.       if(P2_3==0)
  168.       {
  169.          
  170.           if(!P2_3);
  171.           delay2(255);
  172.           delay2(255);
  173.           delay2(255);
  174.           delay2(255);
  175.           P0=seg7code[4];
  176.           if((y<46)&&(y>7))y=+2;
  177.           if((y<157)&&(y>47))y++;
  178.           if(y>=157)y=157;
  179.        }
  180.   }
  181.          
  182. display()
  183. {
  184. bw=speed/100;
  185. sw=speed%100/10;
  186. gw=speed%10;


  187. P2=P2&0x7f; //P2.7 輸出低電平,選通千位數(shù)
  188. P3=seg7code[0]; //取出千位數(shù),查表,輸出。
  189. delay2(8); //延時(shí)
  190. P2=P2|0xf0; //銷隱
  191. P2=P2&0xbf; //P2.6 輸出低電平,選通百位數(shù)
  192. P3=seg7code[bw]; //取出百位數(shù),查表,輸出。
  193. delay2(8); //延時(shí)
  194. P2=P2|0xf0; //銷隱
  195. P2=P2&0xdf; //P2.5 輸出低電平,選通十位數(shù)
  196. P3=seg7code[sw]; //取出十位數(shù),查表,輸出。
  197. delay2(8); //延時(shí)
  198. P2=P2|0xf0; //銷隱
  199. P2=P2&0xef;
  200. P3=seg7code[gw]; //取出個(gè)位數(shù),查表,輸出。
  201. delay2(8);
  202. P2=P2|0xf0;



  203. }

復(fù)制代碼


所有資料51hei提供下載:
步進(jìn)電機(jī)調(diào)速控制系統(tǒng)資料.zip (3.96 MB, 下載次數(shù): 179)




作者: ysln2008    時(shí)間: 2019-3-25 14:19
好東西  留著收藏
作者: mlcai_15    時(shí)間: 2019-3-28 11:03
收藏學(xué)習(xí) 感謝分享
作者: swmxyc    時(shí)間: 2019-3-31 12:45
謝謝分享。下載學(xué)習(xí)下 。
作者: tyk2012    時(shí)間: 2019-4-3 15:40
學(xué)習(xí)了,謝謝
作者: 84151645    時(shí)間: 2019-6-5 16:43
好貼,值得收藏
作者: l258669449    時(shí)間: 2019-7-13 17:37
很好,過來學(xué)習(xí),資料非常有用
作者: 測控系吳~    時(shí)間: 2019-7-14 20:38
請(qǐng)問樓主,s52和c52可以互替嗎?
作者: wkqwkq    時(shí)間: 2020-5-1 11:09
很詳細(xì),易懂,謝謝樓主




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 三级黄色片在线观看 | 婷婷在线免费 | 成人中文字幕在线观看 | 成人久久18免费网站麻豆 | 久久国品片 | 在线观看成人小视频 | 欧美在线天堂 | 国产精品永久久久久 | 欧美久久久久久久久 | 在线免费观看黄a | 国产精品日日摸夜夜添夜夜av | 久久久久久国产 | 国产精品2区 | 天天干人人 | 日韩91| 国产成人精品999在线观看 | 亚洲精品九九 | 精品国产一区二区国模嫣然 | 男女久久久 | 日韩一区二区不卡 | 综合欧美亚洲 | av色站 | 欧美黄页| 一区二区三区不卡视频 | 午夜免费精品视频 | 久久国产精彩视频 | 综合精品久久久 | 中文字幕av一区二区三区 | 97伦理影院 | 欧美日韩成人在线 | 在线亚洲人成电影网站色www | 草草视频在线播放 | 精品欧美一区二区三区久久久 | 九九热在线免费视频 | 亚洲国产一区二区视频 | 国产a区| 欧美亚洲国产一区二区三区 | 国产精品1区2区 | 亚洲36d大奶网 | jizz18国产 | 琪琪午夜伦伦电影福利片 |