001【毕业设计】基于单片机寻迹巡线避障智能小车系统设计资料

三个模拟红外传感器进行检测循迹,具体模式如图所示,使用超声波进行避障,避障距离可以进行调整,预设为200cm,可以代码进行修改。适合二次开发。非常好的毕业设计资料,包括仿真图+程序+pdf原理图+元器件清单+简要说明+程序详细注释。部分代码如下,下载地址

【资源下载】下载地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl

复制这段内容后打开百度网盘手机App,操作更方便哦

#include <reg51.h>
#include <intrins.h>
/* #include "ultrasonic_wave.h"//超声波头函数 */
#define unchar	unsigned char
#define uint	unsigned int
#define ULint	unsigned long int
sbit		left_go		= P0 ^ 0;       /* 左轮前进,1有效 */
sbit		left_re		= P0 ^ 1;       /* 左轮后退 */
sbit		reght_go	= P0 ^ 2;       /* 右轮前进 */
sbit		reght_re	= P0 ^ 3;       /* 右轮后退 */
sbit		mh		= P0 ^ 4;       /* 避障 */
sbit		rs		= P0 ^ 5;       /* lcd RE端 */
sbit		rw		= P0 ^ 6;       /* lcd R/W端 */
sbit		e		= P0 ^ 7;       /* lcd E端 */
sbit		sou		= P1 ^ 6;       /* 蜂鸣输出 */
unchar		seconds		= 60, s = 0; minutes = 59;
char code	number[]	= { "0123456789" };

char flag = 0;
/* 超声波 */
char flags = 0;
/* 超声波距离 */
char flag1s = 0;
/* 计算定时间 */
uint time = 0;
/* 计算距离 */
ULint L_ = 0;
/* 数值有误 */
unchar FW = 0;

unchar p1zt = 0xff, moshi = 0x00;       /* p1zt存p1口寻迹状态,moshi存控制模式 */

/* =====================延时函数==================*/
void delay()                            /* 延时100us */
{
	unchar i;
	for ( i = 0; i < 100; i++ )
		;
}


void delay_50ms()   /* 延时50ms */
{
	unchar ms;
	for ( ms = 0; ms < 50; ms++ )
	{
		delay();
	}
}


void seg( unchar i )  /* 可选秒延时i=1表示1s */
{
	unchar a;
	for (; i > 0; i-- )
	{
		for ( a = 0; a < 20; a++ )
			delay_50ms();
	}
}


/* ===============lcd屏控制=============== */
void xsj( unchar dat[16], w )    /* 写数据函数,dat[16]要显的字符串,w字符个数,w<16 */
{
   
   

猜你喜欢

转载自blog.csdn.net/theroadon/article/details/108931219