1-wire单总线DS18B20
Posted prayer521
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1-wire单总线DS18B20相关的知识,希望对你有一定的参考价值。
要想实现单总线通信,每一个挂在总线上的从机必须拥有开路或3态输出。单总线DS18B20的DQ引脚用内部电路实现了开漏输出,其等效电路如下图;
当单片机IO引脚配置为
mcu IO引脚 | 电流流向 | DS18B20 |
输入浮空(高阻) |
DS18B20开漏输出高阻态,被上拉电阻拉为高电平。
+5V-->4.7K上拉电阻-->DQ-->(5uA Typ)-->GND |
TX输出1:
TX输出0: |
推挽输出1: 输出0: |
+VDD-->mos-->MCU IO引脚-->(5uA Typ)-->GND +5V-->4.7k上拉电阻-->MCU IO引脚-->mos-->GND |
RX输入1 RX输入0 |
由下表可知,数据引脚DQ的典型电流值为5uA。
实测16路DS18B20并联,DQ上流过的电流大概只有20uA。
实测66路DS18B20并联,DQ上流过的电流大概只有200uA。电源电流40ma;
不算转换时间读取66个DS18B20的值需要840ms,30个需要380ms。
DS18B20坏掉之后暂存器中读出来的9个字节数据全部是0XFF。若是按CRC校验算法计算,前8个0xFF字节的校验值是0XC9,也即是由错误的温度数据按软件方式计算出来的CRC值与收到的错误的CRC值(看作硬件CRC值)不可能相等。
以上是关于1-wire单总线DS18B20的主要内容,如果未能解决你的问题,请参考以下文章