ESP32 常用的函数

ESP32 常用的函数
开发版

GPIO 控制

pinMode

设置引脚模式
INPUT/OUTPUT/INPUT_PULLUP

INPUT_PULLUP

功能:将引脚配置为数字输入,并启用内部上拉电阻(约 45kΩ),将引脚默认电平拉高至 HIGH。
特性:

引脚默认电平为 HIGH(3.3V)。

当外部电路将引脚接地时,电平变为 LOW。

digitalWrite(pin, value)

输出数字信号(HIGH/LOW)。

digitalRead(pin)

读取数字输入信号。

analogRead(pin)

读取模拟输入(默认 12 位精度,0~4095)。

PWM 控制

ledcSetup(channel, freq, resolution_bits)

配置 PWM 通道(频率、分辨率)。

功能:配置 PWM 通道的频率和分辨率。
参数:

channel:PWM 通道号(0~15,ESP32 共有 16 个 LEDC 通道)。

freq:PWM 频率(单位:Hz,建议范围 1Hz ~ 40MHz,但实际受分辨率限制)。

resolution_bits:PWM 占空比分辨率位数(1~20,如 8 位对应占空比范围 0~255)。

返回值:实际设置的频率(若参数不合法,可能返回 0)。

ledcAttachPin(pin, channel)

将引脚绑定到 PWM 通道。

功能:将 GPIO 引脚绑定到指定的 PWM 通道。
参数:

pin:GPIO 引脚号(如 2, 4, 5 等支持 PWM 的引脚)。

channel:已通过 ledcSetup() 配置的通道号。

注意:

一个通道可以绑定多个引脚,但同一引脚不能重复绑定不同通道。

确保引脚未用于其他功能(如输入模式)。

ledcWrite(channel, duty_cycle)

设置 PWM 占空比。

功能:设置 PWM 通道的占空比。
参数:

channel:目标 PWM 通道号。

duty_cycle:占空比值(范围由 resolution_bits 决定,如 8 位时为 0~255)。

使用 DAC(真正模拟输出)

直接调用 dacWrite(pin, value) 函数,无需额外库。

参数:

pin:仅支持 GPIO25 或 GPIO26。

value:0~255(8 位分辨率,0 对应 0V,255 对应 3.3V)。

bigcong