文章总结(帮你们节约时间)
- 我们将告别误差感人的DHT11,深入了解它为何让我们又爱又恨,以及为什么是时候对它说“再见,祝你(在别人的项目里)一切安好”。
- 我们将从最基础的“电阻”——是的,你没看错,就是电阻——开始,探索如何利用NTC热敏电阻和湿敏电阻这两个小家伙感知真实世界的温度与湿度,并揭开它们背后的物理原理。
- 我们将手把手、肩并肩地选择元器件(主角是强大的ESP32S3!),设计并搭建出我们专属的高精度温湿度传感电路,让你从电路图小白变身布线小能手(或者至少能看懂图了)。
- 我们将用Arduino点亮ESP32S3的智慧之光,编写代码从我们搭建的电路中读取原始数据,通过魔法般的计算,最终将精准的温湿度展现在OLED屏幕上,让数据看得见、摸得着(虽然摸的是屏幕)。
嘿,DHT11,是时候体面地退场了!
各位观众,各位观众,欢迎来到今天的“电子积木”大讲堂!今天我们要聊的,是一个在DIY电子界几乎无人不知、无人不晓的“老朋友”——DHT11温湿度传感器。啊,DHT11!光是念出这个名字,是不是就能勾起你第一次点亮LED后,那种“我简直是电子天才”的激动心情?它简单、它便宜、它资料满天飞,简直是初学者快速体验“物联网”门槛的VIP快速通道卡。插上三根线(VCC, GND, Data),烧个库函数,duang!温度湿度就出来了!是不是感觉自己分分钟就能搓一个智能家居系统,拳打小米,脚踢华为?
但是,朋友们,正如我们年少时迷恋过的“非主流”发型,总有一天我们会成熟,会发现,有些东西,初见时惊为天人,用久了……嗯,就那么回事儿。DHT11,就是这样一个让人又爱又恨的存在。它的爱,在于它的“傻瓜化”,恨呢?也在于它的“傻瓜化”背后,那令人时常挠头的精度和稳定性。
那么,在正式请这位老将体面退场之前,我们不妨先给它开一个“生平事迹报告会”,了解一下这位曾经的“网红”传感器,究竟是如何工作的,以及它为什么会让我们这些追求极致的“技术宅”们,最终决定含泪(或者不含泪)将它打入冷宫。

