百度知道 - 信息提示
用51单片机产生PWM 控制步进电机的256细分,以下是protues原理图和C语言程序,我想仿真,但是没有成功
试着玩的,你参考一下吧:
/**********四相步进电机驱动实验*****************/
#include
unsigned char ABCD=0; //工做相标志
unsigned char TIM=0;
sbit LD=P1^5;
sbit LC=P1^4;
sbit LB=P1^3;
sbit LA=P1^2;
void main(void)
{
LA=1;
LB=0;
LC=0;
LD=0;
TMOD = 0x01;
TH0 = 0x3C;
TL0 = 0xB0;
EA = 1;
ET0 = 1;
TR0 = 1;
while(1)
{
; ;
}
}
void Timer0Interrupt(void) interrupt 1
{
TH0 = 0x3C;
TL0 = 0xB0;
TIM++;
if(TIM==2)
{
TIM=0;
switch(ABCD)
{
case 0: LA=0; LB=1; LC=1; ABCD=1; break;
case 1: LB=0; LC=1; LD=1; ABCD=2; break;
case 2: LC=0; LD=1; LA=1; ABCD=3; break;
case 3: LD=0; LA=1; LB=1; ABCD=0; break;
}
}
}
用步进电机实现小车的前进后退加速减速停止转向
步进电机? 不行吧.
可以用电子调速器+动力电机, 舵机控制转向.
关于51单片机发出PWM信号控制舵机(和电调):
http://www.baidu.com/s?tn=baidusite&bs=pwm+%B6%E6%BB%FA+%D0%C5%BA%C5&f=8&wd=pwm+%B6%E6%BB%FA+%D0%C5%BA%C5+51+%B5%A5%C6%AC%BB%FA