米乐体育app官方:ESP32C3 LED PWM控制器的运用方法
mile米乐m6电竞 发布时间:2023-08-03

  占空比主动突变是一个特征功用,用于呼吸灯或其它 LED 灯效会很便利,在官方文档特意介绍说是 LED PWM 控制器。

  4 个定时器可独立装备(可装备时钟分频器和计数器最大值),每个定时器内部有一个时基计数器(即根据基准时钟周期计数的计数器)。每个 PWM 生成器在四个定时器中择一,以该定时器的计数值为基准生成 PWM 信号。

  LED PWM 控制器的每个定时器内部都有一个时基计数器。上图中时基计数器运用的时钟信号称为ref_pulsex。一切定时器运用同一个时钟源信号LEDC_CLKx,该时钟源信号经分频器分频后发生ref_pulsex供计数器运用。

  设置 LEDC 通道分三步完结。留意,与 ESP32 不同,ESP32-C3 仅支撑设置通道为低速形式。

  初次 LEDC 装备时,最好先装备定时器(调用函数ledc_timer_config()),再装备通道(调用函数ledc_channel_config())。这样能够保证 IO 脚上的 PWM 信号自有输出开端其频率便是正确的。

  频率和占空比分辨率彼此相关。PWM 频率越高,占空比分辨率越低,反之亦然。假如 API 不是用来改动 LED 亮度,而是用于其它意图,这种彼此关系可能会很重要。时钟源相同能够约束 PWM 频率。挑选的时钟源频率越高,能够装备的 PWM 频率上限就越高。

  1.假如 ESP32-C3 的定时器选用了 RC_FAST_CLK 作为其时钟源,驱动会经过内部校准来得知这个时钟源的实践频率。这样保证了输出 PWM 信号频率的精准性。

  当一个定时器不再被任何通道所需求时,能够经过调用相同的函数ledc_timer_config()来重置这个定时器。此刻,函数入参的装备结构体需求指定:

  通道的装备与定时器设置相似,需向通道装备函数传递包含通道装备参数的结构体ledc_channel_config_t。

  此刻,通道会依照ledc_channel_config_t的装备开端运作,并在选定的 GPIO 上生成由定时器设置指定的频率和占空比的 PWM 信号。在通道运作过程中,能够随时经过调用函数ledc_stop()将其暂停。

  别的一种设置占空比和其他通道参数的方法是调用 通道装备 一节说到的函数ledc_channel_config()。

  传递给函数的占空比数值规模取决于选定的duty_resolution,应为0至(2 ** duty_resolution) - 1。例如,如选定的占空比分辨率为10,则占空比的数值规模为0至1023。此刻分辨率为 ~0.1%。