DHT11:廉价的温湿度“播报员”是如何炼成的?
想象一下,DHT11内部其实住着两位“体感专员”。一位负责量体温,另一位负责感知空气的“潮湿指数”。
负责量体温的这位,其实是一颗NTC热敏电阻 (Negative Temperature Coefficient Thermistor)。这玩意儿有啥特性呢?简单说,就是它的电阻值会随着温度的升高而降低,像个怕热的小胖子,越热越“瘦”(电阻变小)。DHT11内部就利用这个特性来感知温度。
另一位负责感知湿度的,则是一种湿敏电阻或湿敏电容。更常见的是一种高分子聚合物的湿敏元件,它的介电常数或者电阻值会随着空气中水蒸气含量的变化而变化。空气越潮湿,吸收的水分子越多,它的某个电特性(比如电容值或电阻值)就会发生相应的改变。DHT11就是通过捕捉这种变化来推算当前空气的相对湿度的。
这两位“专员”收集到数据后,并不会直接嚷嚷出来。DHT11内部还有个小小的“单片机”(可以理解为一个微型CPU),它负责读取这两位专员的“体感报告”,经过一番小小的处理和转换,再通过一种它自己独创的“单总线”协议,把温度和湿度数据打包发送出来。我们只需要用ESP32S3(或者Arduino Uno等)的一根数据引脚,就能接收到这个“天气预报”。
听起来是不是还挺像那么回事儿的?简单,粗暴,有效!
“感动常在”的误差:DHT11的阿喀琉斯之踵
然而,正如每一位英雄都有自己的阿喀琉斯之踵,DHT11的“命门”就在于它的精度和响应速度。
- 温度误差:官方宣称在常温下(0-50°C)的温度测量误差是 ±2°C。±2°C是什么概念?就是说,实际温度25°C,它可能告诉你23°C,也可能告诉你27°C。如果你只是想知道现在是夏天还是冬天,那没问题。但如果你想用它来精确控制恒温箱,或者搞点严肃的科学实验……朋友,它可能会让你怀疑人生。你以为你在孵小鸡,结果可能是在做“冰镇鸡仔”或者“铁板烧鸡仔”。
- 湿度误差:湿度测量的误差是 ±5% RH。这个误差幅度,对于一些对湿度敏感的应用(比如高档烟草、茶叶的储藏,精密仪器的保养)来说,简直是灾难性的。±5% RH,可能意味着你的雪茄要么干得像柴火,要么湿得能长蘑菇。
- 分辨率:温度分辨率1°C,湿度分辨率1%RH。这意味着它感知不到0.5°C这种细微的温度变化。它只会告诉你现在是25°C或者26°C,中间地带?不存在的!
- 采样率:最快也就1Hz,也就是1秒钟更新一次数据。如果你需要实时监测快速变化的温湿度环境,DHT11会慢悠悠地告诉你:“别急,我算算……大概是……刚才那个数吧?”
- 一致性:买一批DHT11回来,你会发现它们哥几个的读数可能都不太一样,像是有自己的“个性”。
更让人头疼的是,这些误差还不是固定的。有时候你会发现,嘿,今天这个DHT11好像还挺准的嘛!过两天,它可能就飘了,给你的数据能让你怀疑是不是地球磁场发生了偏转。
“但是,它便宜啊!” 我仿佛听到了有些朋友内心的呐喊。是的,便宜是王道。但当你的项目因为传感器的不给力而频繁翻车,当你对着屏幕上那跳跃不定的数字眉头紧锁,当你因为数据不准而被老板/客户/老婆质疑专业能力时,你可能会想:“当初,我是不是应该多花几块钱,买个靠谱点的?”
所以,朋友们,为了我们的发际线,为了项目的成功率,为了那么一点点工程师的“小追求”,是时候和DHT11说一句:“感谢你曾经的陪伴,但我的征途是星辰大海,是更高的精度,更稳的性能!您老,请安息吧……哦不,请光荣退休!”
告别“集成包”,拥抱“电阻芯”:高精度之路的起点
当我们决定抛弃DHT11这种“打包好”的便利传感器时,我们面前通常有两条路:
-
选择一个更高级的“集成包”,比如SHT3x系列、BME280等等。这些传感器确实在精度、稳定性上远超DHT11,内部集成了更复杂的信号调理电路和校准数据,使用起来也非常方便,通常是I2C或者SPI接口。这条路,没毛病,省心省力,效果拔群。如果你只是想要一个结果,那么选它们准没错。
-
但是!如果你和我一样,是个有点“强迫症”,喜欢“刨根问底”,享受“从源头掌控一切”的快感的家伙,那么,我们不妨走得更“野”一点,更“硬核”一点——直接从最基础的传感元件入手!没错,我们今天就要尝试用分立的NTC热敏电阻和湿敏电阻(注意,是电阻元件本身,而不是已经封装好的模块)来打造我们的高精度温湿度计!
“哇!直接用电阻?那不是回到石器时代了吗?” 你可能会这么惊呼。别急,听我慢慢道来。
这样做有什么好处呢?
- 深入理解原理:你会真正理解温度和湿度是如何转换成电信号的,而不是仅仅调用一个库函数那么简单。这种“知其然,知其所以然”的快感,是无可替代的。
- 极致的定制化:你可以根据你的具体需求,选择特定参数、特定封装的热敏电阻和湿敏电阻,甚至进行更精细的电路设计和校准,理论上可以达到比某些集成传感器更高的精度(当然,这需要付出相当的努力)。
- 成本(理论上):单个的传感元件通常比高度集成的传感器模块要便宜。当然,你还需要额外的电路和校准工作,所以最终成本孰高孰低,得看具体情况。但对于大批量生产,这可能是个值得考虑的点。
- 装逼指数MAX:当别人还在用DHT11、SHT30的时候,你掏出一个自己用电阻搭的温湿度计,淡淡地说一句:“哦,这个啊,我自己用NTC和湿敏电阻攒的,Steinhart-Hart方程算出来的,精度还行。” 那气场,是不是瞬间两米八?
当然,这条路也更具挑战性。你需要自己设计信号调理电路(主要是电压采样电路),自己处理原始数据,自己进行繁琐的校准。但这,不也正是DIY的乐趣所在吗?不折腾,那叫买成品!我们玩电子的,就是要享受这个“化腐朽为神奇”的过程!
温度感知的核心:NTC热敏电阻,越热越“怂”的小家伙
首先,让我们来认识一下负责感知温度的主力——NTC热敏电阻 (Negative Temperature Coefficient Thermistor)。
“Thermistor”这个词,是“thermal”(热的)和“resistor”(电阻)的结合体。顾名思义,就是一种电阻值对温度非常敏感的电阻器。而“NTC”则指明了它的特性:负温度系数。这意味着,温度越高,它的电阻值就越低;温度越低,它的电阻值就越高。 想象一个非常怕冷又非常怕热的人,冷的时候缩成一团(电阻大,电流难以通过),热的时候则完全摊开(电阻小,电流容易通过)。NTC热敏电阻就是这么个“戏精”。

