技术参数
电压V 12 相数 4 电感mH 30 环境温度℃ -10~+55 电阻Ω 32 电流A 0.38
#include<pic.h>
#define u8 unsigned char
#define u16 unsigned int
#define A RB0
#define B RB1
#define C RB2
#define D RB3
//RB 0 1 2 3 分别对应着步进电机的 A B C D四根线
//现象 先一步0.9度 正转一圈 再 一步0.9度 反转一圈
//然后 再一步1.8度 正转一圈 再 一步1.8度 反转一圈
//周而复始
u8 n;
u8 num=2;
void delay(u8 i)
{
u16 j;
for(j=45455;j>0;j--) //当i=1时 500mS延时; 当i=2时 1S延时
{
asm("clrwdt");
}
}
void init(void)
{
TRISD=0X00;
TRISB=0XF0;
PORTB=0XFF;
}
void AB(void)
{
A=1;
B=1;
C=0;
D=0;
delay(num);
}
void BC(void)
{
A=0;
B=1;
C=1;
D=0;
delay(num);
}
void CD(void)
{
A=0;
B=0;
C=1;
D=1;
delay(num);
}
void DA(void)
{
A=1;
B=0;
C=0;
D=1;
delay(num);
}
void AA(void)
{
A=1;
B=0;
C=0;
D=0;
delay(num);
}
void BB(void)
{
A=0;
B=1;
C=0;
D=0;
delay(num);
}
void CC(void)
{
A=0;
B=0;
C=1;
D=0;
delay(num);
}
void DD(void)
{
A=0;
B=0;
C=0;
D=1;
delay(num);
}
void main(void)
{
delay(num);
init();
while(1)
{
for(n=50;n>0;n--)
{
AA();
AB();
BB();
BC();
CC();
CD();
DD();
DA();
}
delay(num);
delay(num);
delay(num);
for(n=50;n>0;n--)
{
DA();
DD();
CD();
CC();
BC();
BB();
AB();
AA();
}
delay(num);
delay(num);
delay(num);
for(n=50;n>0;n--)
{
AB();
BC();
CD();
DA();
}
delay(num);
delay(num);
delay(num);
for(n=50;n>0;n--)
{
DA();
CD();
BC();
AB();
}
delay(num);
delay(num);
delay(num);
}
}
上一篇:怎样判断单片机是冷启动还是热启动
下一篇:TI推出业界最低功耗的6核DSP的特性