基于51的寻址避障小车设计.docx
- 文档编号:30105730
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:14
- 大小:359.70KB
基于51的寻址避障小车设计.docx
《基于51的寻址避障小车设计.docx》由会员分享,可在线阅读,更多相关《基于51的寻址避障小车设计.docx(14页珍藏版)》请在冰豆网上搜索。
基于51的寻址避障小车设计
基于51的址小车设计
壁障
红外线发射与接收部分
图1
其中send加个38khz。
Pulse加个250hz左右的频率。
有单片机本身产生;第二种方法就是加个555产生个38khz的频率从发射二极管发射出去。
电路图如下
图2
接收部分和与上面相同.
图2程序如下
其中p2.4~p2.7是是接收头out的信号;
#include
#defineuintunsignedint
#defineq0xa0
#definet0x50
#definez0x60
#definey0x90
voidmain()
{
P2=0x00;
while
(1)
{
if(P2==0x0f)
{
P1=q;
}
if(P2==0x0e)
{
P1=z;
}
if(P2==0x0d)
{
P1=z;
}
if(P2==0x0c)
{
uintj9,k9;
for(j9=5000;j9>0;j9--)
{
P1=t;
}
for(k9=10000;k9>0;k9--)
{
P1=z;
}
}
if(P2==0x0b)
{
P1=y;
}
if(P2==0x0a)
{
uintj,k;
for(j=5000;j>0;j--)
{
P1=t;
}
for(k=10000;k>0;k--)
{
P1=y;
}
}
if(P2==0x09)
{
P1=t;
}
if(P2==0x08)
{
uintm,f;
for(m=5000;m>0;m--)
{
P1=t;
}
for(f=10000;f>0;f--)
{
P1=z;
}
}
if(P2==0x07)
{
P1=y;
}
if(P2==0x06)
{
P1=t;
}
if(P2==0x05)
{
uintj11,k11;
for(j11=5000;j11>0;j11--)
{
P1=t;
}
for(k11=10000;k11>0;k11--)
{
P1=z;
}
}
if(P2==0x04)
{
uintj1,k1;
for(j1=5000;j1>0;j1--)
{
P1=t;
}
for(k1=10000;k1>0;k1--)
{
P1=y;
}
}
if(P2==0x03)
{
uintj2,k2;
for(j2=5000;j2>0;j2--)
{
P1=t;
}
for(k2=10000;k2>0;k2--)
{
P1=y;
}
}
if(P2==0x02)
{
uintj6,k6;
for(j6=5000;j6>0;j6--)
{
P1=t;
}
for(k6=10000;k6>0;k6--)
{
P1=y;
}
}
if(P2==0x01)
{
uintj3,k3;
for(j3=5000;j3>0;j3--)
{
P1=t;
}
for(k3=10000;k3>0;k3--)
{
P1=z;
}
}
if(P2==0x00)
{
P1=t;
}
}
}
图一的程序如下
#include
#defineuintunsignedint
sbityou1=P1^0;//左前方
sbityou=P1^1;//左左边
sbitzuo1=P1^2;//右前方
sbitzuo=P1^3;//右右边
sbitsend=P1^4;//发射灯
sbitPulse=P1^5;
sbitz1=P2^0;//左边马达正极
sbitz=P2^1;//左边马达负极
sbity1=P2^2;//右边马达正极
sbity=P2^3;//右边马达负极
unsigndecharcc;
voiddelay(uintj)
{
uinti;
for(;j>0;j--)
for(i=220;i>0;i--);
}
voidtimer0(void)interrupt1using1
{
cc++;
TH0=(65536-27)/256;//定时器初值装入
TL0=(65536-27)%256;
send=!
send;
if(cc==154)
{
Pulse=!
Pulse;
}
}
voidmain()
{
cc=0;
TRO=1;
TMOD=0X00;
TH0=(65536-27)/256;//定时器初值装入。
注意这里不同的晶振装入不同
TL0=(65536-27)%256;
ETO=1;
EA=1;
if(you1=1)//右方qian
{
if(you=1)
{
if(zuo1=1)
{
if(zou=1)
{
z=1;
z1=0;
y=1;
y1=0;
}
else
{
z1=0;
z=1;
y1=1;
y=0;
}
}
else
{
z1=0;
z=1;
y1=1;
y=0;
}
}
else
{
z1=0;
z=1;
y1=1;
y=0;
}
}
elseif(zuo1=1)//左方qian
{
if(zuo=1)
{
if(zuo1=1)
{
if(you=1)
{
z=1;
z1=0;
y=1;
y1=0;
}
else
{
z1=1;
z=0;
y1=0;
y=1;
}
}
else
{
z1=1;
z=0;
y1=0;
y=1;
}
}
else
{
z1=1;
z=0;
y1=0;
y=1;
}
}
elseif(you=1)
{
if(zuo=1)
{
z1=1;
z=0;
y1=1;
y=0;
}
else
{
z1=0;
z=1;
y1=1;
y=0;
}
}
if(zuo=1)
{
z1=0;
z=1;
y1=1;
y=0;
}
}
驱动电动机部分电路图如下
寻址部分和臂章部分差不多;只是调节滑动电阻改变发射管的功率;如有需要可加我qq352953456要全部资料。
本人的作品;早做好了最近在做mp3;希望共同学习。
以后有东西了共享哦;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 寻址 小车 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)