資源簡介
這個是當初實訓自己在網上下載尋跡的的源碼,在這個基礎上加了紅外遙控,藍牙遙控,超聲避障,超聲跟隨。每個模塊之間都是獨立的,上電先進入紅外控制,然后根據按鍵選擇功能。代碼可供學習,可實際使用,編譯器是keil4。藍牙遙控需要下載藍牙串口app,配對后可以遙控。

代碼片段和文件信息
#include
#include
unsigned?char?a;
unsigned?char?Infrared;?//檢測P0低四位的值
unsigned?char?cnt?=?0;
sbit?IN1?=?P1^4;?//定義左電機控制引腳
sbit?IN2?=?P1^3;
sbit?IN3?=?P1^2;?//定義右電機控制引腳
sbit?IN4?=?P1^1;
void?delayms(unsigned?char?x)?????????????????????????//0.14mS延時程序
{
??unsigned?char?i;????????????????????????????????????//定義臨時變量
??while(x--)??????????????????????????????????????????//延時時間循環
??{
????for?(i?=?0;?i<13;?i++)?{}?????????????????????????//14mS延時
??}
}
void?Timer0Config()
{
TMOD?&=?0xF0;
TMOD?|=?0x01;
TH0?=?0xFF;
TL0?=?0x7E;
EA?=?1;
ET0?=?1;
TR0?=?1;
}
void?zhizou()
{
?Motor_Left(1?50)?Motor_Right(1?50);
?Infrared?=?P0?&?0x0F;?
}
void?houtui1()
{
?Motor_Left(0?50)?Motor_Right(0?50);
// ?Infrared?=?P0?&?0x0F;?
}
void?left()
{ ?
??Motor_Left(1?20)?Motor_Right(1?70);
// ??Infrared?=?P0?&?0x0F;?
}
void?right()
{ ?
??Motor_Left(1?70)?Motor_Right(1?20);
// ??Infrared?=?P0?&?0x0F;?
}
void?dazhuan1()
{
a=1;
while(a)
{
Motor_Left(0?60);?Motor_Right(1?60);
Infrared?=?P0?&?0x0F;
if(Infrared==0x04)
{
Motor_Left(1?80);?Motor_Right(0?80);?break;
}
else?if(Infrared==0x02)
{
Motor_Left(1?80);?Motor_Right(0?80);?break;
}
}
Infrared?=?P0?&?0x0F;
}
void?dazhuan2()
{
a=1;
while(a)
{
Motor_Left(1?60);?Motor_Right(0?60);
Infrared?=?P0?&?0x0F;
if(Infrared==0x02)
{
Motor_Left(0?80);?Motor_Right(1?80);?break;
}
else?if(Infrared==0x04)
{
Motor_Left(0?80);?Motor_Right(1?80);?break;
}
}
Infrared?=?P0?&?0x0F;
}
void?weitiao1()
{
a=1;
while(a)
{
Motor_Left(0?40);?Motor_Right(1?80);
Infrared?=?P0?&?0x0F;
switch(Infrared)
{
case?0x04:
a=1;?break;
default:
a=0;?break;
}
}
Infrared?=?P0?&?0x0F;
}
void?weitiao2()
{
a=1;
while(a)
{
Motor_Left(1?80);?Motor_Right(0?40);
Infrared?=?P0?&?0x0F;
switch(Infrared)
{
case?0x02:
a=1;?break;
default:
a=0;?break;
}
}
Infrared?=?P0?&?0x0F;
}
void?Motor_Left(bit?ReverOrCoro?unsigned?char?DutyCycle)?//傳遞正反轉(1為正轉,0為反轉)、占空比參數
{
if(ReverOrCoro?==?1)
{
IN1?=?1;
if(cnt?<=?DutyCycle)
{
IN2?=?0;
}
else
{
IN2?=?1;
}
}
else
{
IN2?=?1;
if(cnt?<=?DutyCycle)
{
IN1?=?0;
}
else
{
IN1?=?1;
}
}
}
void?Motor_Right(bit?ReverOrCoro?unsigned?char?DutyCycle)?//傳遞正反轉(1為正轉,0為反轉)、占空比參數
{
if(ReverOrCoro?==?1)
{
IN3?=?1;
if(cnt?<=?DutyCycle)
{
IN4?=?0;
}
else
{
IN4?=?1;
}
}
else
{
IN4?=?1;
if(cnt?<=?DutyCycle)
{
IN3?=?0;
}
else
{
IN3?=?1;
}
}
}
void?stop()
{
IN1=0;
IN2=0;
IN3=0;
IN4=0;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????2874??2018-06-27?15:20??循跡決賽程序1.0\car.c
?????文件?????????418??2018-06-27?16:54??循跡決賽程序1.0\car.h
?????文件????????8380??2018-06-27?17:17??循跡決賽程序1.0\car.LST
?????文件????????9030??2018-06-27?17:17??循跡決賽程序1.0\car.OBJ
?????文件??????????34??2018-06-27?17:20??循跡決賽程序1.0\main.__i
?????文件????????6117??2018-06-27?17:31??循跡決賽程序1.0\main.c
?????文件???????14279??2018-06-27?17:20??循跡決賽程序1.0\main.LST
?????文件????????9613??2018-06-27?17:20??循跡決賽程序1.0\main.OBJ
?????文件????????1111??2018-06-26?19:25??循跡決賽程序1.0\motor.c
?????文件???????????0??2018-06-26?19:37??循跡決賽程序1.0\motor.h
?????文件????????3752??2018-06-26?19:27??循跡決賽程序1.0\motor.LST
?????文件????????3198??2018-06-26?19:27??循跡決賽程序1.0\motor.OBJ
?????文件????????1711??2018-06-27?11:30??循跡決賽程序1.0\red.c
?????文件???????????0??2018-06-26?20:05??循跡決賽程序1.0\red.h
?????文件????????6376??2013-06-24?10:27??循跡決賽程序1.0\STARTUP.A51
?????文件???????14056??2018-06-27?17:17??循跡決賽程序1.0\STARTUP.LST
?????文件?????????749??2018-06-27?17:17??循跡決賽程序1.0\STARTUP.OBJ
?????文件???????15898??2018-06-27?17:20??循跡決賽程序1.0\決賽
?????文件????????3189??2018-06-27?17:20??循跡決賽程序1.0\決賽.hex
?????文件??????????68??2018-06-27?17:20??循跡決賽程序1.0\決賽.lnp
?????文件????????8614??2018-06-26?19:25??循跡決賽程序1.0\決賽.LST
?????文件???????26763??2018-06-27?17:20??循跡決賽程序1.0\決賽.M51
?????文件????????7404??2018-06-26?19:25??循跡決賽程序1.0\決賽.OBJ
?????文件????????3819??2018-06-27?17:31??循跡決賽程序1.0\決賽.plg
?????文件??????139903??2017-05-20?11:46??循跡決賽程序1.0\決賽.uvgui.Administrator
?????文件??????140065??2017-05-18?13:28??循跡決賽程序1.0\決賽.uvgui_Administrator.bak
?????文件???????59770??2018-06-27?17:31??循跡決賽程序1.0\決賽.uvopt
?????文件???????13560??2018-06-26?20:59??循跡決賽程序1.0\決賽.uvproj
?????文件???????59266??2018-06-27?16:10??循跡決賽程序1.0\決賽_uvopt.bak
?????文件???????13568??2018-06-26?19:26??循跡決賽程序1.0\決賽_uvproj.bak
- 上一篇:白塞爾法大地主題解算
- 下一篇:好客租房項目視頻+資料+筆記.txt
評論
共有 條評論