步進電機的多種使用方法的解釋
E4D54205CDDAEACDD9AD224676F4D569.jpg (193.12 KB, 下載次數: 60)
下載附件
2020-4-24 18:03 上傳
JD}}3[0U7SHO_VKPFQRK030.png (11.44 KB, 下載次數: 56)
下載附件
2020-4-24 18:03 上傳
單片機源程序如下:
- /*
- 對本程序使用的說明:采用的是4拍式的工作方式,使用的是引腳P1.0-P1.3
- */
- #include<reg52.h>
- #define uint unsigned int
- #define uchar unsigned char
- sbit IN1=P1^0; //A
- sbit IN2=P1^1; //B
- sbit IN3=P1^2; //C
- sbit IN4=P1^3; //D
- void delay_bujin(uint zz)
- {
- uint dd,jj;
- for(dd=zz;dd>0;dd--)
- {
- for(jj=123;jj>0;jj--) ;
- }
- }
- void zhengzhuan() //步進電機正轉
- {
- IN1=1;IN2=1;IN3=0;IN4=0;delay_bujin(2); // AB
- IN2=1;IN3=1;IN1=0;IN4=0;delay_bujin(2); // BC
- IN3=1;IN4=1;IN1=0;IN2=0;delay_bujin(2); // CD
- IN4=1;IN1=1;IN2=0;IN3=0;delay_bujin(2); //DA
- }
- void tingzhi() //步進電機停止
- {
- IN1=0;IN2=0;IN3=0;IN4=0;
- delay_bujin(10000);
- }
- void fanzhuan() //步進電反轉
- {
- IN4=1;IN3=1;IN2=0;IN1=0; delay_bujin(2);//DC
- IN3=1;IN2=1;IN4=0;IN1=0;delay_bujin(2);//CB
- IN2=1;IN1=1;IN3=0;IN4=0;delay_bujin(2);//BA
- IN1=1;IN4=1;IN2=0;IN3=0;delay_bujin(2);//AD
- }
-
- void main()
- {
- uint cishu;
-
- while(1)
- {
- for(cishu=0;cishu<300;cishu++)
- {
- zhengzhuan();
- }
- tingzhi();
- for(cishu=0;cishu<300;cishu++)
- {
- fanzhuan();
- }
- }
- }
復制代碼
hex文件下載:
步進電機-引腳式.zip
(20.36 KB, 下載次數: 7)
2020-4-24 18:04 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|