NTC热敏电阻通常由金属氧化物(如锰、镍、钴、铜、铁的氧化物)经过陶瓷工艺烧结而成。通过精确控制这些氧化物的配比和烧结工艺,就可以制造出具有特定电阻-温度特性的热敏电阻。
关键参数解读:打开NTC热敏电阻的“说明书”
当你在选购NTC热敏电阻时,会看到 datasheet(数据手册)上标注着一些关键参数,理解它们至关重要:
-
标称电阻值 (Nominal Resistance, R25R_{25}R25 或 R0R_0R0):
这指的是在某个特定参考温度下(通常是25°C)热敏电阻的电阻值。比如,一个“10kΩ NTC热敏电阻”,意思就是在25°C环境下,它的电阻值是10千欧。这是NTC最重要的身份标识之一。 -
B值 (Beta Value, β):
B值是描述NTC热敏电阻在一定温度范围内电阻值随温度变化剧烈程度的一个参数,单位是开尔文 (K)。它通常由两个特定温度点(例如25°C和50°C,或25°C和85°C)的电阻值计算得出。B值越大,意味着在相同的温度变化下,电阻值的变化也越大,即灵敏度越高。一个常见的B值范围可能是3000K到5000K。
B值的计算公式近似为:
β=ln(R1/R2)1T1−1T2\beta = \frac{\ln(R_1/R_2)}{\frac{1}{T_1} - \frac{1}{T_2}}β=T11−T21ln(R1/R2)
其中 R1R_1R1 是温度 T1T_1T1 (单位K) 时的电阻,R2R_2R2 是温度 T2T_2T2 (单位K) 时的电阻。有了标称电阻 R0R_0R0 (在温度 T0T_0T0,例如25°C,即298.15K) 和B值,我们可以用一个简化的公式(也叫B参数方程或Beta模型)来估算在任意温度 TTT (单位K) 下的电阻值 RTR_TRT:
RT=R0⋅exp(β(1T−1T0))R_T = R_0 \cdot \exp\left(\beta \left(\frac{1}{T} - \frac{1}{T_0}\right)\right)RT=R0⋅exp(β(T1−T01))
或者,更常用的,如果我们已知当前的电阻值 RTR_TRT,想反过来计算温度 TTT,公式可以变换为:
1T=1T0+1βln(RTR0)\frac{1}{T} = \frac{1}{T_0} + \frac{1}{\beta} \ln\left(\frac{R_T}{R_0}\right) T1=T01+β1ln(R0RT)
然后 TCelsius=TKelvin−273.15 T_{Celsius} = T_{Kelvin} - 273.15 TCelsius=TKelvin−273.15。
这个公式虽然简单,但在较宽的温度范围内精度会有所下降。对于要求不那么高的场合,它是个不错的近似。 -
Steinhart-Hart 方程 (Steinhart-Hart Equation):
当我们需要更高精度地描述NTC热敏电阻的电阻-温度特性时,Beta模型就有点不够看了。这时候,更精确的Steinhart-Hart方程就闪亮登场了!这个方程是一个经验公式,能够非常好地拟合大多数NTC热敏电阻的特性:
1T=A+Bln(R)+C(ln(R))3\frac{1}{T} = A + B \ln(R) + C (\ln(R))^3 T1=A+Bln(R)+C(ln(R))3
其中:- TTT 是绝对温度(开尔文,K)。
- RRR 是热敏电阻在温度 TTT 时的电阻值(欧姆,Ω)。
- A,B,CA, B, CA,B,C 是Steinhart-Hart系数,这些系数通常由制造商通过在至少三个已知温度点测量电阻值然后解方程组来确定,或者直接在数据手册中提供。
如果数据手册只提供了B值和R25R_{25}R25,而没有提供A, B, C系数,我们有时也可以通过B值和R25R_{25}R25来近似计算它们,或者更常见的是,制造商会提供一个电阻-温度对应表,你可以选取三个点来自己计算这些系数。使用Steinhart-Hart方程通常能获得比Beta模型高一个数量级的精度。对于我们追求“高精度”的目标来说,这个方程是首选!
-
热时间常数 (Thermal Time Constant):
这个参数描述了热敏电阻响应温度变化的速度。它定义为当环境温度发生阶跃变化时,热敏电阻的温度变化达到总变化量的63.2%所需的时间。这个值越小,热敏电阻响应越快。如果你需要监测快速变化的温度,就需要选择热时间常数小的NTC。 -
耗散系数 (Dissipation Constant):
当电流流过热敏电阻时,会产生焦耳热(P=I2RP = I^2RP=I2R),这会导致热敏电阻自身温度升高,从而影响测量精度。这种现象称为“自热效应”。耗散系数表示使热敏电阻自身温度升高1°C所需的功率,单位通常是 mW/°C。这个值越大,表明热敏电阻的散热能力越好,自热效应越不明显。在设计电路时,我们需要限制流过NTC的电流,以减小自热效应带来的误差。 -
工作温度范围 (Operating Temperature Range):
这个好理解,就是NTC热敏电阻能够正常工作的温度区间。超出了这个范围,它的特性可能就不再准确,甚至可能损坏。
“我的天,一个破电阻居然有这么多道道?” 是不是感觉大脑CPU有点过载了?别慌,这些参数看起来复杂,但一旦你理解了它们的含义,选择合适的NTC就会变得像逛超市挑薯片一样简单(好吧,可能稍微复杂一点点)。对于我们的项目,我们会选择一个常见的、参数明确的NTC,比如10kΩ R25R_{25}R25,B值在3950K左右的型号。
湿度感知的挑战者:湿敏电阻,空气“潮”我看!
聊完了温度,我们再来看看湿度。前面提到DHT11内部使用湿敏元件,我们这次也要用“电阻”来感知湿度。这里说的“湿敏电阻”,通常指的是一类其电阻值会随着环境相对湿度(Relative Humidity, RH)变化的材料。

