啊啊啊51单片机驱动超声波侧距离模块真是菜了,,,进来...

2020-02-05 09:11发布

刚买的模块上面芯片的信号没抹去了现在自己看着资料弄弄不出结果····菜鸟不是伤神是神伤了。。。。。。。。。。。。。。。。。。



#include<reg52.h>
#include<1602lcd.c>
#define uchar unsigned char
#define uint unsigned int
sbit lcd_rw_port = P2^6;
sbit key=P1^0;
sbit Trig=P3^7;
sbit Echo=P3^2;
uint distance_data;
void delay(char xms)                                //延时xms
{
    char i,j;
         for(i=xms;i>0;i--)
            for(j=300;j>0;j--);
}
void delay_20us()
{
     uchar bt ;
    for(bt=0;bt<10;bt++);
        }
void disp(int lcd_data)
{
      
          lcd_locate(1,1);
          lcd_4_char(lcd_data);
               
          lcd_locate(2,1);       
          lcd_4_char(3000);
}
void main()
{    lcd_rw_port=0;
     lcd_int();
     lcd_write_com(0x01);
         Trig=0;
          
         TMOD=0x09;
         TH0=0x00;
         TL0=0x00;
         ET0=1;
         TR0=1;
         EA=1;
         while(1)
         {
             Trig=1;
                 delay_20us;
                 Trig=0;
                 
                while(Echo==0)
                           ;
                     TH0=0x00;
                 TL0=0x00;

                  
             while(Echo==1)
                          ;       
                          distance_data=TH0;
                          distance_data<<=8;
                          distance_data=distance_data|TL0;
                          distance_data*=12;
                          distance_data/=58;
                          disp(distance_data);

                                   
                       
       
        }
}

上面是自己弄得···得不到结果,得不到结果·······
大虾们能给个好点的参考吗·······
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。