#include<reg52.h> #define uint unsigned int #define uchar unsigned char //------8拍----- uchar code zz[]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09}; //正转 uchar code fz[]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01}; //反转 void delay(uint ms) { uint t; while(ms--) for(t=0;t<120;t++); } void motor_zz(uint n) { uint i,j,k; for(i=0;i<5*n;i++) { for(j=0;j<8;j++) { for(k=0;k<120;k++) break; P1=zz[j]; delay(20); } } } void motor_fz(uint n) { uint i,j,k; for(i=0;i<5*n;i++) { for(j=0;j<8;j++) { for(k=0;k<120;k++) break; P1=fz[j]; delay(20); } } } void main() { uint N=2; while(1) { P3=0xff; //11111111 if(P3==0xfe) //11111110 { while(P3==0xfe); //11111110 P0=0xfe; //11111110 motor_zz(N); } else if(P3==0xfd) //11111101 { while(P3==0xfd); //11111101 P0=0xfd; //11111101 motor_zz(N); } } } |