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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

求一個能控制步進電機轉動角度的C語言程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:208365 發表于 2017-10-1 23:08 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
本帖最后由 單小白 于 2017-10-1 23:15 編輯

我想要實現如下的功能:單片機P2^1口輸出低電平蜂鳴器報警,同時步進電機順時針轉動90度或45度,當P2^1口輸出高電平時蜂鳴器停止報警,同時步進電機逆時針轉動90度或45度。
主要是步進電機轉動角度不知道怎么控制,對步進電機了解的不多。單片機型號是STC89C52,驅動芯片是ULN2003,步進電機型號是28BYJ-48 5VDC。


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

使用道具 舉報

沙發
ID:222394 發表于 2018-4-10 08:13 | 只看該作者
#include<reg51.h> #define uchar  unsigned char #define uint unsigned int typedef unsigned int u16;          //對數據類型進行聲明定義 typedef unsigned char u8;  sbit IN1=P0^0; /*第一個電機*/ sbit IN2=P0^1;        /*第一個電機*/ sbit IN3=P0^2;         /*第一個電機*/ sbit IN4=P0^3;         /*第一個電機*/ sbit IN5=P2^3;          sbit IN6=P2^4;          void delay(u16 i) {         while(i--);         }    void main()  {          int a=128;         P2=1;//使能         while(1)         {              IN5=1;//使能         IN6=1;//使能                  //                a--; //                if(a==0)P2=0;                 IN1=1;IN2=0;IN3=0;IN4=0;                 delay(150);      IN1=1;IN2=1;IN3=0;IN4=0;    delay(150);    IN1=0;IN2=1;IN3=0;IN4=0;    delay(150);           IN1=0;IN2=1;IN3=1;IN4=0;    delay(150);    IN1=0;IN2=0;IN3=1;IN4=0;    delay(150);     IN1=0;IN2=0;IN3=1;IN4=1;    delay(150);     IN1=0;IN2=0;IN3=0;IN4=1;    delay(150);        IN1=1;IN2=0;IN3=0;IN4=1;    delay(150);                                                           }   }
回復

使用道具 舉報

板凳
ID:222394 發表于 2018-4-10 08:14 | 只看該作者
/******************************步進電機的驅動************************************* ;FOSC = 12MHz ;--------------------------------------------------------------------------------- ; 步進電機的驅動信號必須為脈沖信號!!! 轉動的速度和脈沖的頻率成正比!!! ; 本步進電機步進角為 5.625 度 . 一圈 360 度 , 需要 64 個脈沖完成!!! ;--------------------------------------------------------------------------------- ; A 組線圈對應 P0.0 ; B 組線圈對應 P0.1 ; C 組線圈對應 P0.2 ; D 組線圈對應 P0.3 ; 正轉次序: AB 組--BC 組--CD 組--DA 組 (即一個脈沖,正轉 5.625 度) ;---------------------------------------------------------------------------------- **********************************************************************************/ /*頭文件*/ #include <reg52.h> #include <intrins.h> #define uint unsigned int #define uchar unsigned char #define nop() _nop_() uchar code table1[]={0x03,0x06,0x0c,0x09}; /*正轉表*/ uchar code table2[]={0x03,0x09,0x0c,0x06}; /*反轉表*/ #define motor P0 void delay(uchar ms) /*延時*/ { uchar j; while(ms--){ for(j=0;j<250;j++) {;} } }void main() { uchar i,j; while(1){ //正轉 3 圈共 192 個脈沖 j=0; for(i=0;i<192;i++){ motor = 0x00; motor = table1[j]; j++; if(j>=4) j=0; delay(2); } delay(200); delay(200); delay(200); delay(200); delay(200); //正轉 2 圈共 128 個脈沖 j=0; for(i=0;i<128;i++){ motor = 0x00; motor = table2[j]; j++; if(j>=4) j=0; delay(2); } delay(200); delay(200); delay(200); delay(200); delay(200); } }
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 北条麻妃视频在线观看 | 精品国产欧美日韩不卡在线观看 | 精品一区二区在线观看 | 免费一区二区三区 | 国产精品久久久久久久久免费 | 国产在线h | 日韩av成人在线观看 | 久久综合久久综合久久综合 | 日韩精品中文字幕在线 | 欧美一级淫片免费视频黄 | 亚洲午夜小视频 | 九九久久久 | 免费a v网站| 亚洲精品天堂 | 成人免费视频久久 | 国产成人在线一区 | 97精品国产97久久久久久免费 | 国产精品我不卡 | 男女久久久 | 亚洲国产一区二区视频 | 91麻豆精品国产91久久久资源速度 | 91国在线 | 久久久久久国产精品免费免费 | 亚洲免费人成在线视频观看 | 日本三级黄视频 | 我要看黄色录像一级片 | www.jizzjizz| 国产福利网站 | 欧美激情a∨在线视频播放 成人免费共享视频 | 欧美性一区二区三区 | 欧美成人在线免费 | 在线小视频 | 国产精品美女久久久av超清 | 一区二区三区亚洲 | 91精品国产91 | 欧美一区在线看 | 国产区精品在线观看 | 一区二区视频在线 | 天天插天天操 | 免费黄色大片 | 欧美日本在线观看 |