这类传感器(例如常见的HR202L)通常包含一个有吸湿特性的有机高分子聚合物薄膜。当空气中的水分子被这个薄膜吸附或脱附时,会导致聚合物的导电离子浓度或迁移率发生变化,进而改变其整体的电阻值。通常,湿度越高,吸附的水分子越多,电阻值越低(但也有相反特性的)。
湿敏电阻的关键特性与挑战:
-
电阻-湿度特性曲线:
这是最重要的!与NTC热敏电阻相对规整的Steinhart-Hart或Beta模型不同,湿敏电阻的电阻值与相对湿度之间的关系通常是高度非线性的,并且可能没有一个简单的通用数学公式来完美描述。制造商通常会提供一个在特定温度下(例如25°C)的“电阻-RH”特性曲线图,或者一个分段的电阻-RH对应数据表。
例如,某款湿敏电阻可能在25°C,1kHz交流电下,其阻抗(注意,这里 datasheet 可能会用“阻抗”而非纯“电阻”,因为交流特性)与RH的关系大致如下:- 30% RH: 约 31 kΩ
- 60% RH: 约 5 kΩ
- 90% RH: 约 1 kΩ
你看,这个变化幅度是相当大的,而且显然不是线性的。
-
温度依赖性:
这是一个巨大的挑战!湿敏电阻的电阻-湿度特性对温度非常敏感。也就是说,在不同温度下,即使相对湿度相同,其电阻值也可能完全不同。许多基础的湿敏电阻数据手册只会给出在25°C下的特性曲线。如果你的工作环境温度变化较大,而你又没有进行温度补偿,那么你的湿度读数可能会“飘到外太空”。高级的湿度传感器模块内部通常会集成温度传感器并进行补偿运算,但我们既然选择了“从电阻开始”,就得直面这个问题。这意味着,精确测量湿度的同时,必须精确测量环境温度,并根据传感器特性进行复杂的温度补偿计算。有些湿敏电阻的datasheet会提供不同温度下的特性曲线,或者温度补偿系数的计算方法,但通常比较复杂。 -
响应时间 (Response Time):
指湿度发生变化后,传感器输出达到最终值的一个特定百分比(如63%或90%)所需要的时间。通常分为吸湿响应时间和脱湿响应时间,两者可能不同。 -
迟滞现象 (Hysteresis):
当湿度从低到高变化,再从高到低变化回到同一点时,传感器的电阻读数可能不完全相同。这个差异就是迟滞。优秀的湿敏电阻迟滞效应较小(例如 ±1% RH)。 -
长期稳定性/漂移 (Long-term Stability/Drift):
随着时间的推移和暴露在不同环境条件下,湿敏电阻的特性可能会发生缓慢的永久性改变,这就是漂移。这意味着传感器可能需要定期重新校准。 -
测量频率:
有些湿敏电阻的特性(尤其是阻抗)对测量的交流信号频率敏感。Datasheet通常会指定一个推荐的测量频率(例如1kHz AC)。如果我们用直流去测量,可能会因为极化效应等导致读数不准或传感器寿命缩短。这是一个非常重要的点!DHT11这类传感器内部已经处理了这些,但我们直接用电阻,就得考虑。然而,ESP32的ADC是测量直流电压的。直接用直流测量一个声明需要交流驱动的湿敏电阻,长期来看可能会有问题。一些简单的湿敏电阻(如HR202L的某些应用电路)会直接用直流分压来读取,但其精度和长期稳定性可能需要打个问号。为了简化,我们暂时假设可以找到适合直流测量的湿敏电阻,或者接受这种简化测量方式带来的潜在影响。如果追求极致,可能需要设计交流激励和同步检波电路,那就复杂多了! -
污染:
湿敏元件对某些化学蒸汽、灰尘、油污等污染物非常敏感,这些污染物会影响其表面特性,导致读数不准或永久性损坏。
看到这里,你是不是觉得用湿敏电阻测湿度,比用NTC测温度要“坑”得多?恭喜你,答对了!这正是为什么高精度的湿度测量通常比较昂贵和复杂的原因。但别灰心,挑战越大,成就感才越强嘛!我们会尽量选择一款特性相对清晰、资料相对齐全的湿敏电阻,并重点关注如何读取和近似处理它的数据。
梦之队集结:ESP32S3领衔,元器件精挑细选
理论学习告一段落,现在是时候挑选我们的“队员”了!一个成功的电子项目,离不开合适的元器件。就像组建一支篮球队,你需要一个强力中锋,一个灵活后卫,还需要一群给力的角色球员。
大脑核心:ESP32S3,不止是强大的“双核驱动”
我们项目的“大脑”和“指挥官”,我选择的是ESP32S3!为什么是它?难道只是因为它名字里带个“S”显得比较“Super”吗?

