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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 41677|回復: 45
打印 上一主題 下一主題
收起左側

單片機控制步進電機調速程序+原理圖+實物照片

  [復制鏈接]
跳轉到指定樓層
樓主
步進電機調速實驗過程的實物照片:


電路原理圖如下:


51單片機源程序如下:
  1. /*完整的C語言程序:*/
  2. #include <reg52.h>  //可用非常成功。
  3. #define uchar unsigned char  
  4. #define uint unsigned int

  5. unsigned char code table1[]={0x03,0x06,0x0c,0x09,0x09,0x0c,0x06,0x03};
  6. //unsigned char code table2[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};  //共陰數碼管 0~9
  7. unsigned char code table2[17] = { 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
  8. //0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F的顯示碼
  9. uchar table_begin;  
  10. uint  maichong;             //脈沖
  11. uchar  zhuansu;             //轉速
  12. uchar     flag;                 //方向
  13. sbit key_fuwei=P3^0;   //復位鍵
  14. sbit key_z=P3^1;            //正轉鍵
  15. sbit key_f=P3^2;            //反轉鍵
  16. sbit key_jia=P3^3;            //加速鍵
  17. sbit key_jian=P3^6;    //減速鍵

  18. sbit A1=P2^0;
  19. sbit A2=P2^1;
  20. sbit A3=P2^2;
  21. sbit A4=P2^3;
  22. void display();
  23. void delayms(xms);

  24. void delay(uchar x)  
  25. {
  26. uchar i,j;                            //延時
  27. for(i=0;i<x;i++)   
  28. for(j=100;j>0;j--);
  29. }
  30. void  fuwei(void)  //復位
  31. {
  32. flag=2;   
  33. zhuansu=0;
  34. }
  35. /*void Display(void)        //顯示
  36. {
  37.         unsigned char b1, b2;
  38.         b1=zhuansu/10;               
  39.         b2=zhuansu%10;
  40.         if(flag == 0)      //0
  41.                 P0=0x71;//顯示F
  42.     else
  43.                 P0=0x79;
  44.         A1=0;                                                         
  45.         delayms(3);
  46.         A1=1;

  47.         P0=0x40;
  48.         A2=0;         //顯示--
  49.         delayms(3);
  50.         A2=1;

  51.         P0=table2[b1];
  52.         A3=0;         //顯示十位
  53.         delayms(3);
  54.         A3=1;

  55.         P0=table2[b2];
  56.         A4=0;
  57.         delayms(3);   //顯示個位
  58.         A4=1;
  59. } */



  60. void display()   
  61. {  
  62. uchar b1,b2,b3,b4;     
  63. if(flag==0)  
  64.     P0=0x71;//顯示F
  65.     else
  66.     P0=0x79;
  67. if(flag==1)
  68.     P0=0x7c;//顯示b
  69.     else
  70.     P0=0x71;
  71. b1=10;   
  72. b2=0x3f;     
  73. b3=zhuansu/10;   
  74. b4=zhuansu%10;  
  75. //P0=table2;  
  76. A1=0;  //P2.0
  77. delay(1);  
  78. A1=1;  
  79. P0=b2;      
  80. A2=0;   //P2.1   
  81. delay(1);  
  82. A2=1;   
  83. P0=table2[b3];  
  84. A3=0;          //P2.3
  85. delay(1);  
  86. A3=1;   
  87. P0=table2[b4];
  88. A4=0;   //P2.4  
  89. delay(1);  
  90. A4=1;
  91. }
  92.   
  93. void key()                         //按鍵掃描
  94. {  
  95. if(key_fuwei==0)   
  96. {  
  97. delay(5);     
  98. if(key_fuwei==0)     
  99. fuwei();
  100. }  
  101. if(key_z==0)   
  102. {
  103. delay(5);     
  104. if(key_z==0)   
  105. {
  106. flag=0;      
  107. zhuansu=10;      
  108. while(key_z==0);
  109. }
  110. }  
  111. if(key_f==0)   
  112. {  

  113. delay(5);     
  114. if(key_f==0)   
  115. {  
  116. flag=1;      
  117. zhuansu=10;      
  118. while(key_f==0);
  119. }
  120. }   
  121. if(key_jia==0)   
  122. {   
  123. delay(5);     
  124. if(key_jia==0)   
  125. {   
  126. zhuansu++;      
  127. if(zhuansu==21)     
  128. zhuansu=20;      
  129. while(key_jia==0);
  130. }
  131. }  
  132. if(key_jian==0)   
  133. {   
  134. delay(5);     
  135. if(key_jian==0)   
  136. {  
  137. zhuansu--;      
  138. if(zhuansu<=0)     
  139. zhuansu=0;      
  140. while(key_jian==0);
  141. }
  142. }
  143. }
  144. void dispose()  //脈沖函數
  145. {
  146. switch(zhuansu)  
  147. {

  148. case 0:     flag=2;          break;   
  149. case 1:     maichong=300;    break;   
  150. case 2:     maichong=295;    break;   
  151. case 3:     maichong=290;    break;   
  152. case 4:     maichong=280;    break;   
  153. case 5:     maichong=260;    break;   
  154. case 6:     maichong=240;    break;   
  155. case 7:     maichong=200;    break;   
  156. case 8:     maichong=180;    break;   
  157. case 9:     maichong=160;    break;   
  158. case 10:    maichong=120;    break;   
  159. case 11:    maichong=80;    break;   
  160. case 12:    maichong=70;    break;   
  161. case 13:    maichong=60;    break;   
  162. case 14:    maichong=40;    break;   
  163. case 15:    maichong=35;    break;   
  164. case 16:    maichong=30;    break;   
  165. case 17:    maichong=25;     break;   
  166. case 18:    maichong=20;     break;   
  167. case 19:    maichong=15;     break;   
  168. case 20:    maichong=10;     break;

  169. }  
  170. if(flag==0)   
  171. table_begin=0;  
  172. else   
  173. if(flag==1)     
  174. table_begin=4;
  175. }
  176. void zhuandong(void)
  177. {
  178. uint i,j;   
  179. if(zhuansu>0&&zhuansu<=20)   
  180. {
  181. for(j=0+table_begin;j<4+table_begin;j++)   
  182. {
  183. P1=table1[j];     
  184. for(i=0;i<maichong;i++)     
  185. display();
  186. }
  187. }
  188. }  
  189. ……………………

  190. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
程序包,供需要者下載參考
所有資料51hei提供下載:
步進電機調速 數碼.rar (164.47 KB, 下載次數: 700)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發
ID:269490 發表于 2017-12-31 15:35 | 只看該作者
那個數碼管顯示的是轉速嘛?
回復

使用道具 舉報

板凳
ID:263915 發表于 2018-1-3 16:49 | 只看該作者
學習一下,謝謝分享
回復

使用道具 舉報

地板
ID:220927 發表于 2018-1-3 17:38 | 只看該作者
這轉速好
回復

使用道具 舉報

5#
ID:319537 發表于 2018-5-2 15:56 | 只看該作者
我的怎么不轉
回復

使用道具 舉報

6#
ID:320879 發表于 2018-5-3 10:06 | 只看該作者
那個數碼管顯示的是轉速嘛
回復

使用道具 舉報

7#
ID:325140 發表于 2018-5-8 16:30 | 只看該作者

學習一下,謝謝分享
回復

使用道具 舉報

8#
ID:334737 發表于 2018-5-22 18:27 | 只看該作者
能變速,學習下
回復

使用道具 舉報

9#
ID:354129 發表于 2018-6-19 15:45 | 只看該作者
大佬可以發下后面的程序嗎
回復

使用道具 舉報

10#
ID:354129 發表于 2018-6-21 12:04 | 只看該作者
問一下為什么會出現步進電機只振動,不轉動的情況
回復

使用道具 舉報

11#
ID:342294 發表于 2018-8-17 11:53 | 只看該作者
你這個電機的驅動引腳怎么找不到  而且沒有對應的電機驅動函數  在一定范圍內轉  
回復

使用道具 舉報

12#
ID:385142 發表于 2018-8-19 17:37 | 只看該作者
而且沒有對應的電機驅動函數  在一定范圍內轉  
回復

使用道具 舉報

13#
ID:342294 發表于 2018-8-23 09:08 | 只看該作者
你這個是不是有點問題   我為什么看不到你的電機轉動函數   你的那個轉動函數你沒有認真看嗎  電機怎么可能會轉  
回復

使用道具 舉報

14#
ID:389243 發表于 2018-8-23 13:41 | 只看該作者
請問,42步進電機的線該怎么連接呢
回復

使用道具 舉報

15#
ID:258125 發表于 2018-8-27 12:10 | 只看該作者
樓主,我也想學彈片控制步進電機,學習借鑒你的程序。謝謝啦
回復

使用道具 舉報

16#
ID:171940 發表于 2018-9-28 08:54 | 只看該作者
謝謝分享
回復

使用道具 舉報

17#
ID:429133 發表于 2018-11-20 07:49 來自手機 | 只看該作者
棒。厲害
回復

使用道具 舉報

18#
ID:429657 發表于 2018-11-20 08:55 | 只看該作者

謝謝分享
回復

使用道具 舉報

19#
ID:424598 發表于 2018-11-20 10:23 來自手機 | 只看該作者
wy1996 發表于 2018-6-21 12:04
問一下為什么會出現步進電機只振動,不轉動的情況

代碼無誤的情況下,你看看是不是供電不足的原因。電機最好單獨供電。

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

20#
ID:429657 發表于 2018-11-21 08:00 | 只看該作者
很好的代碼
回復

使用道具 舉報

21#
ID:430478 發表于 2018-11-21 17:55 | 只看該作者
這個需要自己畫原理圖嗎?
回復

使用道具 舉報

22#
ID:430942 發表于 2018-11-22 07:52 來自手機 | 只看該作者
可以分享下做好的仿真程序嗎?
回復

使用道具 舉報

23#
ID:429657 發表于 2018-11-22 11:52 | 只看該作者
剛來~學習下
回復

使用道具 舉報

24#
ID:429657 發表于 2018-12-11 13:51 | 只看該作者

可以分享下做好的仿真程序嗎?
回復

使用道具 舉報

25#
ID:259913 發表于 2018-12-24 15:52 | 只看該作者


可以分享下做好的仿真程序嗎?
回復

使用道具 舉報

26#
ID:474912 發表于 2019-2-3 23:57 | 只看該作者
謝謝樓主
回復

使用道具 舉報

27#
ID:478898 發表于 2019-2-22 10:56 | 只看該作者
so good
回復

使用道具 舉報

28#
ID:490694 發表于 2019-3-14 14:18 | 只看該作者
學習一下,謝謝分享
回復

使用道具 舉報

29#
ID:482603 發表于 2019-3-14 22:29 | 只看該作者
很有用
回復

使用道具 舉報

30#
ID:444215 發表于 2019-3-27 09:23 | 只看該作者
你這個電機的驅動引腳沒有定義
回復

使用道具 舉報

31#
ID:465213 發表于 2019-4-3 18:54 | 只看該作者
249449417@qq.co 發表于 2019-3-27 09:23
你這個電機的驅動引腳沒有定義

他這個是proteus的么?我打不開啊
回復

使用道具 舉報

32#
ID:400876 發表于 2019-4-20 11:38 | 只看該作者
看起來有點像郭天祥那個例程,改了一些
回復

使用道具 舉報

33#
ID:521117 發表于 2019-5-3 09:22 | 只看該作者
學習一下,謝謝分享
回復

使用道具 舉報

34#
ID:526631 發表于 2019-5-3 20:20 | 只看該作者
非常感謝樓主大大的經驗分享
回復

使用道具 舉報

35#
ID:548242 發表于 2019-5-27 11:28 | 只看該作者
感謝分享
回復

使用道具 舉報

36#
ID:548283 發表于 2019-5-27 12:31 | 只看該作者
贊一個,學習下
回復

使用道具 舉報

37#
ID:548312 發表于 2019-5-27 13:17 | 只看該作者
很好,實用
回復

使用道具 舉報

38#
ID:584873 發表于 2019-7-19 16:53 | 只看該作者
樓主為什么程序下載到我的單片機里,電機不轉,沒反應,而且電機會發熱
回復

使用道具 舉報

39#
ID:653751 發表于 2019-12-13 15:04 | 只看該作者
qibulin 發表于 2018-12-11 13:51
可以分享下做好的仿真程序嗎?

我也需要這個,你有嗎
回復

使用道具 舉報

40#
ID:653751 發表于 2019-12-13 15:04 | 只看該作者
需要源代碼和hex 文件,謝謝樓主了
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 女女爱爱视频 | 欧美视频三区 | 久久99蜜桃综合影院免费观看 | 欧美精品一区二区三区在线播放 | 色播99| 国产一区二| 国产精品美女久久久久久久网站 | 亚洲精精品 | 大香在线伊779 | 亚洲天堂中文字幕 | 国产精品美女一区二区 | 免费人成激情视频在线观看冫 | 91午夜在线| 久久综合伊人 | 酒色成人网 | 久久精品91久久久久久再现 | 欧美一二三区 | 成人在线免费av | 亚洲成人动漫在线观看 | 久久精品亚洲精品国产欧美kt∨ | 国产精品自拍视频 | 国产精品久久在线观看 | 91成人免费看 | 亚洲欧美日本国产 | 精品一区二区三区91 | 精品国产三级 | 手机在线一区二区三区 | 久久久久亚洲精品中文字幕 | 我要看黄色录像一级片 | 精品久久一区 | 欧美三区 | 欧美精品网 | 国产福利在线小视频 | 在线91 | 91免费视频观看 | www.97国产 | 亚洲国产精品一区在线观看 | 国产电影一区二区 | 精品国产一区二区三区久久狼黑人 | 中文字幕在线三区 | www.99re5.com |