DS18B20 可通过 VDD 引脚外接电源供电,也可工作于“寄生电源”模式——无需本地外部电源。寄生电源非常适合远程测温或空间极度受限的场合。

上图给出了 DS18B20 的寄生电源控制电路:当总线为高电平时,芯片通过 DQ 引脚“窃取” 1-Wire 总线上的能量。窃得的电荷在总线高电平期间为芯片供电,同时部分电荷被储存在寄生电容 Cpp 中,以供总线低电平时使用。
采用寄生电源时,VDD 引脚必须接地。
在寄生电源模式下,只要满足规定的时序与电压要求,1-Wire 总线与 Cpp 可为 DS18B20 的大部分操作提供足够电流。
然而,当芯片正在进行温度转换或将暂存器数据复制到 EEPROM 时,工作电流可达 1.5 mA。该电流会在弱上拉电阻上产生不可接受的压降,也超过 Cpp 的供电能力。
为确保 DS18B20 获得足够电流,必须在温度转换或暂存器复制期间对 1-Wire 总线实施“强上拉”。典型做法是用 MOSFET 把总线直接拉到电源轨,如下图所示。

必须在主机发出 Convert T [44h] 或 Copy Scratchpad [48h] 命令后 10 µs(最大)内切换到强上拉;
强上拉必须持续整个转换时间 tconv 或数据拷贝时间 tWR(10 ms);
强上拉期间,1-Wire 总线上不得进行任何其他操作。
DS18B20 也可采用传统方式供电:把外部电源接到 VDD 引脚。如下图所示。

优点:无需 MOSFET 强上拉,温度转换期间 1-Wire 总线可自由传输其他数据。
高温注意事项
当环境温度高于 +100 °C 时,不推荐采用寄生电源,因为高温漏电流增大,可能导致通信失败。
若应用可能超过该温度,强烈建议改用外部电源供电。
电源类型检测
某些情况下,主机不知道总线上的 DS18B20 是寄生供电还是外部供电,而这决定是否需要强上拉。
主机可发送:
Skip ROM [CCh]
Read Power Supply [B4h]
再发一个“读时隙”
在读时隙期间:
寄生供电的 DS18B20 会把总线拉低;
外部供电的 DS18B20 让总线保持高电平。
若检测到总线被拉低,主机即知道温度转换期间必须提供强上拉。
如有型号采购及选型需求,可直接联系兆亿微波电子元件商城。