当前位置:数据分析 > Esp32 读取模拟电压 (Esp32 读取模拟电压)

Esp32 读取模拟电压 (Esp32 读取模拟电压)

  • 发布:2023-10-09 20:53

Esp32 读取模拟电压 (Esp32 读取模拟电压)

1 {IMG_1: Ahr0chm6ly93D3CUA2VPBDM0NS5JB20VEMJFDXNLCNMVDXBSB2FKLZIWMJMDCVMJAYZA3MZEXNZA1MZCZWZWZWZW ==/}

esp32开发板施加的5v电压不正常

只能承受最高 3.6V 的电压。虽然esp32有输出5V的能力,但最高只能承受3.6V的电压。如果给开发板施加外部5V电压,就会出现异常。为了防止芯片被烧坏,请勿外部施加5V电压。电压导致电路中自由电荷定向运动形成电流。

为什么esp32不支持5v

esp32不支持5v的原因是为了防止烧坏芯片。请勿将 esp32 直接连接到 5V 电压。 ESP32 的电路最高只能承受 3.6V 的电压。该模块只需连接USB烧录芯片和电压转换芯片即可直接开发ESP32。所以我们还会添加一个3.3V转5V的芯片。目前几乎都采用AMS1117芯片,成本较低。打开USB线即可直接上传程序。

esp32c05区别

ESP32 芯片具有 2 个 12 位 SAR(逐次逼近)ADC,最多可读取 18 个不同的模拟通道输入,由 5 个专用转换控制器管理,2 个支持高性能多通道扫描,2 个支持 Deep 操作-睡眠低功耗模式,并且还有专门的功率检测和峰值监控。
主要特点如下:
使用 2 个 SAR ADC,支持同时采样和转换
使用 5 个专用 ADC 控制器,支持不同的应用场景(如高性能、低功耗或功率检测和转换)峰值检测)
支持 18 个模拟输入引脚
1 个内部电压 vdd33 通道、2 个 pa_pkdet 通道(部分控制器支持)
可配置 12 位、11 位、10 位、9 多种分辨率
支持 DMA(支持 1 个控制器)
支持多通道扫描模式(支持 2 个控制器)
支持深度睡眠模式操作(支持 1 个控制器)
支持 ULP 协处理器控制(支持 2 个控制器) )
硬件
ADC1支持8通道(GPIO32-GPIO39),ADC2支持10通道(GPIO0、GPIO2、GPIO4、GPIO12-GPIO15、GPIO25-GPIO27),这里有两点需要注意:
一些ADC2 的 GPIO0、GPIO2 和 GPIO15 等引脚是芯片的 Strapping 引脚。使用时要特别注意。
ADC2只能在WiFi功能未启用时使用。
ADC 模拟输入引脚可承受高达 3.3V 的电压。如果需要测试更高的电压,需要通过分压或者其他方法降低电压后再进行采集。
ESP32 ADC 对噪声敏感,导致 ADC 读数差异较大。为了最大限度地减少噪声,可以在使用的 ADC 输入端连接一个 0.1uF 电容器,并且还可以使用多重采样来进一步减轻噪声的影响。

如何将外部按钮连接到esp32

其实很简单。如果您已阅读我的前两节,则此代码不需要解释。它只是引入了一个额外的触摸板模块,并将引脚 14 定义为触摸引脚。主循环中,sleep(0.5)定义每隔0.5秒读取14脚的数据,然后通过串口打印出来。在 upycraft 下面的框中,您应该能够看到每 0.5 秒出现一个值。通过比较,触摸引脚 14 定义了 yes 或 no 的阈值,用于判断 if 函数是否实现触摸控制。
如果您熟悉代码,可以升级代码实现双稳态控制,即只需触摸即可改变灯的亮灭;或者升级实现双击、长按等功能,然后与正面的呼吸跑马灯结合起来。起来吧,天气会凉爽的。
这里触摸控制的效果和按钮控制一模一样,不过我觉得按钮太简单了,触摸更好玩,哈哈。
附上esp32的引脚图:
可以看到我的14个引脚不是随机的。 esp32支持触摸的引脚只有8个,分别是上面的T0-T7。我们还可以发现,还有各种AD、DA、SD等功能等你来玩。
ADC
我们来看一个有趣的ADC实验,即模数转换。效果是通过旋转电位器来控制灯光的亮度。这是呼吸灯的升级版:
from machine import Pin, PWM, ADC #介绍ADC模块
from time import sleep
Frequency = 5000
led = PWM(Pin(12) , 频率)
pot = ADC(Pin(34)) #定义34脚为ADC引脚,可读取模拟电压
pot.width(ADC.WIDTH_12BIT) #读取得到的电压转为0 -4096
pot.atten(ADC.ATTN_11DB) #输入电压0-3.3v
while True:
pot_value = www.sychzs.cn() //4 #启用读取电压变为0-1024
print(pot_value) #打印出读取电压用于调试
if pot_value < 15:
led.duty(0)
else:
led. duty(pot_value) #通过读取电位器的电压来调整灯的占空比
sleep(0.1) #每100ms读取一次
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

esp32模拟输出电压过高

esp32模拟输出电压过高的原因有:
1。西门子模拟量输出模块,信号范围,电压输出正负10伏,电流输出0~20毫安,最大驱动电压输出5000欧姆,最小,最大电流输出500欧姆,数据字格式电压为负32000到正32000,当前为0到正32000。
2。首先检查一下你的负载有多大。如果超过,电压就会过高。

以上就是小编对Esp32读取模拟电压(Esp32读取模拟电压)及相关问题的解答。 Esp32读取模拟电压的问题(Esp32读取模拟电压)希望对你有用!

相关文章