![](http://www.openhw.org/module/forum/data/attachment/forum/201406/11/c1549460846bb40f1c30febc7f411aaf.jpg)
28BYJ48步进电机介绍
1、本次设计使用的是28BYJ48步进电机。以ULN2003APG作为驱动。步进电机必须加驱动才可以运转,驱动信号必须为脉冲信号,没有脉冲的时候,步进电机静止,如果加入适当的脉冲信号,就会以一定的角度(称为步角)转动。转动的速度和脉冲的频率成正比。
2、28BYJ48步进电机是5V 驱动的4相5线的步进电机,而且是减速进电机,减速比为1:64 ,步进角为5.625/64度。如果需要转动1圈,那么需要360/5.625*64=4096个脉冲信号。
3、改变脉冲的顺序,可以方便的改变转动的方向。
4、该步进电机的耗电流为200mA左右,驱动端口为P0.0(A),P0.1(B),P0.2(C),P0.3(C)。正转次序:AB组--BC组--CD组--DA组(即一个脉冲,正转5.625度);反转次序:AB组--AD组--CD组--CB组(即一个脉冲,正转 5.625 度),如表1,表2所示:
![](http://www.openhw.org/module/forum/data/attachment/forum/201406/11/fdc5353d2c948f9656917111ac821ee9.jpg)
![](http://www.openhw.org/module/forum/data/attachment/forum/201406/11/8b60a21de2c07928268080d4ed03e9ac.jpg)
5、电机主要参赛如下图所示:
![](http://www.openhw.org/module/forum/data/attachment/forum/201406/11/5a45eb67c30d2fa96abd8a8ae8ba6a0a.jpg)
测试程序
附上一个简单的28BYJ48步进电机c语言测试程序 :
/*
步进电机测试程序
*/
#include
#define unit unsigned int
sbit set1=P0^0; //定义四线步进电机4个IO口
sbit set2=P0^1;
sbit set3=P0^2;
sbit set4=P0^3;
void Delay(unit t) //延时函数
{
while(--t);
}
void main(void)
{
for(;;)
{
set1=set2=0; //相1 : 1100
set3=set4=1;
Delay(8000);
set3=set2=0; //相2 : 1001
set1=set4=1;
Delay(8000);
set1=set2=1; //相3 : 0011
set3=set4=0;
Delay(8000);
set3=set2=1; //相4 : 0110
set1=set4=0;
Delay(8000); //如此循环即可实现转动,如果需要反方向转动,则必须是相4-相1时序
}
}