⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 +Ȧ

📁 迷官小车程序
💻
字号:
#ifndef _CHE_H_
#define _CHE_H_
#include "value.h"

void go()		//小车前进
{
	qu_ll = 1;  
	qu_zl = 0; 
	qu_zr = 0; 
	qu_rr = 1;    	
}

void back()	   //小车后退
{
	qu_ll = 0;  
	qu_zl = 1; 
	qu_zr = 1; 
	qu_rr = 0;    	
}

void left()	  //小车左转 左边轮子停下、右边轮子前进
{
	qu_ll = 0;  
	qu_zl = 0; 
	qu_zr = 0; 
	qu_rr = 1;    	
}

void left_s() //小车左转 左边轮子后退、右边轮子前进
{
	qu_ll = 0;  
	qu_zl = 1; 
	qu_zr = 0; 
	qu_rr = 1;    	
}

void stop()	   //小车停下
{
	qu_ll = 0;  
	qu_zl = 0; 
	qu_zr = 0; 
	qu_rr = 0;
}

void right()   //小车右转 左边轮子前进、右边轮子停下
{
	qu_ll = 1;  
	qu_zl = 0; 
	qu_zr = 0; 
	qu_rr = 0;    	
}

void right_s()	//小车右转 左边轮子前进、右边轮子后退
{
	qu_ll = 1;  
	qu_zl = 0; 
	qu_zr = 1; 
	qu_rr = 0;	
}

void che_90_180_break(uchar dat)
{	
	uchar i_z = 0;
	while(1)			  //循环等待中间寻迹传感器到黑线上
	{	
		if(dat == L)
		{
			if(xun_l == 0)	
			{
				i_z++;
				if(i_z > 30)	  //消除干扰
				{
					i_z = 0;
					stop();
					delay_1ms(100);
					break;		
				}
			} 
		}	
		if(dat == R)
		{
			if(xun_r == 0)	
			{
				i_z++;
				if(i_z > 30)
				{
					i_z = 0;
					stop();		 //
					delay_1ms(100);	
					break;	
				}
			}
		}
//	    if(xun_z == 0)	  //如果中间那寻迹传感器到了黑线上,要让小车停下来前进了
//		{
//			i_z++;	      //消去干扰
//			if(i_z >= 20) //10次之后就确定寻迹模块的中间传感器到黑线上了
//			{
//				if(dat == L)   //如果是左转90度就让右转的方法制动
//					right_s();	
//				else 
//					left_s();  //如果是右转90度就让左转的方法制动
//				delay_1ms(15);
//				stop();
//				delay_1ms(70);		 
//				break;		   //break退出while(1)这个死循环
//			}
//		}
//		else	   //没有在黑钱上就给i_z变量清零
//		{
//			i_z = 0;
//		}	
	}
}

void left_s_90_while()		//小车向左转90度
{
//	go();					//前进一小会让小车转90度时刚好让黑线在小车的中间				  
//	delay_1ms(70);
	left_s();				//左转90度注意这个延时不能太长  只要能让寻迹模块中间的传感离开黑线就好
	delay_1ms(300);
	che_90_180_break(L);	
}

void right_s_90_while()	    //小车向右转90度
{
//	go();					//前进一小会让小车转90度时刚好让黑线在小车的中间				  
//	delay_1ms(70);
	right_s();				//左转90度注意这个延时不能太长  只要能让寻迹模块中间的传感离开黑线就好
	delay_1ms(300);
	che_90_180_break(R);	
}



#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -