找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1026|回复: 0
打印 上一主题 下一主题
收起左侧

我的超声波测距程序

[复制链接]
跳转到指定楼层
楼主
ID:271530 发表于 2018-1-4 18:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
void delay(uchar xms);//延时大概x毫秒
void display(uchar number);               
void main(void);
void count(void);
void didi();
sbit Trig=P1^3; //超声波发射端
sbit Echo=P1^2; //接
sbit g=P2^5;
sbit s=P2^4;                                                  
sbit beep=P2^2;         //报警
sbit led=P2^0;
bit flag=0;
uint time=0;
uint timer=0;         
uint M;
code uchar buf[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}; //{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}共阳
/******************************************/
void delay(uint z)
{
        uint i,j;
        for(i=z;i>0;i--)
         for(j=640;j>0;j--);
}
/**********************************************/
void display(uchar number)               
{
/******************************************/
        g = 0;
        s = 1;
        P0 = buf[number%10];
        delay(1);
        P0 = 0xff;
/******************************************/
    g = 1;
        s = 0;
        P0 = buf[number/10%10];
        delay(1);
/**********************************************/
void main(void)
{          
      TMOD=0X11; //定时器工作方式1,GATE=1;
      TH0=0;
      TL0=0;
               ET0=1;         //T0中断
          ET1=1;         //T1中断
          TR1=0;         //开启定时器
      EA=1; //开总中断
  while(1)
{           
    while(!Echo); //当RX为零时等待

    while(Echo); //当RX为1时计数并等待

  didi();
         }       
}

/****************************************************/
void count(void)
{       

    time=TH0*256+TL0;
    TH0=0;
    TL0=0; //清零
    M=(time*1.7)/100;//厘米
    for(M>=1;M<=20;flag==1)//范围0--5米
         {
          int k;
        while(1)
        {
         for(k=0;k<=999;k++)
         {


        display(k);
       

          
         }
        }
           }                         

        }

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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