⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 超声波.c

📁 超声波检测C代码源程序
💻 C
字号:
# include<reg51.h>
#include<intrins.h> 
#include <absacc.h>

#define unit unsigned int
#define uchar unsigned char
sbit P34=P3^4;
sbit P10=P1^0;


void send();
void receive();

void init_io();
void init_com();
void mDelay(unsigned int Delay);
void delay_us(uchar time);
void qidongcs();


uchar TL0data,TH0data;   //T0计数值
uchar recdata=0;  //从上位机接收到的数据
uchar recFlag=0;//接收回波标志
unit DlyT;


void int1()interrupt 2
{
   TR0=0;
   recFlag=1;
    
}



void main()
{
   init_io();
   init_com();
   for(;;)
   {
  
      //P10=!P10;  
      qidongcs();
	  //////////////////延时1.765ms
	  mDelay(1);
     /* DlyT=200;//230;
	  while(--DlyT);*/
	  /////////////////////
      EX1=1;
      mDelay(45);
      EX1=0;  
      if(recFlag==1)
      {
	  	  //P10=!P10;	
          recFlag=0;
          TH0data=TH0;
          TL0data=TL0;
          send();
      	  //mDelay(100);
      }

   }
}
void init_io()
{
   P0=0x00;
   P1=0x00;
   P2=0x00;
   P3=0x0f;
}
void init_com()
{
   SCON=0x50;             //选择串口工作方式1 允许接收
   PCON=0x80;             //波特率加倍
   TMOD=0x21;             //定时器1工作方式2(8位自动重装)//T0设置为方式1,16位定时器

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -