电子工程师技术服务社区
- 社区首页
- 下载
- 步进电机模块资料(含源代码).zip
资料描述
想求这个程序,预期希望电机每次转动90度,speed最好为1 ,有想法联系qq1130011026
#include
sbit led=p1^0;
sbit a1=p2^0; //定义步进电机连接端口
sbit b1=p2^1;
sbit c1=p2^2;
sbit d1=p2^3;
#define uchar unsigned char
#define uint unsigned int
#define coil_a1 {a1=1;b1=0;c1=0;d1=0;}//a相通电,其他相断电
#define coil_b1 {a1=0;b1=1;c1=0;d1=0;}//b相通电,其他相断电
#define coil_c1 {a1=0;b1=0;c1=1;d1=0;}//c相通电,其他相断电
#define coil_d1 {a1=0;b1=0;c1=0;d1=1;}//d相通电,其他相断电
#define coil_ab1 {a1=1;b1=1;c1=0;d1=0;}//ab相通电,其他相断电
#define coil_bc1 {a1=0;b1=1;c1=1;d1=0;}//bc相通电,其他相断电
#define coil_cd1 {a1=0;b1=0;c1=1;d1=1;}//cd相通电,其他相断电
#define coil_da1 {a1=1;b1=0;c1=0;d1=1;}//d相通电,其他相断电
#define coil_off {a1=0;b1=0;c1=0;d1=0;}//全部断电
void zhengzhuan()
{
unsigned int j=0;
speed=3;
led=0;//转动
j=512; //旋转一周时间
coil_off
while(j--) //正向
{
coil_a1 //遇到coil_a1 用{a1=1;b1=0;c1=0;d1=0;}代替
delayms(speed); //改变这个参数可以调整电机转速 ,
//数字越小,转速越大,力矩越小
coil_b1
delayms(speed);
coil_c1