5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
查看: 2161|回复: 7
打印 上一主题 下一主题

超声波报警谁帮我添加一个发光管指示

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-21 18:29 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
超声波报警谁帮我添加一个发光管指示
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit Tsonic=P3^0;
sbit Rsonic=P3^2;
sbit buz=P0^0;
uint distance=0;
float n=0.172;        //超声波速度为344m/s
void close()
{
buz=0;

}
void delay4us()
{;;}
void delayms(uint k)
{
uint m,n;
for(n=k;n>0;n--)
for(m=110;m>0;m--);
}
void sonic()
{
uchar i;
for(i=10;i>0;i--)
{
   Tsonic=1;
   delay4us();
   Tsonic=0;
   delay4us();
}
}
void main()
{
close();
TMOD=0x01;       //设置计数器0工作为方式1
TH0=0;
TL0=0;      //计数器0赋初值0      
ET0=1;      //允许T0中断
IT0=1;            //设置中断触发方式为下降沿触发方式
EX0=1;         //打开外部中断0
EA=1;            //开总中断
TR0=1;         //启动计数器0
while(1)
{
   sonic();
if(distance>1400)
buz=0;

else
     buz=1;  
   
}
}
void timer0() interrupt 1      //计数器0中断
{
distance=0;
}
void ex0() interrupt 0         //外部0中断
{
EX0=0;      //禁止外部中断0
TR0=0;        //关闭计数器0
distance=(int)((TH0*256+TL0)*n);//根据测得时间计算距离
TH0=0;     
TL0=0;        //计数器0清零
EX0=1;        //打开外部中断0
TR0=1;        //启动计数器0
}

欢迎继续阅读楼主其他信息

主题

  • 没有相关信息
  • 没有相关信息
  • 没有相关信息
8
发表于 2013-10-9 13:28 | 只看该作者
顶个。
7
发表于 2013-9-7 09:23 | 只看该作者
高人哪么多,学习了
6
发表于 2013-5-27 13:14 | 只看该作者
帮顶
5
发表于 2013-4-22 18:47 | 只看该作者
sbit buz=P0^0;
sbit LED=p3^3;
改成
sbit LED=P3^3;
P要大写,我给你的是小写的了。
LED要接一个220欧姆的电阻

4
 楼主| 发表于 2013-4-22 16:28 | 只看该作者

1234567

本帖最后由 806543786 于 2013-4-22 16:31 编辑
zuoplayer 发表于 2013-4-21 18:57
没太明白你想干什么,如果是距离太近时要有一个二极管发光,如下修改

#include


谢谢呀
谢谢可惜编译不通过
CHENGXU.C(25): error C202: 'p3': undefined identifier
CHENGXU.C(75): error C202: 'LED': undefined identifier
Target not created

3
发表于 2013-4-21 18:57 | 只看该作者
没太明白你想干什么,如果是距离太近时要有一个二极管发光,如下修改

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit Tsonic=P3^0;
sbit Rsonic=P3^2;
sbit buz=P0^0;
sbit LED=p3^3;
uint distance=0;
float n=0.172;        //超声波速度为344m/s
.........

while(1)
{
sonic();
if(distance>1400)
buz=0;

else
buz=1;
LED=1;
}



沙发
发表于 2013-4-21 18:55 | 只看该作者
完全不懂 求楼主解答

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /1 下一条

快速回复 返回顶部 返回列表