#include<reg51.h> #include<intrins.h> typedef unsigned char BYTE; typedef unsigned int WORD; typedef bit BOOL; #define M_PORT P1 code BYTE MCW[]={1,2}; //{1,3,2} code BYTE MCCW[]={2,1}; //{2,3,1} Delay(WORD ms) {BYTE i; while(ms--) {for(i=0;i<100;i++) {_nop_(); } } } main() {BOOL Direction; BYTE i; while(1) {if(Direction=1) for(i=0;i<2;i++) {M_PORT=MCW; Delay(50); } else for(i=0;i<2;i++) {M_PORT=MCCW; Delay(50);} } } 硬件电路:单片机的P1.0 P1.1加在ULN2003的一侧,另一侧接两相的步进电机。12V供电。现在问题是我把程序下进去,只是振动,不转动。我的软件仿真没有问题呀。请高手指点
|