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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7164|回復: 1
收起左側

單片機步進電機精確控制程序(防抖動)C語言編寫

[復制鏈接]
ID:130231 發表于 2017-5-27 16:56 | 顯示全部樓層 |閱讀模式
C語言編的步進電機精確控制程序包括防抖動等
0.png

單片機源程序如下:
  1. #include <reg52.h>
  2. #include <absacc.h>
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. sbit P0_1=P0^1;
  6. sbit P0_0=P0^0;
  7. sbit P3_2=P3^2;
  8. sbit P3_3=P3^3;
  9. sbit P3_4=P3^4;
  10. sbit P3_5=P3^5;
  11. void delays(uint);
  12. void delay(uint, uint);
  13. void mc(uint);
  14. void mc1(uint);
  15. fangdoudong() ;
  16. int p;

  17. void main(void)
  18. {

  19.             
  20.            TCON = 0x05;        //外部中斷0、1均設置為下降沿觸發
  21.            TMOD = 0x66;         //定時/計數器0設置為計數器模式,計數脈沖由引腳T0(即P3.4)輸入,模式2(8位自動再加載型計數器)
  22.            
  23.       
  24.                    EA=1;                                    //開中斷
  25.                EX1 = 1;               //外部中斷1使能
  26.                    EX0 = 1;                 //外部中斷0使能
  27.            ET0 = 1;              //計數器中斷0使能
  28.            ET1 = 1;              //計數器中斷1使能
  29.            TH0 = 0xff;          //計數器裝載初值(高位)
  30.            TL0 = 0xff;          //計數器裝載初值(低位)
  31.            TH1 = 0xff;          //計數器裝載初值(高位)
  32.            TL1 = 0xff;
  33.            TR0 = 1;              //計數器0開
  34.            TR1 = 1;              //計數器1開
  35.     P0_1 =1;                  
  36.     p=50;
  37.         while(1)
  38.         {
  39.            mc(500);
  40.         }
  41. }


  42. void mc(uint n)
  43. {
  44.     uint i;
  45. for(i=n;i>0;i--)
  46.   {
  47.     P0_0=0;
  48.     delays(13);
  49.     P0_0=1;
  50.     delay(25,p);
  51.       
  52.    }
  53. }

  54. void mc1(uint m)
  55. {
  56.     uint j;
  57. for(j=m;j>0;j--)
  58.   {
  59.     P0_0=0;
  60.     delays(13);
  61.     P0_0=1;
  62.     delay(25,50);
  63.       
  64.    }
  65. }

  66. void delay(uint a, uint b)
  67. { uint i,j;
  68.    for(i=a;i>0;i--)
  69.   {
  70.     for(j=b;j>0;j--);
  71.   }
  72. }

  73. fangdoudong()                 //防抖動
  74. {
  75.     delays(60);
  76.     if(P3_2&&P3_3&&P3_4&&P3_5==0)
  77.     {
  78.        return 1;
  79.      }
  80.     else
  81.      {
  82.        return 0;
  83.       }
  84. }

  85. void delays(uint m)      
  86. {
  87.         uint i;
  88.         for(i=m; i>0; i--);
  89. }


  90. void Intsvr0(void) interrupt 0 using 1                //外部中斷0        
  91. {
  92.      if(fangdoudong())
  93.         p=p+10;
  94.        return;
  95. }
  96. void Intsvr1(void) interrupt 2 using 1                //外部中斷1        
  97. {
  98.         if(fangdoudong())
  99.         p=p-10;
  100.         return;
  101. }

  102. ……………………

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

所有資料51hei提供下載:
C語言編的步進電機控制程序(防抖動).zip (24.8 KB, 下載次數: 33)

評分

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

查看全部評分

回復

使用道具 舉報

ID:1 發表于 2017-5-29 03:21 | 顯示全部樓層
好資料,51黑有你更精彩!!!
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕视频一区 | 国产高清一区二区三区 | 在线中文字幕国产 | 欧美成视频在线观看 | 国产精品精品久久久 | 日本一本视频 | 国产一区二区三区四区五区加勒比 | 国产在线精品一区二区 | 91在线第一页 | 欧美激情在线一区二区三区 | 天天操 夜夜操 | 成人免费看 | 手机av在线| 欧美日韩亚洲国产综合 | 国产精品www | 国产精品国产三级国产aⅴ无密码 | 丁香久久 | 亚洲精品在线免费 | 91免费观看国产 | 欧美日韩国产一区二区三区 | 亚洲一区二区三区在线 | 色资源在线观看 | 国产高清视频一区二区 | 鲁视频| 在线久草| 剑来高清在线观看 | 精品国产精品三级精品av网址 | 成人精品久久日伦片大全免费 | 欧美精品在线观看 | 亚洲精品自在在线观看 | 精品久久久久久亚洲综合网 | 精品国产乱码一区二区三区a | 欧美一级黄色片 | 艹逼网 | 免费一级毛片 | 亚洲一区精品视频 | 欧美中文字幕一区二区三区亚洲 | 国产精品久久国产精品久久 | 亚洲永久免费观看 | 欧美一级观看 | 色99视频|