ESP32S3是乐鑫(Espressif Systems)推出的一款功能强大的MCU(微控制器单元)。让我们看看它的“三头六臂”:
- 强大的处理能力:它搭载了双核 Tensilica LX7 CPU,主频高达240MHz。这意味着它有足够的算力来处理我们从NTC和湿敏电阻读取到的原始数据,执行像Steinhart-Hart这样的复杂计算,驱动OLED显示,甚至未来你想给它加上Wi-Fi数据上传、蓝牙通信等功能,它都绰绰有余。杀鸡用牛刀?不,我们这叫“为未来预留升级空间”!
- 丰富的ADC资源:ESP32S3内置了多个ADC(模数转换器)通道。ADC的作用就是将传感器输出的模拟电压信号转换成数字值,让MCU能够理解。ESP32S3的ADC通常是12位分辨率,这意味着它可以将输入的电压(通常是0到3.3V)分成 212=40962^{12} = 4096212=4096 个级别。分辨率越高,对电压变化的感知就越精细。这对于我们从电阻分压电路中获取精确电压至关重要。
- 外设接口齐全:I2C、SPI、UART、GPIO……各种常用的通信接口和通用输入输出引脚,ESP32S3都应有尽有。我们需要I2C接口来连接OLED显示屏,需要几个GPIO作为ADC输入。
- Wi-Fi和蓝牙(可选加成):虽然我们这个基础项目暂时用不到,但ESP32S3内置了Wi-Fi和蓝牙功能。这意味着,如果你玩嗨了,想把你的高精度温湿度计变成一个物联网设备,通过手机APP查看数据,或者将数据上传到云平台,ESP32S3能让你无缝升级,是不是很香?
- 成熟的生态和社区:得益于乐鑫的大力推广和庞大的用户群体,ESP32系列的开发资料、库函数、社区支持都非常丰富。用Arduino IDE就能轻松上手开发,遇到问题也容易找到解决方案。
“听起来很厉害,但会不会很难用?” 别担心,ESP32S3虽然功能强大,但在Arduino框架下,很多复杂性都被很好地封装起来了。你只需要调用几个简单的函数,就能驱动它的强大功能。
温度哨兵:NTC热敏电阻的选择
对于NTC热敏电阻,我们需要关注以下几点来选择:
- R25R_{25}R25 标称电阻:常见的有5kΩ, 10kΩ, 50kΩ, 100kΩ等。选择10kΩ是一个比较通用的选择。它与后续分压电路中固定电阻的匹配比较容易,产生的电流也适中,可以较好地平衡灵敏度和自热效应。
- B值:例如3435K, 3950K等。B值越高,灵敏度越高,但在固定电阻匹配不当时,非线性也可能更明显。B值3950K左右的10kΩ NTC非常常见。
- 精度/公差:NTC电阻本身也有精度等级,例如±1%, ±2%, ±5%。电阻值的公差和B值的公差都会影响最终的温度测量精度。为了“高精度”,我们当然要选公差小的,比如±1%的R25R_{25}R25和B值。
- 封装:有贴片式、轴向引线式、环氧树脂封装、玻璃封装等。对于我们面包板实验,带有引线的环氧树脂封装(比如MF52系列的小黑豆)或者直接是杜邦线可插拔的模块最方便。
- 数据手册的完整性:选择那些能够提供详细数据手册,最好包含Steinhart-Hart系数或者足够多的R-T对应表的型号。
我们的选择(示例): 一个标称值为10kΩ (at 25°C),B值为3950K,精度为±1%的NTC热敏电阻。例如,型号为 MF52-103J3950 (103表示10x10³Ω,J表示±5%的电阻公差,但我们理想中找个F级±1%的;3950表示B值)。假设我们找到了这样一颗理想的NTC。
湿度侦探:湿敏电阻的抉择(与妥协)
湿敏电阻的选择相对棘手一些,因为前面提到了它的种种“个性”。
- 类型:主要是电阻型。比如HR202L是一款非常常见的、廉价的电阻型湿敏元件。
- 电阻-湿度特性:我们需要仔细查阅其数据手册,看它是否提供了在特定温度(如25°C)下的电阻-RH曲线或数据表。如果能提供不同温度下的数据或补偿方法,那就更好了(但通常基础型号不会这么慷慨)。
- 工作电压/电流:HR202L的datasheet通常建议用1V AC, 1kHz的信号进行测量,以获得最佳性能和寿命。但正如之前所说,ESP32的ADC是直流的。很多DIY项目会直接用直流分压电路来驱动和读取HR202L,这是一种简化,可能会牺牲一些精度和长期稳定性。为了项目的可实现性,我们暂时采用这种直流分压读取的方案,但要意识到它的局限性。
- 封装和引脚:通常是带有两个或三个引脚的模块。
我们的选择(示例与妥协): 我们选择一款常见的电阻型湿敏元件,比如 HR202L。我们会查阅它的数据手册,找到它在25°C下的电阻-RH近似关系(通常是一个表格或者需要从图上估读)。并且,我们暂时接受使用直流分压电路进行测量。
默默奉献的配角:精密固定电阻
要将NTC热敏电阻和湿敏电阻的阻值变化转换成ESP32S3的ADC能够读取的电压变化,我们需要构建分压电路 (Voltage Divider)。分压电路由两个串联的电阻组成,我们的传感器电阻是其中一个,另一个则是一个阻值固定的精密电阻。

公式如下:
如果 RSR_SRS 是我们的传感器电阻(NTC或湿敏电阻),RfixedR_{fixed}Rfixed 是固定电阻,它们串联后接到电源 VCCV_{CC}VCC (对ESP32S3来说是3.3V) 和地GND之间。ADC测量的电压 VoutV_{out}Vout 是在 RSR_SRS 和 RfixedR_{fixed}Rfixed 的连接点。
有两种常见的接法:
-
RfixedR_{fixed}Rfixed 在上拉位置(连接到 VCCV_{CC}VCC),),),R_S$ 在下拉位置(连接到GND),VoutV_{out}Vout 在它们之间。则:
Vout=VCC⋅RSRfixed+RSV_{out} = V_{CC} \cdot \frac{R_S}{R_{fixed} + R_S} Vout=VCC⋅Rfixed+RSR

最低0.47元/天 解锁文章
7653

被折叠的 条评论
为什么被折叠?



