#include<reg52.h>
#include"bjdj.h"
#define uint unsigned int
#define uchar unsigned char
uchar code CCW[]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09}; //逆時鐘旋轉相序表
uchar code CW[]={0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08}; //正時鐘旋轉相序表
void main()
{
delay_ms(1000);
}
void delay_ms(uint i)
{
uint j,k;
for(j=i;j>0;j--)
for(k=110;k>0;k--);
}
void delay_us(uint a)
{
while(a)
{
a--;
}
}
void beep(void)
{
uchar t;
for(t=0;t<100;t++)
{
delay_us(500);
FMQ=!FMQ; //產生脈沖
}
FMQ=1; //關閉蜂鳴器
}
void motor_ccw(void)
{
uchar i,j;
for(j=0;j<8;j++) //電機旋轉一周,不是外面所看到的一周,是里面的傳動輪轉了一周
{
if(k3==0)
{
delay_ms(10);
if(k3==0)
break; //如果K3按下,退出此循環
}
for(i=0;i<8;i++) //旋轉45度
{
P1=CCW[i];
delaynms(10); //調節轉速
}
}
}
這是之前參考的別人的代碼,你可以參考一下,希望對你有幫助 |