1、利用单片机控制步进电机正反转,先正转一周,然后反转一周,往复循环。
2、#include "reg51.h"//包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义,
3、#define uint unsigned int#define uchar unsigned char
4、uchar ns[]={0x02,0x04,0x08,0x10};//A,B,C,D 逆时针uchar ss[]={0x10,0x08,0x04,0x02};//D,C,B,A 顺时针
5、/***********************************************涯箨唁峦*******************//* 延时函数声明 *//******************************************************************//*void mdelay(uint t){ uchar n; for(;t>0;t--) for(n=0;n<125;n++) {;}}*/void mdelay(uint t){ uchar n; while(t--) { for(n=0;n<123;n++) {;} } }
6、/***********************************************涯箨唁峦*******************//* 主函数 步距角{360/(5.625/16)}/8 *//******************************************************************/void main(){ uint i,j=128,f=128; while(j--) { for(i=0;i<4;i++) { P1=ss[i]; mdelay(10); } }
7、 while(f--) { for(i=0;i<4;i++) { P1=ns[i]; mdelay(10); } } while(1);}
8、本经验只供参考,如有不足,还请见谅,如果有什么疑问请在下边留言,及时给你解答。。。