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

標題: 28BYJ-48步進電機測試程序 [打印本頁]

作者: angelayang    時間: 2017-6-8 21:19
標題: 28BYJ-48步進電機測試程序
51單片機驅動28BYJ-48型號的步進電機測試程序:



單片機源程序如下:
  1. //******************************************************************************************//
  2. //        程序名稱:28BYJ-48步進電機測試程序
  3. //        功能描述:步進電機分別以單四拍、雙四拍、八拍驅動方式驅動,正反轉各360度
  4. //        單片機:  AT89S52,FOSC=12MHz
  5. //        硬件連接:P1.0----INA
  6. //            P1.1----INB
  7. //            P1.2----INC
  8. //            P1.3----IND
  9. //            驅動板的驅動電壓和芯片邏輯供電電壓均為5V;         
  10. //            步進電機紅線接+5V驅動電壓,橙黃粉藍分別接OUT1、OUT2、OUT3、OUT4,
  11. //            注意外接電源要與單片機共地。
  12. //        維護記錄:2012.11.2 雙龍電子科技
  13. //*****************************************************************************************//
  14. #include<reg52.h>
  15. #define uint unsigned int
  16. #define uchar unsigned char
  17. uint i,j,k;
  18. uint N=128;//主軸旋轉度數設置,度數D=N*45/減速比,采用1:16減速比的步進電機,旋轉度數即為D=128*45/16=360度

  19. uchar code single_pos[4]={0x07,0x0b,0x0d,0x0e};//單四拍驅動方式正轉表 D-C-B-A
  20. uchar code single_rev[4]={0x0e,0x0d,0x0b,0x07};//單四拍驅動方式反轉表 A-B-C-D
  21. uchar code double_pos[4]={0x06,0x03,0x09,0x0c};//雙四拍驅動方式正轉表 AD-DC-CB-BA
  22. uchar code double_rev[4]={0x0c,0x09,0x03,0x06};//雙四拍驅動方式反轉表 AB-BC-CD-DA
  23. uchar code eight_pos[8]={0x06,0x07,0x03,0x0b,0x09,0x0d,0x0c,0x0e};//八拍驅動方式正轉表 AD-D-DC-C-CB-B-BA-A
  24. uchar code eight_rev[8]={0x0e,0x0c,0x0d,0x09,0x0b,0x03,0x07,0x06};//八拍驅動方式反轉表 A-AB-B-BC-C-CD-D-DA

  25. void delay(uint z);
  26. void m_single_pos();
  27. void m_single_rev();
  28. void m_double_pos();
  29. void m_double_rev();
  30. void m_eight_pos();
  31. void m_eight_rev();
  32. void main()                       
  33. {       
  34.         while(1)
  35.         {
  36.                 m_single_pos();//單四拍驅動方式正轉360度
  37.                 delay(200);
  38.                 m_single_rev();//單四拍驅動方式反轉360度
  39.                 delay(200);
  40.                 m_double_pos();//雙四拍驅動方式正轉360度
  41.                 delay(200);
  42.                 m_double_rev();//雙四拍驅動方式反轉360度
  43.                 delay(200);
  44.                 m_eight_pos();//八拍驅動方式正轉360度
  45.                 delay(200);
  46.                 m_eight_rev();//八拍驅動方式反轉360度       
  47.                 delay(200);
  48.         }               
  49. }
  50. /********************延時z毫秒**************************************/
  51. void delay(uint z)
  52. {
  53.         uint x,y;
  54.         for(x=z;x>0;x--)
  55.                 for(y=110;y>0;y--);
  56. }
  57. /*******************單四拍驅動正轉(N*45/16)度***********************/
  58. void m_single_pos()
  59. {
  60.         for(k=0;k<N;k++)
  61.         {
  62.                 j=0;
  63.                 for(i=0;i<4;i++)//在單四拍工作方式下,一個脈沖轉子轉動角度為5.625*2=11.25度,四拍共45度
  64.                 {
  65.                         P1=single_pos[j];
  66.                         delay(5);//適當延時,保證轉子轉動時間,延時過短會丟拍
  67.                         j++;
  68.                 }
  69.         }
  70. }

  71. /*******************單四拍驅動反轉(N*45/16度)***********************/
  72. void m_single_rev()
  73. {
  74.         for(k=0;k<N;k++)
  75.         {
  76.                 j=0;
  77.                 for(i=0;i<4;i++)//在單四拍工作方式下,一個脈沖轉子轉動角度為5.625*2=11.25度,四拍共45度
  78.                 {
  79.                         P1=single_rev[j];
  80.                         delay(5);
  81.                         j++;
  82.                 }
  83.         }
  84. }

  85. /*******************雙四拍驅動正轉(N*45/16)度***********************/
  86. void m_double_pos()
  87. {
  88.         for(k=0;k<N;k++)
  89.         {
  90.                 j=0;
  91.                 for(i=0;i<4;i++)//在雙四拍工作方式下,一個脈沖轉子轉動角度為5.625*2=11.25度,四拍共45度
  92.                 {
  93.                         P1=double_pos[j];
  94.                         delay(8);
  95.                         j++;
  96.                 }
  97.         }
  98. }
  99. /*******************雙四拍驅動反轉(N*45/16)度***********************/
  100. void m_double_rev()
  101. {
  102.         for(k=0;k<N;k++)
  103.         {
  104.                 j=0;
  105.                 for(i=0;i<4;i++)//在雙四拍工作方式下,一個脈沖轉子轉動角度為5.625*2=11.25度,四拍共45度
  106.                 {
  107.                         P1=double_rev[j];
  108.                         delay(8);
  109.                         j++;
  110.                 }
  111.         }
  112. }
  113. /*******************八拍驅動正轉(N*45/16)度***********************/
  114. void m_eight_pos()
  115. {
  116.         for(k=0;k<N;k++)
  117.         {
  118.                 j=0;
  119.                 for(i=0;i<8;i++)//在八拍工作方式下,一個脈沖轉子轉動角度為5.625度,八拍共45度
  120.                 {
  121.                         P1=eight_pos[j];
  122.                         delay(2);
  123.                         j++;
  124.                 }
  125. ……………………

  126. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
28BYJ-48步進電機測試程序.zip (19.71 KB, 下載次數: 326)





作者: wandoy    時間: 2018-5-10 23:54
謝謝分享呀~
作者: 99312312    時間: 2018-6-17 19:26
xiexie 分享  初學者在此謝過
作者: 王云龍    時間: 2018-12-5 10:13
非常感謝
作者: 天騎兵團    時間: 2019-1-16 18:36
學習一下看看內容
作者: NO.0132    時間: 2019-4-24 08:53
謝謝謝謝,下來看看,希望有用
作者: fnh02    時間: 2019-7-11 16:00
非常感謝,正常找資料。
作者: 2454347030    時間: 2019-7-25 11:35
謝謝樓主分享
作者: 545812516    時間: 2019-7-25 13:57
感謝樓主分享,正需要這個資料
作者: dpj01    時間: 2019-7-25 14:58

謝謝分享呀~
作者: 孤狼行動    時間: 2020-1-26 12:47
謝謝分享
作者: 伯虎點蚊香    時間: 2020-2-19 15:04
最快可以達到每分鐘多少轉
作者: BrianWaring    時間: 2020-4-29 16:15
感謝分享,有你更精彩
作者: llliiihmm    時間: 2020-5-6 22:01
為啥我的電機在震動,不轉呢?




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 激情福利视频 | 日韩中文在线视频 | 国产片一区二区三区 | av网址在线播放 | 日韩一区二区三区视频 | 看毛片的网站 | 91久久网站 | 国产激情在线观看视频 | 69亚洲精品 | 国产激情精品 | 一级黄色录像毛片 | 在线观看av网站永久 | 国产精品久久久久久福利一牛影视 | 日韩1区2区| 一区久久| 亚洲精品一区在线观看 | 97av在线 | 亚洲日本视频 | 国产偷久久一级精品60部 | 本道综合精品 | 福利片在线 | 国产精品福利网站 | 欧美日韩精品综合 | 国产在视频一区二区三区吞精 | 久久99精品国产麻豆婷婷 | 国产精品国产馆在线真实露脸 | 国产一区二区三区久久久久久久久 | 中文在线一区二区 | 一级毛片在线播放 | 九九色综合| 国产精品久久久久久久久久妇女 | 成人在线免费网站 | 国产一区二区三区亚洲 | 视频一二三区 | 久久高清| 91不卡 | 成人免费视屏 | 一本色道久久综合亚洲精品高清 | 日韩一区二区久久 | 国产精品久久久久久久久久久久久 | 亚洲免费高清 |