|
頭文件
******************************************************************/
#include<AT89X52.H>
/******************************************************************
** 接線定義
******************************************************************/
#define Left_moto_go {P1_0=1,P1_2=1;P1_3=0;} //左電機(jī)正轉(zhuǎn)
#define Left_moto_back {P1_0=1,P1_2=0;P1_3=1;} //左電機(jī)反轉(zhuǎn)
#define Left_moto_Stop {P1_0=0;} //左電機(jī)停轉(zhuǎn)
#define Right_moto_go {P1_1=1,P1_4=1;P1_5=0;} //右電機(jī)正轉(zhuǎn)
#define Right_moto_back {P1_1=1,P1_4=0;P1_5=1;} //右電機(jī)反轉(zhuǎn)
#define Right_moto_Stop {P1_1=0;} //右電機(jī)停轉(zhuǎn)
/******************************************************************
** 延時(shí)函數(shù)
******************************************************************/
void delay(unsigned int k)
{
unsigned int x,y;
for(x=0;x<k;x++)
for(y=0;y<2000;y++);
}
/******************************************************************
** 小車前進(jìn)
******************************************************************/
void front_run(void)
{
Left_moto_go;
Right_moto_go;
}
/******************************************************************
** 小車倒退
******************************************************************/
void back_run(void)
{
Left_moto_back;
Right_moto_back;
}
/******************************************************************
** 小車左轉(zhuǎn)
******************************************************************/
void left_run(void)
{
Left_moto_Stop;
Right_moto_go;
}
/******************************************************************
** 小車右轉(zhuǎn)
******************************************************************/
void right_run(void)
{
Right_moto_Stop;
Left_moto_go;
}
/******************************************************************
** 小車停走
******************************************************************/
void stop(void)
{
Left_moto_Stop
Right_moto_Stop;
}
/******************************************************************
** 主函數(shù)
******************************************************************/
void main(void)
{
delay(100);
while(1)
{
front_run();
delay(200);
back_run();
delay(200);
left_run();
delay(200);
right_run();
delay(200);
stop();
delay(400);
}
}
/******************************************************************
** 結(jié)束
|
|