📄 main.c
字号:
#include<motor.h>
unsigned char motoCou;
main()
{
unsigned char KeyValue;
bit key1,key2;
///系统初始化
key1=0;
key2=0;
CON1=0;
CON2=0;
CON3=0;
CON4=0;
CON5=0;
/* ///系统硬件设置
TMOD = 0x20;
TH1 = 0x0fd; //9600
SCON = 0x50;
PCON = 0;
TR1 = 1;
ES = 1;
EA = 1;
while(1)
{
CON5=1;
CON1=0;
delay(500);
CON1=1;
CON2=0;
delay(500);
CON2=1;
CON3=0;
delay(500);
CON3=1;
CON4=0;
delay(500);
CON4=1;
CON5=0;
delay(500);
} */
delay(2000);
while(1)
{
WDI=!WDI;
KeyValue=scankey();
switch(KeyValue)
{
case 0: break;
case 1: key1=~key1;break;
case 2: key2=~key2;break;
}
if((key1==1) && (key2!=1)) doUp();
else if((key2==1) && (key1!=1))
{
if(BUTTON==0) continue;
else doDown();
}
else doStop();
delay(100);
}
}
///子函数定义
void delay(long d)
{
while(d--)
{
WDI=!WDI;
}
}
void doMoto(long i)
{
// WDI=!WDI;
switch(motoCou)
{
case 0:
CON1=1;
CON2=1;
CON3=0;
CON4=0;
CON5=0;
delay(i);
break;
case 1:
CON1=0;
CON2=1;
CON3=1;
CON4=0;
CON5=0;
delay(i);
break;
case 2:
CON1=0;
CON2=0;
CON3=1;
CON4=1;
CON5=0;
delay(i);
break;
case 3:
CON1=0;
CON2=0;
CON3=0;
CON4=1;
CON5=1;
delay(i);
break;
case 4:
CON1=1;
CON2=0;
CON3=0;
CON4=0;
CON5=1;
delay(i);
break;
}
// delay(200);
}
void doUp()
{
motoCou++;
if(motoCou > 4)
{
motoCou=0;
}
doMoto(250);
}
void doDown()
{
if(BUTTON==0)
{
delay(500);
return;
}
if(motoCou==0)
{
motoCou=4;
}
else
{
motoCou--;
}
doMoto(500);
}
void doStop(void)
{
CON1=0;
CON2=0;
CON3=0;
CON4=0;
CON5=0;
}
unsigned char scankey(void)
{
unsigned char key;
BUTTON_UP=1;
BUTTON_DOWN=1;
key=0;
delay(10);
key=BUTTON_UP;
if(BUTTON_UP==0) delay(20);
if(BUTTON_UP==0)
{
while(BUTTON_UP==0)
{
WDI=!WDI;
}
return 1;
}
key=0;
delay(10);
key=BUTTON_DOWN;
if(BUTTON_DOWN==0) delay(20);
if(BUTTON_DOWN==0)
{
while(BUTTON_DOWN==0)
{
WDI=!WDI;
}
return 2;
}
else return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -