云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 基于超声波测距的智能小车设计 - 图文

基于超声波测距的智能小车设计 - 图文

  • 62 次阅读
  • 3 次下载
  • 2025/5/6 11:54:37

}

wei2=(real_dis/100); wei3=real_dis/1000;

/*显示刷新函数函数*/ void display(void) {

switch(ledflag)

{

case

0:P1=ledcode[wei0];ledwei0=1;ledwei1=0;ledwei2=0;ledwei3=0;break;

case

1:P1=ledcode[wei1];ledwei0=0;ledwei1=1;ledwei2=0;ledwei3=0;break;

case

2:P1=ledcode[wei2];ledwei0=0;ledwei1=0;ledwei2=1;ledwei3=0;break;

case

3:P1=ledcode[wei3];ledwei0=0;ledwei1=0;ledwei2=0;ledwei3=1;break;

}

ledflag++; if(ledflag==4) ledflag=0;

delay(0x80);//768us=0.768ms//520次

}

/*报警处理函数*/ void alarm_light(void) {

if(real_dis<=10) { }

else if(real_dis<20)

39

speak=1;

{ if(alarm_flag20>=1) {

speak^=1; alarm_flag20=0; }

}

else if(real_dis<50) { if(alarm_flag50>=2) {

speak^=1; alarm_flag50=0; }

}

else if(real_dis<100) { if(alarm_flag100>=4) {

speak^=1;

alarm_flag100=0;

} } else {

speak=1;

}

}

/*系统初始化程序*/ void init()//系统初始化

40

{ }

void int0(void) interrupt 0 //关闭计数器,存计数值,置标志 {

EA=0;

//关闭中断

//关外部中断 //读取数值

temp=0xfe; P2=temp;

TMOD=0X11; //初始化定时器T0,T1用于产生40hz发射波 TH0=0x00; TL0=0x00; TH1=0x00; TL1=0x00; TF1=0; PX0=1; ET1=1; EA=1; TR1=1; IT0=0;

//启动定时器1 //外部低电平触发方式

EX0=0; TimerL=TL0; TimerH=TH0; TR0=0; TH0=0x00; TL0=0x00; dis_flag=1; }

//关闭定时器0

//距离计算标志

void time1(void) interrupt 3 {

TF1=0; TH0=0x00;

41

}

TL0=0x00; TH1=0x00; TL1=0x00; send_flag=1;

//开启接收回波中断

/*系统主函数*/ void main() {

unsigned int i,j; init(); real_dis=150; delay(0x40); while(1) {

if(send_flag==1) {

//系统初始化

//y预设初值,防止开机未发射超声波,电机锁死

/* 报警级别计数*/

alarm_flag100++; alarm_flag50++; alarm_flag20++; alarm_flag10++;

/* 报警级别计数*/

send_flag=0; count++; if(count==5) {

count=0; CLK40K();

delay(0x40); //延时,避开发射的直达声波信号,可以调节测量

42

的最小距离

}

if(dis_flag==1) {

dis_flag=0; }

distance(); EA=1; }

EX0=1;

display(); //调用显示函数

if(real_dis<=10) { } }

a=temp>>i; b=temp<<(9-i); P2=a|b;

for(j=1;j<9;j++) {

delay(300);

display(); //调用显示函数 for(i=1;i<9;i++)//循环下移

alarm_light(); }

}

43

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

} wei2=(real_dis/100); wei3=real_dis/1000; /*显示刷新函数函数*/ void display(void) { switch(ledflag) { case 0:P1=ledcode[wei0];ledwei0=1;ledwei1=0;ledwei2=0;ledwei3=0;break; case 1:P1=ledcode[wei1];ledwei0=0;ledwei1=1;ledwei2=0;ledwei3=0;break; case 2:P1=ledcode[wei2];ledwei0=0;ledwei1=0;ledwei2=1;ledwei

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com