資源簡介
#include "main.h"
void delay(u8 time)
{
u8 m,n;
for(n=0;n<time;n++)
for(m=0;m<2;m++){}
}
void checkDistance()
{
//若能探測到后車存在則全速運行,否則慢速運行等待后車
slowORfast = (distance) ? 1 : 0;
}
u8 borderlineScan()
{
u8 aa = 0;
if(!line1)/*((!line1) || (!line5))*/ aa = 1; //左邊檢測
else if((!line2) || (!line6)) aa = 2; //右邊檢測
else if((!line3) || (!line4)) aa = 3;//中間檢測
if(aa) led = 0;
else led = 1;
return aa;
}
、、、、、、、、、、、、、、、、、

代碼片段和文件信息
#include?“driver.h“
static?void?ZhiXian(u8?kuaiman);
static?void?ZuoZhuan();
static?void?YouZhuan();
static?void?ZuoDaZhuan(); ?
static?void?ChaoChe();
DRIVER?car?=?{
0
0
0
20
35
150
ZhiXian
YouZhuan
ZuoZhuan
ZuoDaZhuan
ChaoChe
};
void?ZhiXian(u8?kuaiman)
{
if(kuaiman)//快速
{
F2=0;
F4=0;
F3=1;
F1=1; ???
while(1)
{
if?(car.N==180)
{
F3=0;
F1=0;
}
?
if?(car.N==200)break;
car.N++;
}
car.N=0;
}
else//慢速
{
F2=0;
F4=0;
F3=1;
F1=1; ???
while(1)
{
if?(car.N==car.Z)
{
F3=0;
F1=0;
}
?
if?(car.N==200)break;
car.N++;
}
car.N=0;
}
}
void?ZuoZhuan()
{
F1=1;
F2=0;
F4=0;
for(car.i?=?0;car.i?80;car.i?++)
{
F3=1; ???
while(1) ??
{
if?(car.N==car.X)
F3=0;
if?(car.N==100)break;
car.N++;
}
car.N=0;?
}??
}
void?YouZhuan()
{
F3=1;
F4=0;
????F2=0;
for(car.i?=?0;car.i?80;car.i?++)
{
F1=1; ???
while(1)
{
if?(car.N==car.X)
???? F1=0;
if?(car.N==100)break;
car.N++;
}
car.N=0;
}
}
void?ZuoDaZhuan()
{
//for(car.i?=?0;car.i?2;car.i?++)
{
for(car.j?=?0;car.j?80;car.j?++)
{
ZhiXian(1);
}
}
F1=1;
F2=0;
F4=0;
for(car.i?=?0;car.i?470;car.i?++)
{
F3=1; ???
while(1)
{
if?(car.N==car.Y)
F3=0;
if?(car.N==100)break;
car.N++;
}
car.N=0;
}
} ?
void?ZuoXiaoZhuan()
{
F1=1;
F2=0;
F4=0;
for(car.i?=?0;car.i?300;car.i?++)
{
F3=1; ???
while(1)
{
if?(car.N?==?50)
F3=0;
if?(car.N==120)break;
car.N++;
}
car.N=0;
}
}
void?YouXiaoZhuan()
{
F3=1;
F4=0;
????F2=0;
for(car.i?=?0;car.i?300;car.i?++)
{
F1=1; ???
while(1)
{
if?(car.N==50)
???? F1=0;
if?(car.N==120)break;
car.N++;
}
car.N=0;
}
}
void?ChaoChe()
{
u8?yanzi;
//此處忽略超車區虛線標志(在主函數中已經關閉邊界掃描定時器)
ZuoXiaoZhuan();//介于左方向大轉和右邊越界左轉幅度之間
YouXiaoZhuan();//方向修正
TR1?=?1;//開啟邊界掃描,防止在超車時沖出超車帶
for(yanzi?=?0;yanzi?90000;yanzi?++)
ZhiXian(1);//全速超車
TR1?=?0;//出超車帶,再次忽略虛線
YouXiaoZhuan();//出超車區
ZuoXiaoZhuan();//方向回正
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????14430??2011-10-30?20:58??cars\cars
?????文件???????3308??2011-10-30?20:58??cars\cars.hex
?????文件?????????55??2011-10-30?20:58??cars\cars.lnp
?????文件??????20087??2011-10-30?20:58??cars\cars.M51
?????文件????????177??2011-11-02?10:18??cars\cars.plg
?????文件??????74700??2011-10-30?21:00??cars\cars.uvgui.Administrator
?????文件??????74700??2011-10-30?20:58??cars\cars.uvgui_Administrator.bak
?????文件??????57936??2011-11-02?10:20??cars\cars.uvopt
?????文件??????13928??2011-10-31?16:05??cars\cars.uvproj
?????文件??????57939??2011-10-31?16:05??cars\cars_uvopt.bak
?????文件??????13958??2011-10-30?20:58??cars\cars_uvproj.bak
?????文件???????2334??2011-09-06?10:05??cars\driver.c
?????文件????????496??2011-09-03?17:18??cars\driver.h
?????文件???????8043??2011-10-30?20:58??cars\driver.LST
?????文件???????8257??2011-10-30?20:58??cars\driver.OBJ
?????文件???????3391??2011-11-15?13:08??cars\main.c
?????文件????????738??2011-09-06?10:03??cars\main.h
?????文件???????9117??2011-10-30?20:58??cars\main.LST
?????文件???????9148??2011-10-30?20:58??cars\main.OBJ
?????目錄??????????0??2011-11-15?13:07??cars
-----------?---------??----------?-----??----
???????????????372742????????????????????20
評論
共有 條評論