标题:
超声波避障模块程序范列-初级-高速扫描
[打印本页]
作者:
nius
时间:
2015-4-10 02:59
标题:
超声波避障模块程序范列-初级-高速扫描
当距离远时LED1灯亮LED0熄灭
当距离近时LED0灯亮LED1熄灭
远:定义为高电平持续时间>30n纳秒
近:定义为高电平持续时间<30n纳秒
设计者:薛羽豪
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar num1,num2,num3,led0,led1;
sbit tr=P1^0;
sbit ec=P1^1;
sbit lcd0=P2^0;
sbit lcd1=P2^1;
void timer(uint x)
{
uint q,w;
for(q=x;q>0;q--)
for(w=110;w>0;w--);
}
void init()
{
ec=0;
tr=0;
num1=0;
num2=0;
num3=0;
led0=1;
led1=1;
}
void trk()
{
tr=1;
timer(10);
tr=0;
num3=1;
}
void eck()
{
if(ec==1)
{
TR0=1;
num2=1;
}
if(ec==0&num2==1)
{
TR0=0;
if(num1<30)
{
led0=0;
num3=0;
}
if(num1>30)
{
led1=0;
num3=0;
}
}
}
void open_time()
{
TMOD=0x01;
TH0=(65536-1)/256;
TL0=(65536-1)%256;
EA=1;
ET0=1;
TR0=0;
}
void dongzuo()
{
if(led0==0)
{
lcd0=0;
lcd1=1;
}
if(led1==0)
{
lcd1=0;
lcd0=1;
}
}
void main()
{
while(1)
{
init();
open_time();
trk();
while(num3==1)
{
eck();
}
dongzuo();
}
}
void time() interrupt 1
{
TH0=(65536-1)/256;
TL0=(65536-1)%256;
num1++;
if(num1==65536)
{
num1=0;
}
}
作者:
nius
时间:
2015-4-10 03:03
这就将要成为我的智能小车的眼睛
作者:
yyxtj
时间:
2015-4-18 15:58
下载看看,学习一下,谢谢!
作者:
腾飞的龙
时间:
2015-8-6 17:24
最好注明单片机型号和晶振是多少的,超声波模块对这些要求很严格的,谢谢分享!
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1