基于51单片机Proteus的温度传感器DS18B20仿真技术

基于51单片机Proteus的温度传感器DS18B20与晶显示屏LCD1602仿真技术

其中,DQ端需添加一个上拉电阻,阻值一般为4.7KΩ。 

温度传感器 DS18B20

DS18B20 是一款常用的数字温度传感器,以下是关于它的详细信息:

一、硬件特性

1. 单总线接口:

DS18B20 采用单总线接口,这意味着它只需要一根数据线就可以与微控制器(如单片机)进行通信,极大地简化了硬件连接。它通过该数据线既可以传输数据,也可以获取电源(寄生电源模式),当然也可以使用外部电源供电。

2.引脚功能:

引脚

功能

VCC

电源(3.0V~5.5V)

DQ

单总线接口

GND

接地端

3. 温度测量范围:

测量范围为 -55°C 至 +125°C,在 -10°C 至 +85°C 范围内具有 ±0.5°C 的精度,能够满足大多数环境温度测量的需求。

4. 分辨率可配置:

可以将温度分辨率设置为 9 位、10 位、11 位或 12 位,对应的分辨率分别为 0.5°C、0.25°C、0.125°C 和 0.0625°C。更高的分辨率可以提供更精确的温度测量,但会相应增加转换时间。

5. 唯一 64 位序列号:

每个 DS18B20 都有一个唯一的 64 位序列号,这使得多个 DS18B20 可以挂接在同一条总线上,实现多点温度测量,并且可以通过序列号来识别不同的传感器。

二、单总线时序结构

单总线时序结构主要包括初始化、写(0和1)时序、 读(0和1)时序。

1. 初始化:

主机输出低电平,保持低电平至少480us(该时间范围:480-960us),以产生复位脉冲。接着主机释放总线,外部的上拉电阻将单总线拉高,延时15-60us,并进入接收模式。

接着DS18B20拉低总线60-240us,以产生低电平应答脉冲,若为低电平,还要做延时,其延时的时间从外部上拉电阻将单总线拉高算起最少要480us.

初始化时序图

初始化程序: 

/******************************DS18B20 初始化********************************/
void Init_DS18B20() 
{
	uchar temp;
	DQ=1;
	delay_us(8);
	DQ=0;   // 拉低DQ总线,持续时间为480us至960us之间
	delay_us(80); //拉低至少480us,产生复位脉冲
	DQ = 1; // 主机释放总线
	delay_us(14);  // 延时15-16us
	temp=DQ; // 进入接收模式,此时temp=0
	delay_us(20); // 低电平信号持续60-240us,DS18B20主动释放总线,总线电平被拉高
}

2. 写时序:

发送或接受一个字节时,连续调用8次发送或接受一位的时序,依次发送或接受一个字节的8位低位在前。写时序包括写0时序和写1时序。所有写时序至少需要60us,且在2次独

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值