基于AT89S52的超声波测距系统设计 |
|
|
18B20的协议主要有:①初始化,也就是主机检测DS18B20的存在;②ROM操作,包括主机对DS18B20的读写等;③存储器操作命令;④执行测温,读取温度和温度转换等。 通过现场测温,计算出当前温度下的波速,可较精确的计算测量距离。 3.4 显示模块 本文选择LCD1602作为显示器件。LCD是2行×16字符的显示器件,可以显示ASCII码表中的所有可显示字符。与LED相比,LCD可显示的信息更为丰富,显示内容更为直观。
中国论文联盟*编辑。 4 软件设计 系统的软件主要包括以下功能模块①DS18B20温度传感器接口模块,分为初始化子程序,写入子程序和读取子程序等;②LCD显示模块,包括LCD初始化,写数据,写命令和显示等程序;③温度补偿与距离计算模块,分为超声波发射控制程序,接收处理程序,温度补偿程序和距离计算程序;④主模块,主要包括系统的初始化,及各子程序的调度管理。图3是程序流程图。 4.1 超声波往返时间计算子程序 void test( void) { StartModual();//启动超声波模块 _nop_();//延时以防止接收端 _nop_();//接到发射波 _nop_(); _nop_(); _nop_(); while(!Echo);//当Echo为零时等待 TR0=1; //开启计数 while(Echo); //当Echo为1 //计数并等待 TR0=0; //关闭计数 } 4.2 距离计算子程序 本段程序中temp是从DS18BB0读取的16位二进制温度数值,在对速度进行温度补偿的时候需要根据DS18B20协议转换成浮点数tp。 void calculater() { float v; //声速 float tp; //温度 time=TH0*256+TL0; TH0=0 上一页 [1] [2] [3] [4] [5] 下一页 |
|
|
|
上一个论文: 浅析声波透射法在基桩检测的应用 下一个论文: 浅议逻辑学与大学生素质教育 |
|