资源简介
能测接入多个超声波,并且每个的测量精度达到1cm.还加上了距离过近语音播报信息!

代码片段和文件信息
/*-----------------------------------------------
名称:18B20温度传感器
网站:www.doflye.net
编写:shifang
日期:2009.5
修改:无
内容:18B20单线温度检测的应用样例程序
------------------------------------------------*/
#include“18b20.h“
/*------------------------------------------------
18b20初始化
------------------------------------------------*/
/*------------------------------------------------
uS延时函数,含有输入参数 unsigned char t,无返回值
unsigned char 是定义无符号字符变量,其值的范围是
0~255 这里使用晶振12M,精确延时请使用汇编大致延时
长度如下 T=tx2+5 uS
------------------------------------------------*/
void DelayUs2x(unsigned int t)
{
while(--t);
}
/*------------------------------------------------
mS延时函数,含有输入参数 unsigned char t,无返回值
unsigned char 是定义无符号字符变量,其值的范围是
0~255 这里使用晶振12M,精确延时请使用汇编
------------------------------------------------*/
void DelayMs(unsigned int t)
{
while(t--)
{
//大致延时1mS
DelayUs2x(245);
DelayUs2x(245);
}
}
bit Init_DS18B20(void)
{
bit dat=0;
DQ = 1; //DQ复位
DelayUs2x(5); //稍做延时
DQ = 0; //单片机将DQ拉低
DelayUs2x(200); //精确延时 大于 480us 小于960us
DelayUs2x(200);
DQ = 1; //拉高总线
DelayUs2x(50); //15~60us 后 接收60-240us的存在脉冲
dat=DQ; //如果x=0则初始化成功 x=1则初始化失败
DelayUs2x(25); //稍作延时返回
return dat;
}
/*------------------------------------------------
读取一个字节
------------------------------------------------*/
unsigned char ReadOneChar(void)
{
unsigned char i=0;
unsigned char dat = 0;
for (i=8;i>0;i--)
{
DQ = 0; // 给脉冲信号
dat>>=1;
DQ = 1; // 给脉冲信号
if(DQ)
dat|=0x80;
DelayUs2x(25);
}
return(dat);
}
/*------------------------------------------------
写入一个字节
------------------------------------------------*/
void WriteOneChar(unsigned char dat)
{
unsigned char i=0;
for (i=8; i>0; i--)
{
DQ = 0;
DQ = dat&0x01;
DelayUs2x(25);
DQ = 1;
dat>>=1;
}
DelayUs2x(25);
}
/*------------------------------------------------
读取温度
------------------------------------------------*/
unsigned int ReadTemperature(void)
{
unsigned char a=0;
unsigned int b=0;
unsigned int t=0;
Init_DS18B20();
WriteOneChar(0xCC); // 跳过读序号列号的操作
WriteOneChar(0x44); // 启动温度转换
DelayMs(5);
Init_DS18B20();
WriteOneChar(0xCC); //跳过读序号列号的操作
WriteOneChar(0xBE); //读取温度寄存器等(共可读9个寄存器) 前两个就是温度
a=ReadOneChar(); //低位
b=ReadOneChar(); //高位
b<<=8;
t=a+b;
return(t);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-03-19 11:47 程序2--最终版\
文件 5289 2013-03-18 16:53 程序2--最终版\18b20.LST
文件 5168 2013-03-18 16:53 程序2--最终版\18b20.OBJ
文件 2749 2013-03-18 16:25 程序2--最终版\18b20.c
文件 658 2013-03-18 16:23 程序2--最终版\18b20.h
文件 9315 2013-03-18 16:53 程序2--最终版\ISD4004.LST
文件 8895 2013-03-18 16:53 程序2--最终版\ISD4004.OBJ
文件 3444 2013-03-17 22:01 程序2--最终版\ISD4004.c
文件 162 2013-03-17 22:01 程序2--最终版\ISD4004.h
文件 5814 2013-03-18 16:53 程序2--最终版\LCD1602.LST
文件 6287 2013-03-18 16:53 程序2--最终版\LCD1602.OBJ
文件 3147 2013-03-12 15:59 程序2--最终版\LCD1602.c
文件 345 2013-03-17 19:29 程序2--最终版\LCD1602.h
文件 6376 2009-05-07 14:37 程序2--最终版\STARTUP.A51
文件 14052 2013-03-18 14:29 程序2--最终版\STARTUP.LST
文件 749 2013-03-18 14:29 程序2--最终版\STARTUP.OBJ
文件 13054 2013-03-18 16:53 程序2--最终版\main.LST
文件 17663 2013-03-18 16:53 程序2--最终版\main.OBJ
文件 5061 2013-03-18 17:00 程序2--最终版\main.c
文件 34526 2013-03-18 16:53 程序2--最终版\超声波
文件 39269 2013-03-18 16:53 程序2--最终版\超声波.M51
文件 9253 2013-03-18 16:53 程序2--最终版\超声波.hex
文件 88 2013-03-18 16:53 程序2--最终版\超声波.lnp
文件 189 2013-03-19 11:47 程序2--最终版\超声波.plg
文件 69376 2013-03-19 11:47 程序2--最终版\超声波.uvgui.Administrator
文件 69376 2013-03-18 22:21 程序2--最终版\超声波.uvgui_Administrator.bak
文件 12110 2013-03-18 22:21 程序2--最终版\超声波.uvopt
文件 13854 2013-03-18 17:00 程序2--最终版\超声波.uvproj
文件 12104 2013-03-18 17:00 程序2--最终版\超声波_uvopt.bak
文件 14063 2013-03-17 23:01 程序2--最终版\超声波_uvproj.bak
- 上一篇:80c51单片机4位数码管计算器设计
- 下一篇:ISD1760 语音播报温度
相关资源
- STM32f103超声波模块例程
- 用于无线传感器网络应用的超声波传
- 循迹小车51程序(超声波 颜色识别 舵
- 基于51单片机的超声波测距技术实现含
- 51单片机智能小车花式,寻迹,红外,
- 基于M-BUS的矿用超声波明渠流量计设计
- 超声波遥控开关电路图
- 基于51单片机超声波测距毕业设计
- STM32F103RCT6 TIME4 TIME5 同时捕获六路
- HC-SR04超声波模块(包含基于51stm32配套
- STM32f103C8t6型单片机用于超声波测距
- 超声波车速测量系统设计
- 基于单片机控制和超声波传感器的液
- 基于超声波定位的跟随小车
- 基于STM32VET6的身高体重肺活量测量系
- 超声波传感器全套资料
- 超声波雾化器专用IC
- stm32-超声波避障程序案例
- MSP432蓝牙控制小车并进行超声波测距
- stm32f103超声波传感器hcsr04控制模板
- STM32F103_SRF05超声波测距模块程序
- STM32蓝牙+超声波+舵机.rar
- 超声波测距stm32
- 基于超声波与航迹推算的扫地机器人
- 超声波测距 基于51 pic avr单片机
- 超声波测距codePCB原理图
- JSN-SR04T超声波测距资料
- stm8s006超声波硬件设计电路
- 超声波测距模组V2.0
- 超声波测距电路发射和接收
评论
共有 条评论