è¿ä¸ªæ§å¶æ¥è¿çµæºé度就æ¯æ§å¶ç¸åºåæ¢çæ¶é´å°±å®ç°äºãæ¯å¦ç¨P0åP1å£æ§å¶å个çµæºï¼é£ä¹å¯ä»¥è¿æ ·å®ç°ï¼
#include<reg51.h>
#define uchar unsigned char
uchar step[]={0x11,0x33,0x22,0x66,0x44,0xcc,0x88,0x99};
uchar spd=10,num=0;
sbit keyu=P3^0;
sbit keyd=P3^1;
void t0isr() interrupt 1
{
num++;
if(num>=spd)
{
num=0;
motor++;
motor%=8;
P0=step[motor];
P1=step[motor];
}
}
main()
{
TMOD=0x02;
TH0=6;
TL0=6;
ET0=1;
TR0=1;
EA=1;
while(1)
{
if(keyu==0)
{
while(keyu==0);
spd++;
if(spd>40)spd=40;
}
if(keyd==0)
{
while(keyd==0);
spd--;
if(spd<5)spd=5;
}
}
}
追é®æ¨å¥½ï¼é£æè°éå¼å
³æä¹æ ·æ¥å¢ï¼
追çç¨åºæ¯æP3.0åP3.1两个IOå£æ¥çã