第一次用博客发表文章

  在家先研究了一下以单片机为基础的避障小车。关于小车的程序大致由几大部分组成。电机驱动,红外(超声波)传感,以及自己想安装的外部硬件的程序。总体来说不算难,但需要自己动手来拼装小车,并且反复调试程序使小车在运动时达到稳定的预期效果。下面是我编写的单片机的简单程序,还没有调试也没有优化,只是一个最基础的小车程序。

#include"reg52.h"
#define unit unsigned int

sbit z1=P3^0;
sbit z2=P3^1;
sbit y1=P3^2;
sbit y2=P3^3;

sbit h1=P0^0;
sbit h2=P0^1;
sbit h3=P0^2;

void delay(unit xms)
{
unit i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}

void qian()
{
z1=1;
z2=0;
y1=1;
y2=0;
}

void hou()
{
z1=0;
z2=1;
y1=0;
y2=1;
}

void zuo()
{
y1=1;
y2=0;
z1=0;
z2=1;
}

void you()
{
z1=1;
z2=0;
y1=0;
y2=1;
}

void main()
{
 while(1) 
 {
if(h1==1&&h2==1&&h3==1)
qian();
else if(h1==1&&h2==0&&h3==1)
hou();
else if(h1==1&&h2==0&&h3==0)
zuo();
else if(h1==0&&h2==0&&h3==1)
you();
 }
} 

这篇程序可以使小车达到简易壁障的效果,但还需要深入的优化以及对速度的调试。对速度方面我会该进成使用PWM调控小车速度,以达到最完美的速度控制,关于壁障方面我会通过更深入的探索往程序里面添加更多可能发生的情况以及应对方案。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值