电子小车程序,写好之后编译成HEX文件的时候,老出错
时间:10-02
整理:3721RD
点击:
程序如下
/****************************************************************************
#include<AT89x51.H>
#define Left_moto_go {P1_0=1,P1_1=0,P1_2=1,P1_3=0;} //左边两个电机向前走
#define Left_moto_back {P1_0=0,P1_1=1,P1_2=0,P1_3=1;} //左边两个电机向后转
#define Left_moto_Stop {P1_0=0,P1_1=0,P1_2=0,P1_3=0;} //左边两个电机停转
#define Right_moto_go {P1_4=1,P1_5=0,P1_6=1,P1_7=0;} //右边两个电机向前走
#define Right_moto_back {P1_4=0,P1_5=1,P1_6=0,P1_7=1;} //右边两个电机向前走
#define Right_moto_Stop {P1_4=0,P1_5=0,P1_6=0,P1_7=0;} //右边两个电机停转
/************************************************************************/
//延时函数
void delay(unsigned int k)
{
unsigned int x,y;
for(x=0;x<k;x++)
for(y=0;y<2000;y++);
}
/************************************************************************/
//前速前进
void run(void)
{
Left_moto_go ; //左电机往前走
Right_moto_go ; //右电机往前走
}
//前速后退
void backrun(void)
{
Left_moto_back ; //左电机往前走
Right_moto_back ; //右电机往前走
}
//左转
void leftrun(void)
{
Left_moto_back ; //左电机往前走
Right_moto_go ; //右电机往前走
}
//右转
void rightrun(void)
{
Left_moto_go ; //左电机往前走
Right_moto_back ; //右电机往前走
}
/*********************************************************************/
/*--主函数--*/
void main(void)
{
delay(100);
run();
while(1) /*无限循环*/
{
run();
}
}
错误提示:*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
恩,我发现错误了,如果没有别的方向的话,要把不用的函数删除了。
这里的16行我就不明白了,不论我怎么弄,加空格回车什么的,错误都都在16行。
这只是提示你有未使用到但已声明的函数,将未使用到的函数注释掉即可。一般这些警告不会影响到HEX文件的生成
恩,对的对的,我那会儿给发现了,目前都是用什么函数,就写什么,没有像这样写上没用的。